Page 1 of 1

Table refresh isn't working

PostPosted: Wed Jul 25, 2012 9:41 pm
by codebling
Have a table open in DBeaver, then add a row from outside DBeaver. In Database Navigator, bring up the context menu for the table and choose refresh. The new row isn't visible unless the database connection is re-established (even closing table and reopening does not work).

Re: Table refresh isn't working

PostPosted: Thu Jul 26, 2012 7:49 am
by Serge
I think you are working in transactional mode. In this case DBeaver holds transaction open until you manually commit or rollback it.
Until you commit or rollback your transaction you won't see any changes made by other users/clients (actually it depends on transaction isolation level but in most usual cases, e.g. in Oracle by default - it works this way).
So, you need to perform commit/rollback (these actions accessible from main toolbar or main menu). Or you may work in auto-commit mode (default mode in DBeaver) - mode switch also accessible from tollbar/main menu.
Also reconnect performs rollback operation.

Re: Table refresh isn't working

PostPosted: Thu Jul 26, 2012 7:12 pm
by codebling
Ok, a couple of things here. I was trying to refresh the table data view by refreshing using the context menu refresh button for the table in the Database Navigator. But I think this is maybe just refreshing the Database Navigator data for all of the nodes under the table in the Navigator (or the whole Navigator view? Not sure..). It's ok if this is the behaviour, it's just not what I expected. The refresh button on the toolbar will also only refresh the Navigator if this is where the focus is. If the focus is on the table data, then the toolbar refresh button will refresh the table data, but this depends on the transactional mode, as you have mentioned. For 'read committed', contents are always refreshed. For 'repeatable read', contents are only refreshed if there has been a commit or rollback. This makes sense, though conceptually it seems weird that I have a commit button when I have only been doing 'SELECT' statements.

So I guess one possibility would be if both the refresh button in the table context menu and the refresh button on the toolbar refreshed both the table view and the Navigator view.

Re: Table refresh isn't working

PostPosted: Fri Aug 03, 2012 7:42 am
by Serge
Actually refresh worked this way in one of older versions.
Unfortunatelly it was incovinient - in huge databases DB navigator refresh may took a lot of time and if user wants to refresh just a table content he had to wait until all database tree refreshed. From the other hand some complex views works very slow and simple SELECT * FROM may take a few minutes while database structure is not so complex.
So we decided to separate metadata and data refresh.
Probably we can make current UI a little bit better (more obvious) but in fact I don't know how :(

Re: Table refresh isn't working

PostPosted: Wed Aug 08, 2012 10:06 pm
by codebling

Re: Table refresh isn't working

PostPosted: Fri Aug 10, 2012 8:29 am
by Serge
Hmm. Probably you are right.
At least refreshing table content when single table structure was refreshed sounds logical :)
Problem is that navigator refresh is a very common function which doesn't actually care what kind of object it refreshes. E.g. when you refresh schema it means relead of entire schema structure.
I'll meditate a little more on this issue..