David Fiala
98cd87f751
ensure that client keepalive timers are always cleared when they trigger. this is a necessary change to fit with having removed keepaliveDisabled boolean. manually inspected test logs for both server.ts and transport.ts to verify both types of keepalives are operating correctly.
2024-06-06 22:57:13 -07:00
Michael Lumish
e64d816d7d
grpc-js: Avoid buffering significantly more than max_receive_message_size per received message (1.10.x)
2024-06-06 15:00:23 -07:00
David Fiala
3c5ab229b1
per discussion, avoid tracking keepalive disabled state and instead depend on whether the session is destroyed
2024-06-05 19:01:02 -07:00
Michael Lumish
7719e37c83
grpc-js: Fix client hang when receiving extra messages for a unary response
2024-06-05 17:55:56 -07:00
subhraOffGit
6957c6c4ec
[vote]Added Active maintainers into MAINTAINERS.md.
...
[vote] Added sergiitk, gnossen, temawi into grpc/node active maintainers list. Removed @jtattermusch, @nicolasnoble, @srini100 from active maintainers list and moved them to emeritus. Added @nimf to emeritus
Please comment as "Agree" if you agree to the change, if not please comment as "Disagree". Your comment will be counted as a vote.
The PR needs to stay open for 14 days, I.e. till 15th June 2024 as per governance guidelines
2024-06-01 20:28:10 +05:30
David Fiala
c2da436a8e
remove keepaliveDisabled from server.ts. rename keepaliveTimer.
2024-05-29 15:09:55 -07:00
David Fiala
a77d94f7c6
Based on grpc/grpc-node#2139 I wrapped http2session.ping in a try-catch block again
2024-05-29 10:37:40 -07:00
Brendan Myers
8e2dc274a3
fix: add decoding for url encoded user credentials
2024-05-29 19:24:48 +10:00
David Fiala
d325b5fff3
hoist in second location
2024-05-28 22:46:48 -07:00
David Fiala
bed5e85af9
resolve hoisting
2024-05-28 22:43:51 -07:00
David Fiala
19cdc1233c
another missing trace message for parity
2024-05-28 22:37:24 -07:00
David Fiala
7883164137
return imports back to original order
2024-05-28 22:35:40 -07:00
David Fiala
577b4b4748
add keepalive server trace back in to match channelz vs non-channelz trace behavior
2024-05-28 22:32:09 -07:00
David Fiala
d799a7a5bd
unify server and client keepalive matching comments and discussion on first round of review from https://github.com/grpc/grpc-node/pull/2760
2024-05-28 22:26:25 -07:00
David Fiala
334f0dcdb5
remove comment
2024-05-28 14:58:59 -07:00
Michael Lumish
a4c2106e63
Merge pull request #2758 from murgatroid99/grpc-js_1.10.x_upmerge
...
Merge 1.10.x branch into master
2024-05-28 14:58:13 -07:00
David Fiala
ad598ecbe4
Serverside keepalive error detection and cleanups
...
- Bugfix: Ensure that if session.ping returns false we correctly identify fail the keepalive and connection
- Bugfix: Ensure that if the interval between keepalives being sent occurs faster than the prior keepalive's timeout that we do not overwrite the reference to the prior timeout. Prior implementation could have in theory prevented a valid keepalive timeout from clearing itself. This rewrite keeps every timeout as a local (vs a shared state per session). Even if the timeout outlives the lifetime of a session, we still guard against errors by checking that the parent interval is not false-y. I reckon this could result in a short-term memory leak per session which is bounded for a maximum of keepaliveTimeoutMs. On the other hand even with that potential for a short reference hold, this implementation proposed here is more correct I think. One alternative we could do is keep a list of pending timeouts.. which is complex for a rare situation that will self resolve anyhow when keepaliveTimeoutMs is reached.
- Bug Fix: keepalive intervals were being cleared with an incorrect clearTimeout before. Not sure if this was causing intervals leaks in some nodejs impls or not. (v20.13.1 seems to accept this mismatch without issue)
- Rename variables for clarity, to prevent future bugs like swapping clearInterval vs clearTimeout.
- Implementation is repeated in two places, per warning from https://github.com/grpc/grpc-node/pull/2756#issuecomment-2136031256
- This commit supercedes the prior PR on a master branch which was out of date. https://github.com/grpc/grpc-node/pull/2756
2024-05-28 14:53:46 -07:00
Michael Lumish
71853407a4
Merge remote-tracking branch 'upstream/@grpc/grpc-js@1.10.x' into grpc-js_1.10.x_upmerge
2024-05-28 13:34:05 -07:00
Michael Lumish
45e5fe5462
Merge pull request #2750 from murgatroid99/grpc-js_idle_uds_fix
...
grpc-js: Fix UDS channels not reconnecting after going idle
2024-05-15 09:17:41 -07:00
Michael Lumish
87a3541402
grpc-js: Fix UDS channels not reconnecting after going idle
2024-05-14 14:47:53 -07:00
James Watkins-Harvey
3e89fdcec1
HTTP CONNECT: handle early server packets
2024-05-10 16:17:06 -04:00
Michael Lumish
3105791fbe
Merge pull request #2740 from sergiitk/backport-1.10-psm-interop-common-prod-tests
...
PSM Interop: simplify Kokoro buildscripts (@grpc/grpc-js@1.10.x backport)
2024-05-07 10:10:48 -07:00
Michael Lumish
fec135a980
Merge pull request #2729 from sergiitk/psm-interop-common-prod-tests
...
PSM Interop: simplify Kokoro buildscripts
2024-05-06 15:26:17 -07:00
Michael Lumish
15b7d4dcd4
Merge pull request #2729 from sergiitk/psm-interop-common-prod-tests
...
PSM Interop: simplify Kokoro buildscripts
2024-05-06 15:20:11 -07:00
Sergii Tkachenko
1495b020f5
PSM Interop: move test suite lists to psm_interop_kokoro_lib.sh
2024-05-06 14:05:54 -07:00
Michael Lumish
76fe802309
Merge pull request #2739 from murgatroid99/backport-1.10-grpc-js_linkify-it_fix
...
root: Update dependency on jsdoc to avoid linkify-it compilation error (@grpc/grpc-js@1.10.x backport)
2024-05-06 09:37:50 -07:00
Michael Lumish
d5edf49f6c
Merge pull request #2735 from murgatroid99/grpc-js_linkify-it_fix
...
root: Update dependency on jsdoc to avoid linkify-it compilation error
2024-05-03 14:28:01 -07:00
Michael Lumish
1a8678e493
Merge pull request #2735 from murgatroid99/grpc-js_linkify-it_fix
...
root: Update dependency on jsdoc to avoid linkify-it compilation error
2024-05-03 14:24:44 -07:00
Michael Lumish
5b76d7dfe8
root: Update dependency on jsdoc to avoid linkify-it compilation error
2024-05-03 14:05:38 -07:00
Michael Lumish
23c05fca84
Merge pull request #2732 from murgatroid99/grpc-js_proto-loader_update
...
grpc-js(-xds): Pick up proto-loader update
2024-05-01 11:03:57 -07:00
Michael Lumish
0ae86b13f0
Merge pull request #2731 from murgatroid99/proto-loader_dependency_update
...
proto-loader: Update dependency on protobufjs
2024-05-01 10:31:13 -07:00
Michael Lumish
0bbfb920d1
Merge pull request #2723 from murgatroid99/grpc-js_http2_error_reporting
...
grpc-js: Improve reporting of HTTP error codes
2024-05-01 10:27:59 -07:00
Michael Lumish
5e1ab3ecf8
Merge pull request #2717 from murgatroid99/proto-loader_duplicate_method_declarations
...
proto-loader: Avoid generating duplicate method declarations in some cases
2024-05-01 10:26:49 -07:00
Michael Lumish
e4f2ecd053
grpc-js(-xds): Pick up proto-loader update
2024-04-30 15:49:20 -07:00
Michael Lumish
cf9cba6142
proto-loader: Update dependency on protobufjs
2024-04-30 10:35:48 -07:00
Michael Lumish
8754ccb7db
grpc-js: Improve reporting of HTTP error codes
2024-04-11 10:56:18 -07:00
Michael Lumish
b292946de7
proto-loader: Avoid generating duplicate method declarations in some cases
2024-04-09 14:45:35 -07:00
Michael Lumish
567449875d
Merge pull request #2711 from n0v1/feat/method-options
...
grpc-loader: Expose method options
2024-04-09 14:36:19 -07:00
n0v1
6c7225f3ba
make method options required
2024-04-09 18:21:33 +00:00
Sergii Tkachenko
db1c05eb09
Merge pull request #2713 from sergiitk/backport-1.10-psm-interop-pkg-dev
...
PSM Interop: Migrate to Artifact Registry (@grpc/grpc-js@1.10.x backport)
2024-04-08 18:07:32 -07:00
Michael Lumish
2af21a55f3
Merge pull request #2712 from sergiitk/psm-interop-pkg-dev
...
PSM Interop: Migrate to Artifact Registry
2024-04-08 18:04:43 -07:00
Michael Lumish
b2e9d04cec
Merge pull request #2712 from sergiitk/psm-interop-pkg-dev
...
PSM Interop: Migrate to Artifact Registry
2024-04-08 17:47:26 -07:00
Sergii Tkachenko
ade39e8baa
PSM Interop: Migrate to Artifact Registry
...
Migrate PSM Interop images from Container Registry (gcr.io) to
Artifact Registry (pkg.dev).
2024-04-08 16:13:44 -07:00
Christopher Fenn
e6ac1a49ed
return uninterpreted options as an array
2024-04-05 17:12:04 +02:00
Christopher Fenn
6e441a8d03
use single quotes consistently
2024-04-05 16:38:04 +02:00
Christopher Fenn
1e37caadfc
add test case for partially set options
2024-04-05 16:37:03 +02:00
Christopher Fenn
27d608763b
adjust implementation to always return default options
2024-04-05 16:23:29 +02:00
Christopher Fenn
99e8a060f6
make uninterpreted_option an array
2024-04-05 16:19:04 +02:00
Christopher Fenn
5bd37a9de1
narrow down type of idempotency_level
2024-04-05 16:00:28 +02:00
Christopher Fenn
260966c070
predefined options should always be returned with their default value
2024-04-05 16:00:04 +02:00