Bug report #135
Qgis slow to show the attribute table with lots of rows
|Affected QGIS version:||Regression?:||No|
|Operating System:||All||Easy fix?:||No|
|Pull Request or Patch supplied:||Resolution:||fixed|
|Crashes QGIS or corrupts data:||Copied to github as #:||10194|
Qgis is slow to show the attribute table when there are lots of rows. Improvements can probably be made in the vector provider code with regard to retrieving geometry attributes, particularily for postgres.
#1 Updated by Brendan Morley - about 15 years ago
As part of my changes to my working copy of the HEAD version, I have made a change to the way the attribute table loads.
If there is no selection on the active layer when the table is loaded, the full table is loaded. If there is a selection, only those selected rows are loaded.
This improvement may be useful until we can get a full MVC model going.
#2 Updated by stephan-holl-intevation-de - over 14 years ago
is this improvement already included in current trunk of QGIS? I would like to see this included soon since there are some persons having laaaaarge datasets living in geodatabases. This patch would certainly make it at least possible to work with attribute data on large datasets.
Are there any plans to implement this in the near future? Thanks for you comments.
#3 Updated by Martin Dobias over 14 years ago
There's no such improvement yet... attribute table needs to be redesigned to use Qt model/view architecture and that's quite a lot work. This redesign should ensure that only currently displayed attributes will be fetched from data source instead of loading everything when table gets opened.
I agree that this is important for any real usage of the table, but I don't know when/who will implement this...
#4 Updated by stephan-holl-intevation-de - over 14 years ago
I interpreted the first comment from morb_au in that way, that his local copy of HEAD (probably outdated now) contains the described behaviour implemented. It would be nice to have a patch available for the meantime (as a workaround), so that large tables are manageable.
You are right, it should implemented in the future following the MVC-model.