SQL requests loading less at once

0 vote

avatar

Hello,


Presently RDM loads the SQL table all at once when RDM starts and when it wants to refresh the internal copy of the database, making it often slow or sometimes impossible to load. If connected through internet with a Wi-Fi, I often have difficulties to load the database. With my iPhone, the RDM application takes forever to start and often just cannot, and also returns a memory error every time I start it, with only 1600 entries in my database.


I was thinking that the SQL requests could be only with what needs to be shown, since information is organized by entries and sub-entries. No need to load sub-branches until they are actually requested.
Offline mode could be a challenge, but I think it could load in background a copy of the full database, updating the entries that the SQL requests already loaded, or keep a separate copy of the database, which I think would be better, because it could keep this database between starts of RDM and always have it handy. Presently, it often happens that RDM starts, cannot connect, do not have an offline copy,and I get stuck with an RDM without entries until I find a good internet connection.


I'm often on the road and could connect from anywhere with my laptop and iPhone to internet, then start RDM and wait for it to load a full copy of the database, which often takes a very long time of simply does not work. By diminishing the first SQL request to load only the first level of entries, it would load almost instantly, then load sub-branches as I drill down into the entries.

All Comments (4)

avatar

Thank you for the feedback.


As for loading partial data, that is exactly what the offline does. It saves a local copy of the data and the synchronizes only the changes (delta) from the server.

Furthermore, you can split your data into different "Vaults" so instead of loading 1600 sessions you could have 2 to 4 vaults with 800 to 400 sessions each. This will result in much faster to load times.

With offline, keep in mind some actions (admin actions mostly) will cause the invalidate the entire cache. This is for security reasons, when things like users/roles change we force to reload the list to make sure all is updated properly.


Lastly, the tree view (or mobile views) with the first level sessions only, we would need to investigate further. At the surface it looks simple but then when you dig down you realize things like "linked credentials" and session shortcuts (if enabled) can cause it to get complex real fast.

Best regards,

Stéfane Lavergne

avatar

Having multiple vaults would make it too difficult to manage since we are multiple users, and many directory entries from root, what logic to use to split and everyone now where the customer is? Unless I do not understand that vaults are easier to use, I do not see it fit for us.

For offline, if RDM starts for the first time since login, but connected previously, and it cannot connect to the database, it does not show anything. The offline database would need to stay somewhere between computer or session restart.

avatar




We have the same behavior - would be nice if this gets updated! A failed login (we use Azure SQL with Azure AD authentication) results in empty screen. Since we have MFA enabled i need to fill in password + do the MFA verification ; quite annoying f you want to use RdM to quickly open a session - and my authenticator app is only on my phone which is charging and not within hand-reach... .

Since i am allowed to go 14 (or 7) days offline this should also be possible when I just don't login.
Would be nice if you receive a retry / go offline choise after failed login.

avatar

I looks like there might be an issue there with SQL Azure + Azure AD. The intended behavior should prompt you to go offline in this scenario. I will investigate.