Skip to content

Commit 395de4b

Browse files
committed
grpc-js: Refresh server idle timer if not enough time has passed
1 parent 745a451 commit 395de4b

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

packages/grpc-js/src/server.ts

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1790,19 +1790,22 @@ export class Server {
17901790
// for future refreshes
17911791
if (
17921792
sessionInfo !== undefined &&
1793-
sessionInfo.activeStreams === 0 &&
1794-
Date.now() - sessionInfo.lastIdle >= ctx.sessionIdleTimeout
1793+
sessionInfo.activeStreams === 0
17951794
) {
1796-
ctx.trace(
1797-
'Session idle timeout triggered for ' +
1798-
socket?.remoteAddress +
1799-
':' +
1800-
socket?.remotePort +
1801-
' last idle at ' +
1802-
sessionInfo.lastIdle
1803-
);
1795+
if (Date.now() - sessionInfo.lastIdle >= ctx.sessionIdleTimeout) {
1796+
ctx.trace(
1797+
'Session idle timeout triggered for ' +
1798+
socket?.remoteAddress +
1799+
':' +
1800+
socket?.remotePort +
1801+
' last idle at ' +
1802+
sessionInfo.lastIdle
1803+
);
18041804

1805-
ctx.closeSession(session);
1805+
ctx.closeSession(session);
1806+
} else {
1807+
sessionInfo.timeout.refresh();
1808+
}
18061809
}
18071810
}
18081811

0 commit comments

Comments
 (0)