From aa002369cbc517fd598dd652bb39741b871c2485 Mon Sep 17 00:00:00 2001 From: Antoine Clausse Date: Tue, 13 May 2025 10:23:31 +0200 Subject: [PATCH] Update defaultHighWaterMark to 64KiB (Node 22's default) (#25522) * Set defaultHighWaterMark to 16KiB This is already the default in Node 20 * Set defaultHighWaterMark to 64KiB Per https://github.com/overleaf/internal/pull/25522#issuecomment-2872035192 GitOrigin-RevId: 19d731abf683066654027de3a4f9ac0b8916f22c --- services/chat/config/settings.defaults.cjs | 3 +++ services/clsi/config/settings.defaults.js | 4 ++++ services/contacts/config/settings.defaults.cjs | 3 +++ services/docstore/config/settings.defaults.js | 4 ++++ services/document-updater/config/settings.defaults.js | 3 +++ services/filestore/config/settings.defaults.js | 4 ++++ services/notifications/config/settings.defaults.js | 5 +++++ services/project-history/config/settings.defaults.cjs | 3 +++ services/real-time/config/settings.defaults.js | 4 ++++ services/web/config/settings.defaults.js | 6 +++++- 10 files changed, 38 insertions(+), 1 deletion(-) diff --git a/services/chat/config/settings.defaults.cjs b/services/chat/config/settings.defaults.cjs index 4b7dc293a9..9cc27a6877 100644 --- a/services/chat/config/settings.defaults.cjs +++ b/services/chat/config/settings.defaults.cjs @@ -1,6 +1,9 @@ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.keepAlive = false https.globalAgent.keepAlive = false diff --git a/services/clsi/config/settings.defaults.js b/services/clsi/config/settings.defaults.js index 5edaec4a8a..7472334d80 100644 --- a/services/clsi/config/settings.defaults.js +++ b/services/clsi/config/settings.defaults.js @@ -1,5 +1,9 @@ const Path = require('node:path') const os = require('node:os') +const stream = require('node:stream') + +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) const isPreEmptible = process.env.PREEMPTIBLE === 'TRUE' const CLSI_SERVER_ID = os.hostname().replace('-ctr', '') diff --git a/services/contacts/config/settings.defaults.cjs b/services/contacts/config/settings.defaults.cjs index 7ffdb83ce5..bcf014ee70 100644 --- a/services/contacts/config/settings.defaults.cjs +++ b/services/contacts/config/settings.defaults.cjs @@ -1,6 +1,9 @@ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.maxSockets = 300 http.globalAgent.keepAlive = false https.globalAgent.keepAlive = false diff --git a/services/docstore/config/settings.defaults.js b/services/docstore/config/settings.defaults.js index 9ad506a9bd..14da21e132 100644 --- a/services/docstore/config/settings.defaults.js +++ b/services/docstore/config/settings.defaults.js @@ -1,5 +1,9 @@ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') + +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.maxSockets = 300 http.globalAgent.keepAlive = false diff --git a/services/document-updater/config/settings.defaults.js b/services/document-updater/config/settings.defaults.js index 0cd29d325b..a6a1c397fa 100755 --- a/services/document-updater/config/settings.defaults.js +++ b/services/document-updater/config/settings.defaults.js @@ -1,6 +1,9 @@ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.keepAlive = false https.globalAgent.keepAlive = false diff --git a/services/filestore/config/settings.defaults.js b/services/filestore/config/settings.defaults.js index 9a08bb197e..28d7190376 100644 --- a/services/filestore/config/settings.defaults.js +++ b/services/filestore/config/settings.defaults.js @@ -1,4 +1,8 @@ const Path = require('node:path') +const stream = require('node:stream') + +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) // environment variables renamed for consistency // use AWS_ACCESS_KEY_ID-style going forward diff --git a/services/notifications/config/settings.defaults.js b/services/notifications/config/settings.defaults.js index 3453b88bd6..26a3b79c6b 100644 --- a/services/notifications/config/settings.defaults.js +++ b/services/notifications/config/settings.defaults.js @@ -1,3 +1,8 @@ +const stream = require('node:stream') + +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) + module.exports = { internal: { notifications: { diff --git a/services/project-history/config/settings.defaults.cjs b/services/project-history/config/settings.defaults.cjs index 9e5a39868a..ce92fc1cf2 100644 --- a/services/project-history/config/settings.defaults.cjs +++ b/services/project-history/config/settings.defaults.cjs @@ -1,6 +1,9 @@ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.keepAlive = false https.globalAgent.keepAlive = false diff --git a/services/real-time/config/settings.defaults.js b/services/real-time/config/settings.defaults.js index 57b0a50a42..652fdae56a 100644 --- a/services/real-time/config/settings.defaults.js +++ b/services/real-time/config/settings.defaults.js @@ -1,6 +1,10 @@ /* eslint-disable camelcase */ const http = require('node:http') const https = require('node:https') +const stream = require('node:stream') + +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) http.globalAgent.keepAlive = false https.globalAgent.keepAlive = false diff --git a/services/web/config/settings.defaults.js b/services/web/config/settings.defaults.js index 07970fb852..9faeace655 100644 --- a/services/web/config/settings.defaults.js +++ b/services/web/config/settings.defaults.js @@ -1,6 +1,10 @@ -const Path = require('path') +const Path = require('node:path') +const stream = require('node:stream') const { merge } = require('@overleaf/settings/merge') +// TODO(24011): remove this after node 22 update +stream.setDefaultHighWaterMark(false, 64 * 1024) + let defaultFeatures, siteUrl // Make time interval config easier.