Commit Graph

1282 Commits

Author SHA1 Message Date
Michael Lumish 47ba357861 Fix typo in service config validation error messages 2022-11-17 09:34:16 -08:00
Michael Lumish 95516b66a0 Fix detection of refused streams 2022-11-16 14:37:31 -08:00
Michael Lumish a120aa06b3 Merge branch 'master' into grpc-js_retry2 2022-11-16 14:19:46 -08:00
Michael Lumish e19a773705 grpc-js: Add retry tests, and fix bugs and add tracing 2022-11-16 14:10:26 -08:00
Michael Lumish 5a5e42498c grpc-js: Enable servers to send trailers-only responses 2022-11-16 14:09:40 -08:00
Michael Lumish 01c5ee783a
Merge pull request #2272 from murgatroid99/grpc-js_max_connection_age
grpc-js: Implement server connection management
2022-11-14 11:21:43 -08:00
Michael Lumish 38f2497dae grpc-js: Make filter stack factory clone with a copy of the array 2022-11-11 09:24:15 -08:00
Michael Lumish 0de2aad269 grpc-js: Fix reuse of channel filter stack factory 2022-11-10 10:54:19 -08:00
Michael Lumish a42d6b4f5c grpc-js: Implement server connection management 2022-11-10 09:59:53 -08:00
Michael Lumish 26c8c37985 grpc-js: Handle filters in ResolvingCall instead of LoadBalancingCall 2022-11-07 14:51:51 -08:00
Michael Lumish 8f33dc7246 grpc-js: Update to newest typescript compiler 2022-11-04 11:21:24 -07:00
Michael Lumish 9aabaee7de Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.7.x' into grpc-js_upmerge_1.7.x 2022-11-03 16:10:12 -07:00
Michael Lumish e21d41ddfa
Merge pull request #2255 from murgatroid99/grpc-js_service_config_timeout_fix
grpc-js: Restart deadline timer after getting timeout from service config
2022-11-01 16:15:44 -07:00
Michael Lumish b3bcff1d7b grpc-js: Pin @types/lodash to fix broken build 2022-11-01 10:39:06 -07:00
Michael Lumish e7144897d0 grpc-js: Restart deadline timer after getting timeout from service config 2022-11-01 09:26:29 -07:00
Michael Lumish e840d1f855 grpc-js: Bump to 1.7.3 2022-10-20 15:47:16 -07:00
Michael Lumish 035c260e36 grpc-js: Implement retries 2022-10-20 14:41:11 -07:00
AVVS 93de96f490
revert: extra close event on stream 2022-10-19 15:25:42 -07:00
AVVS 2f124ad68b
fix: perf issues in hot paths
1. no unused timers, wrap tracing calls to avoid stringifying
2. track graceful end of the call and avoid emitting 'cancelled' in such cases
3. remove validate calls in metadata on operations where it's not needed
4. refactor server session stream handlers into separate channelz enabled/disabled handlers
5. refactor message request logic - reduce amount of microtasks generated
6. improve sendStatus a little when there is no metadata involved
2022-10-19 14:48:11 -07:00
Michael Lumish 24c4cd7bb8 grpc-js: Add more outlier detection tests and tracing 2022-10-18 16:29:22 -07:00
Michael Lumish c4c321d37d grpc-js: Handle filters in ResolvingCall instead of LoadBalancingCall 2022-10-17 11:32:22 -07:00
Michael Lumish aaa568fc01
Merge pull request #2248 from grpc/@grpc/grpc-js@1.7.x
Merge v1.7.x into master
2022-10-14 15:59:23 -07:00
Michael Lumish 63d9f6a6d6 Ensure ordering between received messages and status 2022-10-14 11:18:26 -07:00
Michael Lumish 59a2cbceeb grpc-js: Remove redundant calls to setCredentials 2022-10-14 10:27:38 -07:00
Michael Lumish 75a6d0a24b grpc-js: Handle the grpc-node.max_session_memory option consistently on the client and server 2022-10-14 09:46:53 -07:00
Michael Lumish 67bec19b4e Merge branch 'master' into grpc-js_retry 2022-10-11 16:42:19 -07:00
Michael Lumish 339eb37efd grpc-js: Refactor in preparation for retries 2022-10-11 14:52:43 -07:00
Michael Lumish 5b42e999e4 grpc-js: Refactor getting stack trace into function 2022-09-20 16:33:01 -07:00
Michael Lumish 640a1963c7 grpc-js: Defer evaluating caller stack until an error 2022-09-20 16:20:22 -07:00
Michael Lumish b8c0cdc480
Merge pull request #2226 from murgatroid99/grpc-js_restrict_control_plane_status_codes
grpc-js: Restrict control-plane status codes
2022-09-12 13:30:20 -07:00
Michael Lumish caf37e4f15 Fix constant name spelling 2022-09-12 12:42:44 -07:00
Michael Lumish 9269f3a76f grpc-js: Restrict control-plane status codes 2022-09-12 11:46:06 -07:00
Michael Lumish b0e28f7f93 grpc-js: Add test for sending metadata from call creds on channel creds 2022-09-12 11:20:19 -07:00
Michael Lumish b8da460708
Merge pull request #2223 from murgatroid99/grpc-js_outlier_detection_validation_tests
grpc-js: Add tests for outlier detection validation rules
2022-09-09 15:47:36 -07:00
Michael Lumish 9dd9cb0e5d
Merge pull request #2224 from murgatroid99/grpc-js_1.7.x
grpc-js: Bump to 1.7.0
2022-09-08 14:33:36 -07:00
Michael Lumish f438191182 grpc-js: Add tests for outlier detection validation rules 2022-09-07 16:35:29 -07:00
Michael Lumish 51de24ac0c grpc-js: Bump to 1.7.0 2022-09-07 13:11:14 -07:00
Michael Lumish 3c27ed4c00 grpc-js: Update grpc-js outlier detection check to match xds check 2022-09-07 12:39:39 -07:00
Michael Lumish 1a3600e2ec
Merge pull request #2132 from ajmath/ajmath/expose-call-items
Expose path and callEnd event in ServerSurfaceCall
2022-09-06 15:22:09 -07:00
Michael Lumish 618475a1ba
Merge pull request #2217 from grpc/@grpc/grpc-js@1.6.x
v1.6.x merge into master, again
2022-08-31 10:59:27 -07:00
Michael Lumish ccd855fb5a grpc-js: Fix typo in previous status message handling fix 2022-08-29 18:18:53 -07:00
Michael Lumish c323369929 grpc-js: Enable outlier detection by default 2022-08-29 15:41:51 -07:00
Michael Lumish 3d603289ff Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.6.x' 2022-08-29 14:34:59 -07:00
Michael Lumish a82e40ff9a grpc-js: Handle errors when decoding status details 2022-08-29 09:52:13 -07:00
Michael Lumish 1d5801aa90 grpc-js: Stop ejecting when current percent is equal to max 2022-08-24 14:54:09 -07:00
Michael Lumish 8664c837db Fix spelling 2022-08-24 10:59:15 -07:00
Michael Lumish f15efb63de grpc-js: Outlier Detection: fix failure percentage min hosts check 2022-08-24 10:27:53 -07:00
Michael Lumish 68aa56fa4a
Merge pull request #2198 from murgatroid99/grpc-js-xds_ignore_resource_deletion
grpc-js-xds: Implement ignore_resource_deletion option
2022-08-22 16:05:14 -07:00
Michael Lumish 5a7f89a5f5 grpc-js: Switch LB policy when new one is not CONNECTING 2022-08-18 14:25:49 -07:00
Michael Lumish a3b698e837 Don't use tracer for ignored resource deletion logs 2022-08-17 17:00:02 -07:00
Michael Lumish 3f4418faf0 grpc-js: Drain incoming http2 data after outputting status 2022-08-11 18:01:01 -07:00
Michael Lumish e87b864075 grpc-js: Update version to 1.6.9 2022-08-08 17:18:02 -07:00
Michael Lumish abf8f923c5
Merge pull request #2189 from murgatroid99/grpc-js_1.6.9
grpc-js: Update version to 1.6.9
2022-08-08 17:16:12 -07:00
Michael Lumish c1ab4c4a1b grpc-js: Update version to 1.6.9 2022-08-08 13:44:02 -07:00
Michael Lumish a2e5ded830
Merge pull request #2181 from murgatroid99/grpc-js_outlier_detection_fixes_backport
grpc-js: backport outlier detection fixes to v1.6.x
2022-08-08 13:43:36 -07:00
Michael Lumish b08171e232
Merge pull request #2188 from murgatroid99/grpc-js_ping_error_check
grpc-js: Handle errors when trying to ping
2022-08-08 13:35:46 -07:00
Michael Lumish fb8de8589b
Merge pull request #2187 from murgatroid99/grpc-js_trailers_event_memory_leak
grpc-js: Avoid explicit bind in trailer event handler
2022-08-08 13:22:28 -07:00
Michael Lumish d7765f6050
Merge pull request #2126 from murgatroid99/grpc-js_tsconfig_types
grpc-js: Specify 'types' option in tsconfig file
2022-08-08 13:14:01 -07:00
Michael Lumish 31d28b5f14 grpc-js: Handle errors when trying to ping 2022-08-08 13:05:26 -07:00
Michael Lumish ee1e330157 grpc-js: Avoid explicit bind in trailer event handler 2022-08-08 12:50:50 -07:00
Michael Lumish 36f37cb78f grpc-js: Propagate ejection when recreating outlier detection subchannel wrapper 2022-08-04 17:34:41 -07:00
Michael Lumish 4cfe75b43a grpc-js: Initialize connectivity state from subchannel in outlier detection subchannel wrapper 2022-08-04 17:34:29 -07:00
Michael Lumish 3328798d28 grpc-js: Implement getConnectivityState in subchannel wrapper 2022-08-04 17:34:15 -07:00
Michael Lumish 9be6c6c5da Update outlier detection behavior for gRFC updates 2022-08-04 17:34:00 -07:00
Michael Lumish edbdc570c7 grpc-js: Add outlier detection tracing and enable it in interop tests 2022-08-04 17:33:47 -07:00
Michael Lumish 001cce7db0 grpc-js: Propagate ejection when recreating outlier detection subchannel wrapper 2022-08-04 16:02:05 -07:00
Michael Lumish 78fe8c6d05 grpc-js: Initialize connectivity state from subchannel in outlier detection subchannel wrapper 2022-08-04 15:56:28 -07:00
Michael Lumish b3f23d805e grpc-js: Implement getConnectivityState in subchannel wrapper 2022-08-04 12:54:15 -07:00
Michael Lumish 1e53150155 Update outlier detection behavior for gRFC updates 2022-08-02 13:48:16 -07:00
Michael Lumish 90e8886d98 grpc-js: Add outlier detection tracing and enable it in interop tests 2022-08-02 11:02:02 -07:00
Michael Lumish fbf7944646 grpc-js: Outlier detection: Fix standard deviation calculation 2022-07-22 12:58:22 -07:00
Michael Lumish 50c58238ff grpc-js: Update version to 1.6.8 2022-07-20 15:22:53 -07:00
Michael Lumish 27b7bb8928 grpc-js: Update proto-loader dependency to ^0.7.0 2022-07-19 10:52:02 -07:00
Michael Lumish 07b73ad129 grpc-js: Add a test for compressing large messages 2022-06-07 11:07:47 -07:00
Andrew Matheny d846cf5127 Expose http path in call 2022-06-01 12:34:11 -04:00
Andrew Matheny b78db9d222 Propagate callEnd events 2022-06-01 12:33:31 -04:00
Michael Lumish bbcf471c99 grpc-js: Specify 'types' option in tsconfig file 2022-05-23 16:30:18 -07:00
Michael Lumish 6c17d19834
Merge pull request #2123 from bartslinger/fix_disconnect_listeners
bugfix: handle disconnectListeners in reverse to allow listener removal in loop
2022-05-20 14:15:00 -07:00
Bart Slinger 97717003f4 grpc-js: Use Set instead of Array for disconnectListeners 2022-05-20 08:28:44 +02:00
Bart Slinger 0a0e13eede handle disconnectListeners in reverse to allow listener removal in loop 2022-05-19 23:45:11 +02:00
Michael Lumish 01823377be grpc-js: Add calling context to call errors 2022-04-28 10:34:30 -07:00
Michael Lumish db65d566e6 grpc-js: Fix mean calculation in outlier detection LB policy 2022-04-26 10:09:22 -07:00
Michael Lumish 6360a6c90c
Merge pull request #2105 from murgatroid99/grpc-js_resolver_backoff_test
grpc-js: Add regression tests for repeated DNS requests
2022-04-22 14:34:27 -07:00
Michael Lumish cd58695674 grpc-js: Add regression tests for repeated DNS requests 2022-04-21 16:09:24 -07:00
Michael Lumish b07ea8b354 grpc-js: Update outlier detection to address recent spec changes 2022-04-21 14:53:07 -07:00
Michael Lumish 879d13b6c3
Merge pull request #2103 from murgatroid99/grpc-js_refcounts
grpc-js: Fix shutting down subchannels in separate pools
2022-04-20 15:12:30 -07:00
Michael Lumish 0a9cf3893e
Merge pull request #2100 from murgatroid99/grpc-js_dns_resolver_double_call
grpc-js: Fix double resolver calls in DNS resolver
2022-04-20 15:05:22 -07:00
Michael Lumish 32514224ce grpc-js: Fix shutting down subchannels in separate pools 2022-04-20 13:09:38 -07:00
Michael Lumish 5311c03867 grpc-js: Report error when no message received for unary response 2022-04-19 13:18:59 -07:00
Michael Lumish 964c7a68aa grpc-js: Fix double resolver calls in DNS resolver 2022-04-19 10:55:42 -07:00
Michael Lumish fa92727ec7
Merge pull request #2097 from murgatroid99/grpc-js_keepalive_end_calls
grpc-js: End calls when keepalive pings time out
2022-04-18 10:31:44 -07:00
Michael Lumish c9b7d4d285 grpc-js: DNS: unset continueResolving when starting a resolution attempt 2022-04-18 09:56:06 -07:00
Michael Lumish cf11b60ce2 grpc-js: End calls when keepalive pings time out 2022-04-18 09:38:09 -07:00
Michael Lumish 8cbc3dc825 grpc-js: Make a reachable code path for requestReresolution in pick_first 2022-04-14 17:28:22 -07:00
Michael Lumish 478900d191 grpc-js: Consistently re-resolve when idle 2022-04-14 16:51:16 -07:00
Michael Lumish c112d167bb grpc-js: Update version to 1.6.4 2022-04-13 11:27:31 -07:00
Michael Lumish 6c686772cb grpc-js: Fix handling of calls after resolution failure 2022-04-12 16:16:57 -07:00
Michael Lumish 7664a49a99
Merge pull request #2084 from murgatroid99/grpc-js_disable_session_memory_limit
grpc-js: Disable per-session memory limit by default
2022-04-11 15:28:59 -07:00
Michael Lumish fc54c15909
Merge pull request #2087 from murgatroid99/grpc-js_keepalive_timeout_no_calls
grpc-js: Don't clear ping timeout when still connected
2022-04-11 15:27:55 -07:00
Michael Lumish 553fb7a819 grpc-js: Add comment about stopKeepalivePings usage 2022-04-11 14:43:18 -07:00
Michael Lumish 0feeab3d09
Merge pull request #2085 from murgatroid99/grpc-js_keepalive_traces
grpc-js: Add more details to keepalive ping tracing
2022-04-11 14:36:31 -07:00
Michael Lumish ae93d556ec grpc-js: Don't clear ping timeout when still connected 2022-04-08 11:24:56 -07:00
Michael Lumish 7ac345e4dc grpc-js: Add more details to keepalive ping tracing 2022-04-08 10:13:46 -07:00
Michael Lumish 12c58c2923 grpc-js: Disable per-session memory limit by default 2022-04-07 17:57:18 -07:00
Michael Lumish c80b25e2a5 grpc-js: Use real channelz IDs when channelz is disabled 2022-04-06 17:15:22 -07:00
Michael Lumish f19563d45c grpc-js: Update to version 1.6.2 2022-04-04 09:37:13 -07:00
Michael Lumish d8ce665fd8 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.6.x' into grpc-js-xds_ads_stream_delay 2022-04-04 09:36:23 -07:00
Michael Lumish c106d05ac4 grpc-js: Make backoff timer reset apply to the currently running timer 2022-04-01 14:31:24 -07:00
Michael Lumish 8a503031f3 grpc-js: Add support for grpc.dns_min_time_between_resolutions_ms channel arg 2022-04-01 10:55:53 -07:00
Michael Lumish a9937038c7
Merge pull request #2075 from murgatroid99/v1.6.0
Update version to 1.6.0
2022-03-31 09:23:38 -07:00
Michael Lumish 9fcf1659b6 Update version to 1.6.0 2022-03-29 00:15:49 -07:00
murgatroid99 052af317a3 grpc-js: Avoid surfacing errors without gRPC error codes 2022-03-28 14:50:10 -07:00
Michael Lumish a6f3df70ae
Merge pull request #2071 from kskalski/master
Expose MetadataOptions interface in grpc-js.
2022-03-25 12:53:49 -07:00
Kamil Skalski 8d7d3f3d23 Expose MetadataOptions interface in grpc-js. 2022-03-25 12:22:16 -05:00
Kamil Skalski 260aee93da Expose MetadataOptions interface in grpc-js. 2022-03-25 09:22:23 -05:00
Michael Lumish 6e804d741f Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.5.x' into v1.5.x_upmerge 2022-03-24 15:18:39 -07:00
Michael Lumish 680ff7cc08 grpc-js: Improve coverage of channelzEnabled checks in server code 2022-03-24 12:45:28 -07:00
Michael Lumish 312fb9b737 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.5.x' into v1.5.x_upmerge 2022-03-24 10:11:52 -07:00
Michael Lumish b5b0703bcd grpc-js-xds: Add outlier detection configuration handling 2022-03-18 12:48:33 -07:00
Michael Lumish ec334f2f44
Merge pull request #2062 from murgatroid99/grpc-js_call_end_trace_change
grpc-js: Trace call end when actually ending the call
2022-03-16 12:58:29 -07:00
Michael Lumish 0dfe2eeb8b
Merge pull request #2063 from murgatroid99/grpc-js_session_destroyed_transparent_retry
grpc-js: Transparently retry session destroyed error
2022-03-16 12:58:20 -07:00
Michael Lumish 81e08e84df grpc-js: Transparently retry session destroyed error 2022-03-16 12:39:36 -07:00
Michael Lumish 39f027e284 grpc-js: Trace call end when actually ending the call 2022-03-16 11:34:55 -07:00
Michael Lumish 97584dcf31 grpc-js: Add channel construction stacktrace traces 2022-03-16 11:27:05 -07:00
Michael Lumish 157de1a0a9
Merge pull request #2058 from murgatroid99/grpc-js_outlier_detection
grpc-js: Add outlier detection LB policy
2022-03-14 12:51:07 -07:00
Michael Lumish 5a601b0f78 grpc-js: Consistently log subchannel and call IDs in traces 2022-03-14 11:55:38 -07:00
Michael Lumish 2062062a5c grpc-js: Add outlier detection LB policy 2022-03-07 13:05:24 -08:00
Dacio Romero a3ecb45132 grpc-js: Return never from functions that always throw 2022-03-01 14:48:25 -08:00
Michael Lumish 55087d21c4 grpc-js: Transition subchannel to TRANSIENT_FAILURE when the socket closes 2022-02-24 09:09:54 -08:00
Michael Lumish d51dfffcfe grpc-js: Add session state logging at call start 2022-02-23 09:50:11 -08:00
Michael Lumish 5bb11e02a0 grpc-js: Increase version to 1.5.5 2022-02-10 10:12:36 -08:00
Yuri Golobokov da66707d3b HTTP/2 flow control tracing
subchannel_flowctrl tracer, if enabled, logs local and remote window
sizes of subchannel's HTTP2 session to debug log on the start of every
call.
2022-02-09 14:58:26 -08:00
Yuri Golobokov ae2a2ac7d0 Add HTTP/2 settings frame tracing.
This adds HTTP/2 settings frame information
to debug logs.
HTTP/2 settings frame contains important information like
max_concurrent_streams and initial_window_size useful for debugging
concurrency, latency, and throughput issues.
2022-02-08 21:52:29 -08:00
Yuri Golobokov 2334ca9dfa Add isTracerEnabled to logging 2022-02-08 21:51:26 -08:00
Michael Lumish f49ed62476 grpc-js: Increase version to 1.5.4 2022-01-31 13:55:07 -08:00
Michael Lumish ba70f7168b grpc-js: Fix exitIdle propagation and DNS IP result backoff 2022-01-31 13:54:40 -08:00
Michael Lumish 27bae2009d grpc-js: Increase version to 1.5.3 2022-01-20 09:36:44 -08:00
Michael Lumish 0a5a2321b4 grpc-js: Fix pick first shutdown reference handling 2022-01-20 09:31:09 -08:00
Michael Lumish 4b3c26382b Add subchannel interface 2022-01-18 12:53:10 -08:00
Michael Lumish b9deb5bc3c grpc-js: Increase version to 1.5.2 2022-01-18 12:35:35 -08:00
Michael Lumish db56e80b21 grpc-js: Add secureConnection error handling in server 2022-01-18 12:35:22 -08:00
Michael Lumish 903cce1df9
Merge pull request #2024 from murgatroid99/grpc-js_dns_backoff
grpc-js: Add backoff to DNS resolution attempts
2022-01-14 11:37:35 -08:00
Oskar Nyberg 500fc2c752 grpc-js: Don't use http_proxy for uds connections 2022-01-14 11:15:29 -08:00
Michael Lumish 80f31bb1c2 grpc-js: Increase version to 1.5.1 2022-01-13 15:58:37 -08:00
Michael Lumish 5a728ffdc5 grpc-js: Add backoff to DNS resolution attempts 2022-01-13 15:58:23 -08:00
Oskar Nyberg c6691c8551 grpc-js: Don't use http_proxy for uds connections 2022-01-13 16:24:48 +01:00
Michael Lumish 6a5b52182f
Merge pull request #1993 from DavyJohnes/fix-class-options-issue
grpc-js: Set provided class options to generated class
2022-01-10 15:49:58 -08:00
Michael Lumish 81ef5e33c4
Merge pull request #1988 from murgatroid99/grpc-js_securecontext_creds
grpc-js: Add credentials.createFromSecureContext
2022-01-10 14:05:58 -08:00
DavyJohnes f6d8f137a2 fix(make-client): set provided serviceName to generated class 2022-01-10 13:54:53 +03:00
Michael Lumish d1762316e2 grpc-js: Document recently-added channel options 2022-01-07 12:21:12 -08:00
Jason Praful c95357ccd1 refactor: added max session memory to docs 2022-01-07 10:56:44 +00:00
Michael Lumish ea1a266dec Update grpc-js and grpc-js-xds to version 1.5.0, and update README 2022-01-06 14:41:37 -08:00
Michael Lumish ba3bd4bdf0
Merge pull request #1996 from josephharrington/patch-1
Document grpc-js supported channel args in readme
2022-01-05 14:36:39 -08:00
Michael Lumish 0dbcbcc320
Merge pull request #2008 from grpc/@grpc/grpc-js@1.4.x
Upmerge more changes from @grpc/grpc js@1.4.x
2022-01-05 14:29:12 -08:00
Joey Harrington 78631cdad8 Document grpc-js supported channel args in readme
This moves the list of supported channel arguments from PACKAGE_COMPARISON.md into the readme, and also adds a link to the package comparison doc.

resolves #1982, resolves #1983
2022-01-04 16:39:20 -08:00
Michael Lumish fba2b9498f Fix end type again for older @types/node versions 2022-01-04 14:00:25 -08:00
Michael Lumish e2dfb8fbcf grpc-js: Increase version to 1.4.6 2022-01-04 12:42:05 -08:00
Michael Lumish 311d22e03e grpc-js: Fix compatibility with @types/node 17.0.6 2022-01-04 12:41:41 -08:00
Michael Lumish fb2ea3af9d
Merge pull request #1986 from murgatroid99/grpc-js_interceptor_metadata_message_order
grpc-js: Preserve order of metadata, messages, and call end with async interceptors
2021-12-16 11:49:55 -08:00
Michael Lumish 33c5abd163 grpc-js: Clean up some dependencies 2021-12-13 14:18:12 -05:00
Michael Lumish 8e53f034d0 grpc-js: Add credentials.createFromSecureContext 2021-12-13 10:05:37 -05:00
Cosmin-Catalin Crisan b12330abfd grpc-js: Send backoffOptions to BackoffTimeout 2021-12-10 20:20:11 +02:00
Michael Lumish 86f3ffd96c grpc-js: Update version to 1.4.5 2021-12-09 16:31:29 -05:00
Michael Lumish 7cccc39218 grpc-js: Preserve order of metadata and messages with async interceptors 2021-12-09 16:14:52 -05:00
Michael Lumish ba375e7371 Skip a test because it behaves weirdly on Mac 2021-12-09 10:48:38 -05:00
Michael Lumish e41b99dffc Fix a couple of issues with tests on Windows 2021-12-09 10:46:03 -05:00
Michael Lumish 20dbaa8e27 Make npm clean scripts platform-agnostic 2021-12-08 14:54:56 -05:00
Michael Lumish c52cb842af Add detailed assertion output for some resolver tests, skip IPv4+IPv6 test 2021-12-08 13:42:50 -05:00
Michael Lumish 40c2f61eba Fix server decompression sequencing, add tracing 2021-12-08 10:27:21 -05:00
Michael Lumish 575c2004f3 Skip some tests to make the Linux test job green 2021-12-06 12:02:52 -05:00
Michael Lumish 8df71f1913 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.4.x' into grpc-js_1.4_upmerge 2021-12-03 14:47:04 -05:00
Michael Lumish 3106057f5a grpc-js: Don't pass undefined checkServerIdentity 2021-11-17 12:36:38 -08:00
Michael Lumish 472baec1ff grpc-js: Provide full certificate in checkServerIdentity callback 2021-11-15 10:53:31 -08:00
Robert 69428b0445 simplify removal of compression prefix bytes 2021-11-09 21:26:54 -08:00
Michael Lumish 9cdd36f929
Merge branch 'master' into grpc-js_compression_support 2021-11-08 12:17:11 -08:00
Michael Lumish af966f04b8 grpc-js: Remove an extra call to registerChannelzSocket 2021-11-08 09:44:11 -08:00
Robert 96ae102eaf fix path for loading test_service proto 2021-11-05 19:59:03 -07:00
Michael Lumish cea1537c42 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.4.x' into upmerge_1.4.3 2021-11-05 14:25:42 -07:00
Michael Lumish cb29b6af0f
Merge pull request #1961 from murgatroid99/grpc-js_channelz_disable_fix
grpc-js: Fix handling of grpc.enable_channelz option
2021-11-05 13:53:53 -07:00
Michael Lumish b1be84a021 Make IPv6 parsing code compatible with Node 10 2021-11-05 11:54:15 -07:00
Michael Lumish bb26dcfd1e grpc-js: Fix handling of grpc.enable_channelz option 2021-11-05 10:12:12 -07:00
Michael Lumish 1a60c4f3a9 grpc-js: channelz: Fix algorithm for representing an IPv6 address in binary 2021-11-04 14:11:16 -07:00
Robert c4d7fab13e simplify compression filter handling of server supported encoding headers 2021-11-02 19:17:44 -07:00
Robert deff9d4df9 Merge branch 'grpc-js_compression_support' of github.com:b0b3rt/grpc-node into grpc-js_compression_support 2021-11-01 20:15:18 -07:00
Robert dc9752addc change CompressionAlgorithms to an enum 2021-11-01 19:04:21 -07:00
Robert M 5c61a6a34e
Update packages/grpc-js/src/server-call.ts
Co-authored-by: Michael Lumish <mlumish@google.com>
2021-11-01 18:38:37 -07:00
Robert 9150bdfd24 default to identity header everywhere instead of leaving it undefined 2021-10-29 19:19:09 -07:00
Robert 47bb8b669e move string split down to where it matters 2021-10-28 20:36:29 -07:00
Robert c9659b5158 persist server supported encoding header across compression filter instances 2021-10-28 20:29:47 -07:00
Robert 53a2347e69 only attempt to use custom compression filter when option value is provided 2021-10-26 14:27:07 -07:00
Robert 6ba008110b only attempt to use custom compression filter when option value is provided 2021-10-26 14:25:21 -07:00
Robert M d01ff794fc
Update error message for invalid default_compression_algorithm
Co-authored-by: Michael Lumish <mlumish@google.com>
2021-10-26 14:21:58 -07:00
Robert 25a1806e11 change year in new copyright heade 2021-10-26 14:09:09 -07:00
Robert 7a31b4a65a change test to use write instead of _write 2021-10-26 14:03:14 -07:00
Robert e03c1159ea log a warning when invalid value for grpc.default_compression_algorithm option is provided 2021-10-26 14:01:37 -07:00
Robert 21b09e25ba separate compression algorithms to avoid circular dependency 2021-10-26 13:51:42 -07:00
Robert 6d75ea1ab6 change encoding type from MetadataValue to string 2021-10-26 13:44:03 -07:00
Michael Lumish 91ae2b44b1 grpc-js: Handle undefined socket.localAddress 2021-10-26 13:19:18 -07:00
Michael Lumish c61b9696a1
Merge pull request #1944 from murgatroid99/grpc-js_disable_channelz
grpc-js: Allow users to disable channelz
2021-10-26 13:16:51 -07:00
Michael Lumish 5a49a93065
Merge pull request #1951 from howyi/master
feat(client): export `ServiceClientConstructor` type
2021-10-26 12:56:41 -07:00
Robert d68d94a5f4 re-enable NoCompress flag behavior and check Compressed Flag byte on server 2021-10-25 20:21:48 -07:00
Robert af010071fe have client restore default sendCompression if server doesnt support compression, and fix test file generation 2021-10-25 19:43:40 -07:00
Robert 959503ec94 rewrite CompressionAlgorithms to use numeric keys and export it 2021-10-25 19:14:01 -07:00
Robert 9d70f39b7e remove copied test proto file and modify npm command 2021-10-25 19:00:59 -07:00
Robert 16f1356050 remove unused compression algorithm key value 2021-10-25 18:54:16 -07:00
Robert b2ebbee7d1 revert mistaken accept-encoding client header change 2021-10-25 18:46:14 -07:00
Michael Lumish 8dbeeb1d18 grpc-js: Handle undefined socket.localAddress 2021-10-25 13:29:06 -07:00
Robert cec7e64a2b cleanup test file 2021-10-24 22:21:24 -07:00
Robert 7aa5b62008 grpc-js: Allow per-channel request compression from the client and decompression from the server 2021-10-24 21:46:23 -07:00
howyi 25e21d1fba feat(client): export ServiceClientConstructor,ProtobufTypeDefinition type 2021-10-24 21:14:16 +09:00
Michael Lumish 647654c7c1 grpc-js: Include other causes in ENHANCE_YOUR_CALM translation 2021-10-19 08:33:25 -07:00
Michael Lumish 891a918c85 grpc-js: Allow users to disable channelz 2021-10-18 13:31:08 -07:00
Michael Lumish 5139b107e0 grpc-js: Limit the number of retained channelz trace events 2021-10-18 09:29:43 -07:00
Michael Lumish 24df9a039b grpc-js: Publish missing channelz proto and type files 2021-10-13 11:11:30 -07:00
Michael Lumish 7564f60dcb grpc-js: Add tracing of channel options in channel and subchannel constructors 2021-10-12 12:25:47 -07:00
Michael Lumish 590e94e09d grpc-js: Update package versions for 1.4.0 release 2021-10-11 14:23:05 -07:00
Michael Lumish 16303d9f0b grpc-js: Fix server trace function inconsistency 2021-10-06 14:56:53 -07:00
Michael Lumish 8aec160413
Merge pull request #1924 from murgatroid99/v1.4.x_upmerge_1
Merge 1.4.x branch into master
2021-10-06 10:46:40 -07:00
Michael Lumish 6cea491a3c
Merge pull request #1917 from murgatroid99/grpc-js-xds_test_fixes
grpc-js-xds: A few fixes for xDS tests
2021-09-28 15:48:36 -07:00
Michael Lumish 1eea4b75bd In server.bindAsync, call callback in process.nextTick 2021-09-28 13:14:14 -07:00
Michael Lumish 2756a59495 Add a helper for creating ChannelControlHelper children 2021-09-27 16:12:23 -07:00
Michael Lumish 157882da45 grpc-js-xds: A few fixes for xDS tests 2021-09-27 15:45:22 -07:00
Michael Lumish 8cc5f6cd24 grpc-js: Loosen requirements on channel option types 2021-09-27 12:35:21 -07:00
Michael Lumish fc35615e83 Merge branch 'master' into grpc-js_channelz 2021-09-27 11:44:39 -07:00
Michael Lumish 4b6ea2b781 Add channelz ID to trace logs, add a few trace log lines 2021-09-27 10:47:22 -07:00
Michael Lumish d60c4ea16f Add channelz tests and fix some bugs 2021-09-27 10:46:39 -07:00
bbesset 305623e2eb adds sometimes required Host header to proxy connection 2021-09-15 10:28:40 -07:00
Michael Lumish acd9913687 Add admin interface 2021-09-15 10:26:04 -07:00
bbesset 737dae88db adds sometimes required Host header to proxy connection 2021-09-15 09:03:49 +02:00
Michael Lumish 74fdd85123 Add channelz service implementation 2021-09-13 10:58:12 -07:00
Michael Lumish bf0df1f94a Add channelz.proto and generated code 2021-09-10 16:21:12 -07:00
Michael Lumish d4574a28fb grpc-js: Add channelz support 2021-08-31 11:41:18 -07:00
Michael Lumish a6318a4d34
Merge pull request #1859 from murgatroid99/grpc-js_1.3_upmerge
Upmerge from 1.3.x to master
2021-08-12 14:54:03 -07:00
Michael Lumish 875f483cf6 grpc-js: Map ETIMEDOUT errors to UNAVAILABLE 2021-08-10 14:20:11 -07:00
Michael Lumish 770ffefe5b Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.3.x' into grpc-js_1.3_upmerge 2021-08-10 09:56:36 -07:00
Michael Lumish 5db8649fe9
Merge pull request #1873 from murgatroid99/grpc-js_server_cancelled_closed
grpc-js: Check for closed server stream before sending
2021-08-09 15:15:19 -07:00
Michael Lumish ce2765f7fb grpc-js: Handle errors thrown by writing to http2 stream 2021-08-06 11:53:48 -07:00
Michael Lumish af5207262f grpc-js: Check for closed server stream before sending 2021-08-06 11:11:30 -07:00
Michael Lumish 92cc956dec
Merge pull request #1853 from murgatroid99/grpc-js-xds_http_filters
grpc-js-xds: Add HTTP Filters support
2021-08-03 09:29:13 -07:00
Michael Lumish 6161950a85 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.3.x' into grpc-js_1.3_upmerge 2021-07-19 13:45:29 -07:00
Michael Lumish 6ae2ed4a14 grpc-js: Add trace log with library version 2021-07-19 13:20:49 -07:00
Michael Lumish bd1571fa94
Merge pull request #1852 from murgatroid99/grpc-js_bind_creds_typecheck
grpc-js: Tighten server.bindAsync creds typecheck
2021-07-19 13:15:29 -07:00
Michael Lumish 776bcb4632 grpc-js: Add more trace logging around establishing connections 2021-07-19 10:12:17 -07:00
murgatroid99 af1676a5a5 Add test for passing client credentials to server 2021-07-16 16:39:26 -07:00
murgatroid99 9e4039d86b Updated text in bindAsync error test 2021-07-16 10:45:40 -07:00
murgatroid99 ae2cb672b2 Merge branch 'master' into grpc-js-xds_http_filters 2021-07-15 16:36:27 -07:00
murgatroid99 d0745b3a4c Run call config filter factories before load balancing 2021-07-15 14:56:47 -07:00
murgatroid99 6359bf066f Remove test for exact default logger identity 2021-07-15 10:55:50 -07:00
murgatroid99 312b7613de grpc-js: Tighten server.bindAsync creds typecheck 2021-07-15 10:28:15 -07:00
murgatroid99 a0f298c514 grpc-js: Split out logs for different severity levels 2021-07-15 10:17:18 -07:00
Michael Lumish 311aca31e4 grpc-js-xds: Add HTTP Filters support 2021-07-14 16:41:05 -07:00
Michael Lumish dc43851762 grpc-js: Add logging for TLS over proxy connection errors 2021-07-13 16:06:42 -07:00
Michael Lumish 08423d62ac
Merge pull request #1842 from murgatroid99/grpc-js_proxy_tls_error_log
grpc-js: Add logging for TLS over proxy connection errors
2021-07-13 16:04:17 -07:00
Michael Lumish 6b3ebbb829 grpc-js: Add logging for TLS over proxy connection errors 2021-07-08 10:27:31 -07:00
Michael Lumish 1037b23ba6 grpc-js: Format source files and fix lint errors 2021-06-29 14:40:24 -07:00
Michael Lumish 8605ef2ded Fix subchannel address import, resolver test setup 2021-06-29 10:43:45 -07:00
Michael Lumish 1452ed93aa grpc-js: Register IP resolver in index 2021-06-29 10:04:32 -07:00
Michael Lumish 82fada33ff Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.3.x' into grpc-js_upmerge_from_1.3 2021-06-29 10:02:33 -07:00
Michael Lumish e7dad8b002
Merge pull request #1829 from murgatroid99/grpc-js_fix_cycles
grpc-js: Refactor code to eliminate runtime dependency cycles
2021-06-29 09:55:19 -07:00
Michael Lumish 32cd3504cc grpc-js: Add note in README about feature parity requests 2021-06-28 11:24:43 -07:00
Michael Lumish 031ae9472e grpc-js: Refactor code to eliminate runtime dependency cycles 2021-06-24 09:50:02 -07:00
Michael Lumish fa5066759d grpc-js: Unref timers for keepalive functionality 2021-06-23 14:01:56 -07:00
Michael Lumish d894809e0e grpc-js: Bump version to 1.3.3 2021-06-21 14:42:09 -07:00
Michael Lumish 118a6df067 grpc-js: Make logging behavior more similar to core 2021-06-21 13:41:54 -07:00
Michael Lumish 237ea8308a grpc-js: Make logging behavior more similar to core 2021-06-18 14:37:03 -07:00
Michael Lumish 8a38cd8549 grpc-js: Refactor FilterStack usage 2021-06-10 14:48:33 -07:00
Michael Lumish f01b6d9fca grpc-js: Export ServerErrorResponse type, which is used in public APIs 2021-06-02 13:42:41 -07:00
Michael Lumish d51551f6d7 grpc-js-xds: Add support for timeout xDS interop test
Add more logging
2021-05-19 13:25:33 -07:00
Michael Lumish f4f1d54031 grpc-js-xds: Propagate timeouts from xDS responses to method config 2021-05-17 11:08:22 -07:00
Michael Lumish bf7d200791 grpc-js: Change function check to handle async functions 2021-05-13 10:36:06 -07:00
Michael Lumish e3106b99ca Don't query the config selector for calls that have ended 2021-05-12 14:38:02 -07:00
Michael Lumish 7de0d08e29 grpc-js: Apply timeouts from service configs 2021-05-12 14:30:25 -07:00
Michael Lumish 126961a7da
Merge pull request #1780 from murgatroid99/grpc-js_econnreset_error_parsing
grpc-js: Look for ECONNRESET errors by checking the error code
2021-05-11 10:11:48 -07:00
Michael Lumish 21b5ba8d21
Merge pull request #1770 from murgatroid99/grpc-js_connectivity_improvements
grpc-js: Don't transition out of idle when discarding subchannels
2021-05-11 10:11:14 -07:00
Michael Lumish f009cd7b9f grpc-js: Look for ECONNRESET errors by code instead of errno 2021-05-10 11:06:16 -07:00
Michael Lumish cc0c8deea3 grpc-js: Make GRPC_VERBOSITY accept lower-case values 2021-05-06 13:09:16 -07:00
Michael Lumish 9253b7f104 grpc-js: Don't transition out of idle when discarding subchannels 2021-04-30 12:53:26 -07:00
Michael Lumish d82b1a3803
Merge pull request #1761 from zereraz/master
grpc-js: stricter function check than instanceof
2021-04-27 13:58:25 -07:00
zereraz 923b44bb1c grpc-js: Add type predicate to fix errors for isFunction 2021-04-28 00:18:35 +05:30
Michael Lumish d35fa3ab37
Merge pull request #1749 from murgatroid99/grpc-js_v1.3.0_bump
grpc-js: Update versions and xDS feature list
2021-04-27 10:47:25 -07:00
zereraz 7a8cd5a4bd grpc-js: Use helper isFunction 2021-04-24 14:13:41 +05:30
Sahebjot singh 076aeccfdc
grpc-js: stricter function check than instanceof
instanceof does not work in vm context
2021-04-21 09:01:42 +05:30
Michael Lumish c9aad43358 grpc-js: Add support for ipv4 and ipv6 schemes 2021-04-16 13:35:42 -07:00
Michael Lumish bf1b078816 grpc-js: Update versions and xDS feature list 2021-04-14 14:58:36 -07:00
Michael Lumish 72136bcf0b grpc-js: Remove explicit version compatibility check 2021-04-06 10:57:11 -07:00
Michael Lumish 66d93c0f65 Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.2.x' into grpc-js_1.2_upmerge_2 2021-04-02 11:19:13 -07:00
Andrey Melnik 65d4de8e6a Merge branch 'master' of https://github.com/grpc/grpc-node 2021-04-01 10:22:06 +03:00
Andrey Melnik 21176c23ab feature(grpc-js): Add possibility to provide maxSessionMemory http2 option through ChannelOptions 2021-04-01 10:21:28 +03:00
Michael Lumish 4623ecca42 grpc-js: don't send accept-encoding: gzip 2021-03-22 10:47:36 -07:00
Michael Lumish 78d3605f73
Merge pull request #1709 from murgatroid99/grpc-js_backoff_timeout_ref_electron
grpc-js: Timer ref and unref might not exist
2021-03-12 10:11:20 -08:00
Michael Lumish 602fcd23b4 grpc-js: Throw in watchConnectivityState if channel is closed 2021-03-12 09:39:50 -08:00
Michael Lumish 231619fcaa grpc-js: Timer ref and unref might not exist 2021-03-05 14:18:50 -08:00
Michael Lumish dd22f8f499 Don't send status through the filter stack twice when receiving trailers 2021-03-04 18:35:12 -08:00
Michael Lumish efc9a0f05c Don't send status through the filter stack twice when receiving trailers 2021-03-04 16:34:57 -08:00
Michael Lumish eff8cfc0f5 Merge branch 'master' into grpc-js-xds_routing_traffic_splitting_config_selector 2021-03-02 12:47:38 -08:00
Michael Lumish c5cc8b2652 grpc-js: Speculative fix for ECONNRESET errors 2021-03-02 11:55:42 -08:00
Michael Lumish 131b604f2c Add routing and traffic splitting functionality 2021-03-01 10:41:23 -08:00
Michael Lumish 60eb600410 move createGoogleDefaultCredentials from grpc-js to grpc-js-xds 2021-02-25 10:15:57 -08:00
Michael Lumish 40c19ea28b grpc-js: Don't propagate non-numeric errors from auth plugins 2021-02-16 12:42:10 -08:00
Michael Lumish 24d1a0486b
Merge pull request #1688 from murgatroid99/grpc-js_backoff_ref
grpc-js: Ref and unref backoff timer
2021-02-12 15:08:04 -08:00
Michael Lumish 097d63b14b grpc-js: Add more details to 'Failed to start HTTP/2 stream' error 2021-02-12 11:03:00 -08:00
Michael Lumish cd14345cb4 grpc-js: Ref and unref backoff timer 2021-02-11 09:55:24 -08:00
Michael Lumish 9e084bce19 Handle absence of Timer#hasRef on older Node versions 2021-02-08 11:39:15 -08:00
Michael Lumish 3806a99760 Add handling for early name resolution failures 2021-02-08 11:23:05 -08:00
Michael Lumish 259e00b866 grpc-js: Loosen dependency on @types/node 2021-02-03 11:54:13 -08:00
Michael Lumish 887d2ef677 Kick the ResolvingLoadBalancer out of IDLE when the first call is started. 2021-02-02 14:16:10 -08:00
Michael Lumish e35a7d0a25 Merge branch 'master' into grpc-js_config_selector 2021-02-01 14:20:36 -08:00
Michael Lumish 8e5f5bc18a grpc-js: Add ConfigSelector to Resolver API and plumb it through the channel 2021-02-01 14:18:24 -08:00
Michael Lumish 5ac9a1c2b6 grpc-js: Move call to user code out of try block 2021-01-25 13:24:39 -08:00
Andrey Melnik 7837e8e845 feature(grpc-js): Add possibility to provide maxSessionMemory http2 option through ChannelOptions 2021-01-20 01:00:57 +03:00
Michael Lumish 36986f618a grpc-js: round robin: re-resolve when subchannels go idle 2021-01-19 13:43:56 -08:00
Michael Lumish 0b026be131
Merge pull request #1648 from murgatroid99/grpc-js_deadline_filter_fast_cancel
grpc-js: End calls faster if the deadline has already passed
2021-01-07 12:55:49 -08:00
Michael Lumish fe4bd2641a
Merge pull request #1654 from 418sec/1-npm-grpc
Security Fix for Prototype Pollution - huntr.dev
2021-01-07 12:54:54 -08:00
Michael Lumish 374309be66 grpc-js: Propagate internal stream errors from the http2 module 2021-01-05 10:36:30 -08:00
d3v53c 6101694397 added test case 2020-12-07 22:40:14 -08:00
d3v53c b2530119b9 prototype pollution fix 2020-12-07 22:29:18 -08:00
Michael Lumish 21da990cb0 grpc-js: End calls faster if the deadline has already passed 2020-12-02 12:00:19 -08:00
Michael Lumish a006be07f4 grpc-js-xds: Shutdown the xDS client used by the resolver when the channel shuts down 2020-11-25 12:33:36 -08:00
Michael Lumish c050f97534 grpc-js: Make calls use the min of parent and own deadline when both are provided 2020-11-18 13:08:06 -08:00
Michael Lumish b78e5a0762
Merge pull request #1622 from murgatroid99/grpc-js_1.2.x
grpc-js: Update to 1.2.0
2020-11-11 14:39:39 -08:00
Michael Lumish ca6cf0f20b
Merge pull request #1616 from murgatroid99/grpc-js_deadline_cancellation_propagation
grpc-js: Implement deadline and cancellation propagation
2020-11-11 14:38:48 -08:00
Michael Lumish adfd4db9ea grpc-js: Update to 1.2.0 2020-11-09 10:53:44 -08:00
Michael Lumish cd2713f42a grpc-js: Rearrange connectivity state enum to match the native library 2020-11-09 10:45:57 -08:00
Michael Lumish 57428bf6fa
Merge pull request #1607 from murgatroid99/grpc-js_xds_separate_package
grpc-js: Separate xds code into a separate plugin package
2020-11-05 14:42:09 -08:00
Michael Lumish 38e4e48f4d
Merge pull request #1571 from murgatroid99/grpc-js_header_block_size
grpc-js: Allow clients and servers to send metadata of unlimited size
2020-11-05 13:29:58 -08:00
Michael Lumish ae2b64bd65 grpc-js: Implement deadline and cancellation propagation 2020-10-30 11:38:30 -07:00
Michael Lumish d8021d20d9
Merge pull request #1614 from hugebdu/master
grpc-js: support adding/removing services on started server
2020-10-29 14:22:52 -07:00
Daniel Shmuglin 51ca00298e implement Server#unregisterService(serviceDefinition) 2020-10-29 11:33:29 +02:00
Daniel Shmuglin 7c3ccda8ff implement Server#unregister(handlerName) 2020-10-29 10:54:33 +02:00
Daniel Shmuglin e49524a2ba Server#addService - lift the limitation of adding a new service to started server 2020-10-29 10:24:31 +02:00
Michael Lumish e4b69a8ee1 grpc-js: Add support for grpc.max_reconnect_backoff_ms channel arg 2020-10-28 13:27:44 -07:00
Michael Lumish afe4c3e082
Merge pull request #1605 from murgatroid99/grpc-js_prototype_pollution
grpc-js: Prevent prototype pollution in loadPackageDefinition
2020-10-23 10:49:18 -07:00
Michael Lumish f312326e9c Set the default port of 80 explicitly in http_proxy 2020-10-23 10:15:56 -07:00
Michael Lumish fd406fbef1 Use a regular dependency for proto-loader 2020-10-22 10:27:03 -07:00
Michael Lumish 9699de5ec6 Re-add grpc-js proto-loader dev dependency 2020-10-22 09:59:23 -07:00
Michael Lumish e71caded1b Put the google-auth-library dependency back in grpc-js 2020-10-21 14:10:37 -07:00
Michael Lumish c86f08c770 Document experimental namespace instability 2020-10-21 13:56:18 -07:00
Michael Lumish a6a8639343 grpc-js: Separate xds code into a separate plugin package 2020-10-21 13:45:22 -07:00
Michael Lumish 967eeb5443 grpc-js: Prevent prototype pollution in loadPackageDefinition 2020-10-20 11:19:22 -07:00
Michael Lumish bbd7617ba7 Move grpc-js xDS features into a separate package 2020-10-12 10:23:03 -07:00
Michael Lumish 73d3c307c9 grpc-js: xds: Add more logging around adding and removing eds and cds watchers 2020-10-05 11:27:18 -07:00
Michael Lumish a5cc154c8e
Merge pull request #1568 from murgatroid99/grpc-js_xds_credentials_bootstrap_change
grpc-js: xDS: handle insecure and google_default bootstrap creds
2020-09-28 14:08:46 -07:00
Michael Lumish dcf47460da grpc-js: xDS: Do not remove watchers in onResourceDoesNotExist 2020-09-24 14:01:15 -07:00
Michael Lumish 21adc97c4a
Merge pull request #1587 from badsyntax/export-client-streaming-type
grpc-js: Export handleClientStreamingCall type
2020-09-24 10:14:41 -07:00
Michael Lumish 62d9b1ad9b
Merge pull request #1586 from grpc/@grpc/grpc-js@1.1.x
Merge @grpc/grpc js@1.1.x into master
2020-09-24 09:42:45 -07:00
Richard Willis f3d14bd2b3 grpc-js: export handleClientStreamingCall type 2020-09-24 08:19:33 +01:00
Michael Lumish 0713b28da5 Revert testing changes 2020-09-22 12:09:13 -07:00
Michael Lumish fbdfcd4ee9 Fix tracer setting lines in xds script 2020-09-22 10:56:11 -07:00
Michael Lumish 474a496a7a Update submodules in xds test script 2020-09-22 00:47:55 -07:00
Michael Lumish 2574952e06 Use full node path in client_cmd 2020-09-21 14:15:21 -07:00
Michael Lumish c259edd7f8 Patch xds python script with debug logging 2020-09-21 13:33:37 -07:00
Michael Lumish a45d8da204 Add debugging output to xds scripts 2020-09-21 11:12:38 -07:00
Michael Lumish a1600812d1 Move timer initialization to the beginning of channel construction 2020-09-17 13:18:11 -07:00
Michael Lumish 6a32c00ed2 Bump grpc-js to 1.1.7 2020-09-17 12:15:47 -07:00
Michael Lumish 2791dbbb23 grpc-js: Add a timer that holds the event loop open while there are pending calls 2020-09-17 11:25:56 -07:00
Michael Lumish c0f31a8a02 grpc-js: Source nvm.sh in profile files in xds script to get nvm in subprocesses 2020-09-15 14:52:00 -07:00
Michael Lumish 8162efdf54 grpc-js: Install dependencies in xds script 2020-09-14 15:48:03 -07:00
Michael Lumish d32734f491 grpc-js: Allow clients and servers to send metadata of unlimited size 2020-09-11 13:03:31 -07:00
Michael Lumish 58801acf1e grpc-js: Fix path handling in xds interop script 2020-09-11 10:47:09 -07:00
Michael Lumish b99872eee7 grpc-js: xDS: handle insecure and google_default bootstrap creds 2020-09-10 14:52:24 -07:00
Michael Lumish 5e0feb5d74
Merge pull request #1552 from murgatroid99/grpc-js_xds_interop_client
grpc-js: Enable the xds URL scheme and add an interop test for it
2020-09-10 10:25:59 -07:00
Michael Lumish 46ac39b1e2 Add copyright notice to the new script 2020-09-10 09:56:45 -07:00
Michael Lumish d8e00689d0 Bump grpc-js to 1.1.6 2020-09-03 14:32:30 -07:00
Michael Lumish a45fb43091 Merge branch 'master' into grpc-js_xds_interop_client 2020-09-02 16:06:02 -07:00
Michael Lumish 1fc284f59d
Revert "fix(grpc-js): Add support for impl type to server.addService" 2020-09-02 15:17:57 -07:00
Michael Lumish 2d4ab786da Add xds kokoro config and update the test script 2020-09-02 15:00:46 -07:00
Michael Lumish e21f3374e8
Merge pull request #1556 from slavovojacek/master
fix(grpc-js): Add support for impl type to server.addService
2020-09-02 13:39:20 -07:00
Michael Lumish 1178d553e0
Merge pull request #1557 from mad-it/master
fix(grpc-js): preserve original error code when the handler of a readable stream throws an error
2020-09-02 13:38:20 -07:00
Slavo Vojacek fba1ee0cc3 fix(grpc): Fix typings 2020-09-02 20:32:31 +01:00
Slavo Vojacek 0d1d5a12fa chore(Typings): Update types 2020-09-02 16:05:10 +01:00
Jaroslav Šmolík b2d89820a3 Fix ClientOptions types
Remove index signature from ChannelOptions to fix intersection error
described in #1558 which causes issues on using ClientOptions direct
fields with TypeScript.

Removing of index signature required few minor changes:
 - adding few constant types that were used throughout the app
 - using `as const` assertion in xds-client
 - using not-so-great type cast in channelOptionsEqual

Alternative solution would be removing the index signature from
ChannelOptions explicitly in ClientOptions definition, which is not
trivial and probably calls for a generic type helper.

See: https://github.com/grpc/grpc-node/issues/1558
Fixes: #1558
2020-09-01 21:47:52 +02:00
Algin Maduro aaee068a69 fix: add addition check if the provided code is valid gRPC code 2020-09-01 13:28:23 +02:00
Algin Maduro 5e42be1b34 fix: preserve original error code if present 2020-09-01 12:59:07 +02:00
Michael Lumish 2c98a3d3f9 More EDS logging, and improved weight handling 2020-08-31 15:18:00 -07:00
Michael Lumish 286c81a924 Handle endpoint health_status, improve some logging 2020-08-31 14:04:53 -07:00
Slavo Vojacek 38e988ea03 fix(grpc-js): Add support for impl type to server.addService 2020-08-31 20:34:14 +01:00
WK 158d0dd99f
Update subchannel.ts 2020-09-01 01:40:14 +08:00
WK 7fc0035f7f
Update subchannel.ts 2020-09-01 01:30:35 +08:00
WK 148b273f19
Update http_proxy.ts 2020-09-01 01:28:53 +08:00
Michael Lumish 62bd1cab68 Add granular verbosity option to xDS interop client 2020-08-31 09:55:29 -07:00
WK 6a99983ed1
Undo changes. 2020-08-30 14:56:23 +08:00
WK 08350ec0ef
Update subchannel.ts 2020-08-30 14:52:20 +08:00
WK 6f3db6f4d8
Update http_proxy.ts 2020-08-30 14:49:54 +08:00
WK c536178c67
Fixed connectivity to Google PubSub over proxy
Latest version has caused @google-cloud/pubsub fail to connect over a proxy connection.


Snapshot of error:

2020-08-29T10:52:45.340Z | proxy | Successfully connected to pubsub.googleapis.c
om:443 through proxy 172.16.52.252:443
2020-08-29T10:52:45.370Z | subchannel | 172.16.52.252:443 CONNECTING -> TRANSIEN
T_FAILURE
2020-08-29T10:52:45.372Z | pick_first | CONNECTING -> TRANSIENT_FAILURE
2020-08-29T10:52:45.373Z | resolving_load_balancer | dns:172.16.52.252:443 CONNE
CTING -> TRANSIENT_FAILURE
2020-08-29T10:52:45.375Z | channel | Pick result: TRANSIENT_FAILURE subchannel:
undefined status: 14 No connection established
2020-08-29T10:52:45.377Z | call_stream | [11] cancelWithStatus code: 14 details:
 "No connection established"
2020-08-29T10:52:45.379Z | call_stream | [11] ended with status: code=14 details
="No connection established"
2020-08-29T10:52:45.381Z | connectivity_state | dns:172.16.52.252:443 CONNECTING
 -> TRANSIENT_FAILURE


Before proposed fix:

    static getDefaultAuthority(target) {
        return target.path;  // this returns "pubsub.googleapis.com:443"
    }

After proposed fix:

    static getDefaultAuthority(target) {
        const hostPort = uri_parser_1.splitHostPort(target.path);  // target.path is "pubsub.googleapis.com:443"
        if (hostPort !== null) {
            return hostPort.host; // this returns "pubsub.googleapis.com"
        }
        else {
            throw new Error(`Failed to parse target ${uri_parser_1.uriToString(target)}`);
        }
    }
2020-08-29 19:05:42 +08:00
Michael Lumish 36db24e39f Set a deadline on outgoing requests in the xds interop client 2020-08-28 12:50:53 -07:00
Michael Lumish 5827b3e01d Reset saved LRS settings when the LRS stream ends 2020-08-28 11:49:03 -07:00
Michael Lumish b9962feff0 Add more interop client logging 2020-08-28 11:17:52 -07:00
Michael Lumish 60bc11285b Send buffered stats when starting LRS stream 2020-08-28 10:43:58 -07:00
Michael Lumish 338941d664 Add more LRS tracing 2020-08-28 10:06:57 -07:00
Michael Lumish 8269fd4bca priority: improve tracing, cancel failover timer when selecting child 2020-08-28 09:50:33 -07:00
Michael Lumish 597fc1c57b Use the same channel for ADS and LRS clients 2020-08-27 18:14:03 -07:00
Michael Lumish 82037fcdaf Add error logging to xDS interop client 2020-08-27 15:54:05 -07:00
Michael Lumish 1a47f78f4f Fix some trace logs, increase XdsClient keepalive interval 2020-08-27 14:17:29 -07:00
Michael Lumish c83d5a7c4d Fix keepalive ping timing, change some trace logs 2020-08-27 13:23:07 -07:00
Michael Lumish 665632f480 Add more keepalive logging 2020-08-27 12:47:53 -07:00
Michael Lumish 197cc84e7a Add more tracers, fix onResourceDoesNotExist handling 2020-08-27 11:05:54 -07:00
Michael Lumish 2404446234 Fix RDS domain search 2020-08-25 14:10:54 -07:00
Michael Lumish 36a6580921 Add more XdsClient tracing 2020-08-25 13:49:28 -07:00
Michael Lumish af949674da Add XdsClient tracers, and stream start backoff, and fix some bugs 2020-08-25 13:22:30 -07:00
Michael Lumish 8580204a73 Fix incorrect 'Method not implemented' error 2020-08-25 11:05:22 -07:00