Commit Graph

248 Commits

Author SHA1 Message Date
Michael Lumish 9d36d8d5c7
Merge pull request #1172 from merlinnot/gts-tslint
build(grpc-js): add full gts configuration and fix TSLint issues
2019-11-07 16:24:36 -08:00
Natan Sągol 845cfe1bd9
build: add full gts configuration and fix TSLint issues 2019-11-07 22:14:24 +01:00
Natan Sągol a8d6c8751a
style: rename KEEPALIVE_TIME_MS to KEEPALIVE_MAX_TIME_MS 2019-11-07 21:48:35 +01:00
Natan Sągol 845492f0b3
fix: prevent exceeding timer limitations when backing off 2019-11-07 20:42:33 +01:00
murgatroid99 378a55357c grpc-js: Bump to 0.6.11 2019-11-06 16:04:34 -08:00
murgatroid99 fef812b2c8 Handle 'too_many_pings' error from server 2019-11-06 14:28:44 -08:00
Natan Sągol 0353dbf819
fix: correctly initialize cleanupTimer 2019-11-06 20:39:36 +01:00
Natan Sągol 61d7e7726a
Merge branch 'master' of github.com:grpc/grpc-node into JrSchild/master 2019-11-06 20:38:26 +01:00
Natan Sągol e51a740216
refactor: use null instead of undefined to indicate that cleanupTimer is stopped 2019-11-06 20:32:25 +01:00
Joram 821c9ab494 fix: correct comments 2019-11-06 15:45:15 +01:00
Joram 5f271de8c2 fix: cancel the cleanup task inside the unrefUnusedSubchannels function 2019-11-06 15:10:19 +01:00
Joram 93f8169139 refactor: simplify if statements 2019-11-05 09:59:41 +01:00
murgatroid99 f8af7d1dd0 Bump grpc-js to 0.6.10 2019-10-30 09:59:26 -07:00
imjoey 39f11520f3 Fix the default value of waitForReady in doc
In my usecase, the default behavious of `waitForReady` for RPC is `false` that not in accord with the doc. After digging into the source codes, probably the doc is incorrect.

Signed-off-by: imjoey <majunjiev@gmail.com>
2019-10-29 14:55:34 +08:00
murgatroid99 e2bb127bb5 grpc-js: Close http2 sessions that are dropped by their subchannels 2019-10-28 10:33:59 -07:00
Joram 20cbfc7e9f fix(sub-channels): clear the cleanup interval when all channels are unrefed
Co-authored-by: Natan Sągol <m@merlinnot.com>
2019-10-24 11:45:19 +02:00
murgatroid99 a53b36d680 Merge branch 'master' into grpc-js_round_robin 2019-10-14 14:25:20 -07:00
murgatroid99 d362ccb3f6 grpc-js: Some fixes for how idleness and reresolution are handled 2019-10-11 12:59:38 -07:00
Michael Lumish 607def892e
Merge pull request #1072 from murgatroid99/grpc-js_pick_first_reresolve
grpc-js: pick first: resolve address again after trying all addresses
2019-10-10 14:18:29 -07:00
murgatroid99 327eecce3c grpc-js: Fix handling of established connection drops in subchannel 2019-10-10 12:45:07 -07:00
murgatroid99 2c4798e3d6 Only reconnect to same address list if idle 2019-10-10 10:48:11 -07:00
murgatroid99 4250ac6685 Bump grpc-js to 0.6.8 2019-10-10 10:34:19 -07:00
murgatroid99 d5931ad232 grpc-js: pick first: resolve address again after trying all addresses 2019-10-10 10:26:36 -07:00
Michael Lumish 974cb30a27
Merge pull request #1037 from murgatroid99/grpc-js_client_error_construction
Add function for creating errors from statuses
2019-10-09 14:43:32 -07:00
murgatroid99 50a3ead062 Don't test value of error.message 2019-10-09 13:14:30 -07:00
murgatroid99 f29c983851 Make error message match other library 2019-10-09 12:46:25 -07:00
Michael Lumish 56df09ceb0
Merge pull request #1069 from mpminardi/grpc-js_api_changes
grpc-js Api changes for using statically generated code with grpc-js
2019-10-09 12:09:30 -07:00
murgatroid99 ee72cd440f grpc-js: pick-first: fix bad state transition when reconnecting connected LB 2019-10-08 16:35:42 -07:00
Mario Minardi 1aac229321 grpc-js: change signature of MethodDefinition used in ServiceDefinition 2019-10-08 11:34:18 -06:00
Mario Minardi 1d7a7f4700 grpc-js: export additional api in index.ts 2019-10-08 11:33:30 -06:00
murgatroid99 e480a0a686 grpc-js: pick first: remove reference and go idle after disconnect 2019-10-07 13:44:08 -07:00
Michael Lumish 2be82c7770
Merge pull request #1065 from murgatroid99/grpc-js_some_tracers
Add tracing functionality and a few connectivity state tracers
2019-10-04 14:27:54 -07:00
murgatroid99 f40d6a61c0 Pick first: go IDLE if all subchannels go IDLE 2019-10-04 10:52:34 -07:00
murgatroid99 81a1aa17b2 Add tracing functionality and a few connectivity state tracers 2019-10-04 10:24:04 -07:00
murgatroid99 781b13573f Add round robin load balancer implementation 2019-10-03 15:17:07 -07:00
murgatroid99 a23f739e5f grpc-js: exitIdle asynchronously in QueuePicker, only act in exitIdle if IDLE 2019-10-02 15:18:40 -07:00
Michael Lumish 58345b60f1
Merge pull request #1058 from murgatroid99/grpc-js_0.6.3
Update grpc-js to 0.6.3
2019-10-01 13:24:02 -07:00
murgatroid99 0932235794 Update grpc-js to 0.6.3 2019-10-01 11:52:50 -07:00
murgatroid99 1b2c558e53 Copy outgoing metadata to avoid modifying it 2019-10-01 10:43:49 -07:00
murgatroid99 4e7f4dff17 Also use original call metadata 2019-09-30 15:56:15 -07:00
murgatroid99 c7d086bfb4 Properly use filtered metadata when starting requests 2019-09-30 15:03:48 -07:00
murgatroid99 ce119ead0b Merge branch 'master' into grpc-js_uds_resolver 2019-09-27 14:24:07 -07:00
murgatroid99 21e0bfae67 Bump grpc-js to 0.6.2 2019-09-26 18:09:25 -07:00
murgatroid99 06f6065692 Increase resolver test timeout 2019-09-26 17:06:51 -07:00
murgatroid99 4fb254ddb6 grpc-js: Fix TLS server name handling 2019-09-26 14:32:54 -07:00
murgatroid99 5ab1806b44 Add UDS resolver 2019-09-25 17:53:05 -07:00
Michael Lumish c6b2f423ee
Merge pull request #1045 from murgatroid99/grpc-js_dns_fix
Fix DNS name regex and add tests
2019-09-25 13:43:29 -07:00
Michael Lumish fe601286e6
Undo domain name change 2019-09-25 10:51:06 -07:00
Michael Lumish d27ca5d725
Switch to a more reliable domain name with a hyphen
Co-Authored-By: Natan Sągol <m@merlinnot.com>
2019-09-25 09:27:02 -07:00
Colin Ihrig 79286616d8
grpc-js: fix typo
This commit fixes a typo observed in
https://github.com/grpc/grpc-node/pull/1015
2019-09-24 21:58:01 -04:00
murgatroid99 9238ad07cb Fix DNS name regex and add tests 2019-09-24 18:22:38 -07:00
Michael Lumish 2ad2e11e7a
Merge pull request #1043 from murgatroid99/grpc-js_0.6.0_bump
Bump grpc-js to 0.6.0
2019-09-24 13:31:42 -07:00
murgatroid99 adf7b08096 Merge branch 'master' into grpc-js_disconnect_status 2019-09-24 12:11:03 -07:00
murgatroid99 fba9664f35 Remove fragile test file 2019-09-24 12:09:57 -07:00
murgatroid99 184870f42a Bump grpc-js to 0.6.0 2019-09-24 10:50:33 -07:00
murgatroid99 96e3dde23d Return UNAVAILABLE status on TCP disconnect 2019-09-24 10:25:08 -07:00
Michael Lumish b05caec567
Merge branch 'master' into name_resolution_load_balancing 2019-09-23 11:03:25 -07:00
murgatroid99 96db88a3fb Bump grpc-js to 0.5.4 2019-09-20 10:44:13 -07:00
murgatroid99 b003aa14d4 Add function for creating errors from statuses 2019-09-19 17:14:38 -07:00
murgatroid99 9e2aea0399 Revert "Add specific call error for TCP disconnection" 2019-09-19 14:42:40 -07:00
murgatroid99 8780f49c0a Update @types/node to version with modified dns types 2019-09-18 13:47:25 -07:00
murgatroid99 d762dc4438 Use updated type definitions 2019-09-16 15:37:54 -07:00
murgatroid99 a7a9f0de76 Switch to dns.lookup 2019-09-16 15:12:07 -07:00
Bjorn Stromberg fc032c0226 grpc-js: Update gts and apply fixes 2019-09-13 12:31:33 +09:00
murgatroid99 8900aab94e Bump grpc-js to 0.5.3 2019-09-10 12:49:15 -07:00
murgatroid99 049da7e058 Add session.socket to ClientHttp2StreamMock in tests 2019-09-06 14:58:42 -07:00
murgatroid99 ae33497656 Check stream.session.socket before adding event handler 2019-09-06 13:21:47 -07:00
murgatroid99 4b4addf5b9 Add specific call error for TCP disconnection 2019-09-06 11:10:47 -07:00
murgatroid99 3f7d640e9e Fix hardcoded IPv6 localhost address 2019-09-03 11:05:54 -07:00
murgatroid99 b7656e0644 Fix DNS result handling, special case localhost, resolve comment 2019-08-30 15:35:34 -07:00
murgatroid99 026d681a84 Fix doubled name resolver errors and added detail 2019-08-29 17:45:06 -07:00
murgatroid99 4144558ee6 Resolve first comments 2019-08-29 17:03:00 -07:00
murgatroid99 889d1d3093 Avoid http2 IPv6 handling bug 2019-08-29 14:11:19 -07:00
murgatroid99 ee4985886d Pick first load balancer: don't connect forever without calls 2019-08-29 10:36:09 -07:00
murgatroid99 b4d848865d Lint fixes 2019-08-28 18:04:43 -07:00
murgatroid99 5aef347fb9 Proceed through pick-first list quickly when subchannel enters TRANSIENT_FAILURE 2019-08-28 17:44:30 -07:00
murgatroid99 01977e6e08 Add documentation and error handling 2019-08-28 17:06:14 -07:00
murgatroid99 fb2e7637c0 Update channel behavior + related classes 2019-08-13 17:58:54 -07:00
murgatroid99 e612cd9934 Add new subchannel and load balancing code 2019-08-13 10:10:50 -07:00
Bjorn Stromberg 110461d78a Add dev-dependencies and fix tests so they exit after running 2019-08-06 15:01:31 +09:00
Michael Lumish 716b29f0b5
Merge pull request #972 from murgatroid99/grpc-js_server_types_export
Improve server-related types exported by grpc-js
2019-07-29 15:57:54 -07:00
murgatroid99 80d7057cad Use typeof instead of util functions 2019-07-29 13:50:51 -07:00
murgatroid99 acdd2abfc3 Add resolver and service config handling code 2019-07-16 14:35:06 -07:00
murgatroid99 201dab7fa8 Improve server-related types exported by grpc-js 2019-07-16 14:15:55 -07:00
Bjorn Stromberg 277d9892f8 Add @types/semver as devDependency 2019-07-12 10:50:50 +09:00
murgatroid99 4818d304c9 Bump grpc-js to 0.5.2 2019-07-11 16:46:53 -07:00
murgatroid99 5b87ceb05c Warn instead of failing when constructing metadata from remote end 2019-07-11 14:43:41 -07:00
murgatroid99 d223cc394e Bump grpc-js to 0.5.1 2019-07-09 15:30:29 -07:00
murgatroid99 3f460716fb Remove check in grpc-js that doesn't appear in grpc 2019-07-09 10:52:51 -07:00
Tom Kirkpatrick aa54122e51
fix: properly handle http error status codes
fix #941
2019-07-09 00:31:09 +02:00
Michael Lumish a996adaade
Merge pull request #930 from murgatroid99/grpc-js_0.5.0
Bump grpc-js to 0.5.0
2019-06-27 16:56:18 -07:00
murgatroid99 e6a8092a63 Bump grpc-js to 0.5.0 2019-06-27 11:35:07 -07:00
cjihrig 7c2bb2a237
grpc-js: don't overwrite existing error codes
This commit causes RPC handlers to default to INTERNAL when
an error occurs, but does not overwrite an existing error
code.
2019-06-25 14:04:21 -04:00
cjihrig 00b091a1b1
grpc-js: shutdown improvements
This commit maintains a Set of all active sessions. This allows
tryShutdown() to gracefully stop the server properly (as
recommended in the Node HTTP2 documentation). The same Set of
sessions also allows forceShutdown() to be implemented.
2019-06-25 14:04:21 -04:00
cjihrig 4399131bf9
grpc-js: fix lint
This commit makes the linter pass again.
2019-06-25 13:53:37 -04:00
cjihrig 0b4fd1365a
grpc-js: expose Server implementation publicly
This commit exposes the pure JS Server as public API.
2019-06-25 13:53:37 -04:00
cjihrig c3d7453a84
grpc-js: handle multiple messages in single 'data' event
This commit adds support for receiving multiple messages in a
single 'data' event from the underlying HTTP2 stream. It also
handles potential out of order messages due to asynchronous
deserialization of messages.
2019-06-09 18:12:24 -07:00
murgatroid99 438bfdd8a2 Update grpc-js to 0.4.3 2019-06-07 10:03:44 -07:00
Michael Lumish 5b187ba5e8
Merge pull request #908 from murgatroid99/pure_js_goaway_handling
Pure JS: Fixed two bugs with goaway handling
2019-06-07 10:02:13 -07:00
murgatroid99 1ee218c8bd Fix tests for fixed code, also fix another issue 2019-06-06 10:38:28 -07:00