-
Notifications
You must be signed in to change notification settings - Fork 12.4k
Description
Hi team
Description:
Hi team,
I have a mongoDB Atlas cluster, and I want to connect to it using an IAM role. Everything on the MongoDB Atlas side is configured, and using mongosh I can indeed connect using IAM.
HOWEVER, rocketchat uses mongo package 6.1.0 and the aws_temporary_credentials.ts which should handle things when the provider import fails, well... IMHO they should stop just not try to do anything with AWS anymore.
In a nutshell, tries to capture a VERY limited set of sources for credentials, and for container, does it so poorly, it's incomplete.
Steps to reproduce:
- Configure MongoDB Atlas to accept IAM auth
- Configure the MONGO_URL to use the connection string provided.
- Have the
AWS_CONTAINER_CREDENTIALS_FULL_URIandAWS_CONTAINER_AUTHORIZATION_TOKEN_FILEset and functional - Start rocketchat.
Expected behavior:
Rocketchat mongodb driver uses the default aws credentials chain
Actual behavior:
See logs.
I have been able to demonstrate that the credentials endpoint is fully functional with the "default" SDK client config and that the credentials are served and valid.
Server Setup Information:
- Version of Rocket.Chat Server: latest (from docker)
- License Type: Free/Community
- Number of Users: 4 (evaluating still)
- Operating System: Linux (using the docker image though)
- Deployment Method: docker
- Number of Running Instances: 1
- DB Replicaset Oplog:
- NodeJS Version: 22+ (as per docker image)
- MongoDB Version: MongoDB Atlas (8.0.15)
Additional context
Using credproxy to serve the credentials. Node is one of the tested clients and it works out of the box without faffing with it.
Relevant logs:
rocketchat-1 | MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 | PoolClearedError [MongoPoolClearedError]: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"
rocketchat-1 | at ConnectionPool.processWaitQueue (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:762:65)
rocketchat-1 | at ConnectionPool.clear (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/cmap/connection_pool.ts:493:10)
rocketchat-1 | at updateServers (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:842:21)
rocketchat-1 | at Topology.serverUpdateHandler (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:700:5)
rocketchat-1 | at Server.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/topology.ts:818:66)
rocketchat-1 | at Server.emit (node:events:518:28)
rocketchat-1 | at markServerUnknown (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:501:10)
rocketchat-1 | at Server.handleError (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:381:9)
rocketchat-1 | at Server.command (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/sdam/server.ts:320:64)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at CreateIndexesOperation.executeCommand (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/command.ts:169:12)
rocketchat-1 | at CreateIndexesOperation.execute (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/indexes.ts:319:5)
rocketchat-1 | at tryOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:263:14)
rocketchat-1 | at executeOperation (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/operations/execute_operation.ts:109:12)
rocketchat-1 | at Collection.createIndex (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/collection.ts:585:21)
rocketchat-1 | at MongoConnection.createIndexAsync (packages/mongo/mongo_connection.js:506:3) {
rocketchat-1 | address: 'something.mongodb.net:27017',
rocketchat-1 | [Symbol(errorLabels)]: Set(1) { 'PoolRequstedRetry' },
rocketchat-1 | [cause]: MongoNetworkTimeoutError: Network request to http://169.254.169.254/latest/api/token timed out after undefined ms
rocketchat-1 | at ClientRequest.<anonymous> (/app/bundle/programs/server/npm/node_modules/meteor/npm-mongo/node_modules/mongodb/src/utils.ts:1246:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at ClientRequest.emit (node:events:518:28)
rocketchat-1 | at Socket.emitRequestTimeout (node:_http_client:863:9)
rocketchat-1 | at Object.onceWrapper (node:events:632:28)
rocketchat-1 | at Socket.emit (node:events:530:35)
rocketchat-1 | at Socket._onTimeout (node:net:609:8)
rocketchat-1 | at listOnTimeout (node:internal/timers:588:17)
rocketchat-1 | at processTimers (node:internal/timers:523:7) {
rocketchat-1 | connectionGeneration: 0,
rocketchat-1 | [Symbol(errorLabels)]: Set(3) { 'HandshakeError', 'RetryableWriteError', 'ResetPool' },
rocketchat-1 | [cause]: undefined
rocketchat-1 | }
rocketchat-1 | }
rocketchat-1 |
rocketchat-1 | packages/core-runtime.js:189
rocketchat-1 | throw error;
rocketchat-1 | ^
rocketchat-1 | errorClass [Error]: [An error occurred when creating an index for collection "users: Connection pool for something
.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"]
rocketchat-1 | at Collection.createIndexAsync (packages/mongo/collection/methods_index.js:62:15)
rocketchat-1 | at processTicksAndRejections (node:internal/process/task_queues:105:5)
rocketchat-1 | at module.wrapAsync.self (packages/accounts-password/password_server.js:1342:1) {
rocketchat-1 | isClientSafe: true,
rocketchat-1 | error: 'An error occurred when creating an index for collection "users: Connection pool for something.mongodb.net:27017 was cleared because another operation failed with: "Network request to http://169.254.169.254/latest/api/token timed out after undefined ms"',
rocketchat-1 | reason: undefined,
rocketchat-1 | details: undefined,
rocketchat-1 | errorType: 'Meteor.Error'
rocketchat-1 | }
rocketchat-1 |
PS: I have manged to hack this through creating my own .ts and .js files, and forceably load them into the docker image, using the rocketchat one as source, and this then works great. So it definitely works when implemented properly.
I imagine the best course of action for you guys is upgrade the mongodb client which by the look of what's in the main branch seems to leave the job to the real SDK credentials provider.