Robomongo: Robo3T fails to close connections to Mongo Atlas replica set eventually maxxing out

Created on 26 Jul 2019  ·  12Comments  ·  Source: Studio3T/robomongo

Robo3T Version: 1.3.1
OS: macOS Mojave 10.14.3

Issue:
Number of open connections steadily rises using Robo3T connected to a Mongo Atlas replica set.
Under normal usage the number of connections sits around 35 - 40 for our current workload. When using Robo3T that number steadily increases due to the connections not being closed. This results in the current available connection cap being reached with an impact on other services being unable to connect to the replica set.

This was verified by looking at the log files of the cluster and making a note of the current open connections.
db logs show hundreds of Robo3T connections being opened.. with no associated closing state

NETWORK  [listener] connection accepted from __redacted__:53747 #12915 (345 connections now open)
NETWORK  [conn12915] received client metadata from __redacted__:53747 conn12915: { application: { name: "robo3t" }, driver: { name: "MongoDB Internal Client", version: "4.0.5-17-gd808df2233" }, os: { type: "Windows", name: "Microsoft Windows 8", architecture: "x86_64", version: "6.2 (build 9200)" } }
ACCESS   [conn12915] Successfully authenticated as principal __redacted__ on admin from client __redacted__:53747

Current Solution:
Stop using Robo3T :( and it all returns back to normal

Screen Shot 2019-07-26 at 10 18 24 am

Has anyone else had this problem?

critical-connectivity

Most helpful comment

@Memogcia you can remove the IP from the whitelist (where robo connections are coming from) and add back after a few moments. This will clean up old open connections.

All 12 comments

Yes, I have the same problem. It never closes opened connections. It's so ridiculous.

An eye opener

As a result of this discovery we have now switched to Mongo Compass - which works without opening a multitude of connections - but feels stunted in features compared to Robo3T.... swings and roundabouts I guess.

As a result of this discovery we have now switched to Mongo Compass - which works without opening a multitude of connections - but feels stunted in features compared to Robo3T.... swings and roundabouts I guess.

Well said sir @dave-digital .... i think that's the only option unless we go for the paid version of Studio 3T, I think Compass paid version is also good as well....

Is there a way to close the connections on a free tier?

@Memogcia you can remove the IP from the whitelist (where robo connections are coming from) and add back after a few moments. This will clean up old open connections.

Thanks!!! it works!

@Bekt I tried that once and worked but now it happened again, this time remove the IP from the whitelist is not working

When will this issue be fixed?

any news on this issue?

This seems to be the result of Robo3T being a shell centric app, each tab opening a new connection (and 2 or more depending on connection settings), so on really low tiers this can very fast exhaust the limit.

For now a workaround should be to keeping the number of open tabs to a necessary minimum, take in account that if you reach the maximum and your production app is trying to create a new connection it will fail and your users will get a bad experience.

A real solution will be to share the mongo connection between tabs (except for shell tabs), it's unreasonable to have 10 open connections just to query five collections.

Hi @dave-digital, all. Thanks for reporting the problem with details and sorry for answering so late.
We have never seen this problem during development or QA. We did a quick test on macOS Mojave with Mongo Atlas (4.2) but connections were closed as we closed tabs and finally the program.

Can anyone help how to reproduce this problem?

image

Was this page helpful?
0 / 5 - 0 ratings