Bug report #12318
attribute table does not show all features
Status: | Closed | ||
---|---|---|---|
Priority: | High | ||
Assignee: | Jürgen Fischer | ||
Category: | Attribute table | ||
Affected QGIS version: | master | Regression?: | Yes |
Operating System: | Easy fix?: | No | |
Pull Request or Patch supplied: | No | Resolution: | fixed/implemented |
Crashes QGIS or corrupts data: | No | Copied to github as #: | 20496 |
Description
Probably due to a cache problem, the attribute table does not list all the features.
In QGIS options, use "show features visible on map" as default behaviour.
Open the table for a layer (while zoomed in, i.e. not all features are rendered on the current map).
You have the list of rendered features.
Now, choose "all features": you have still the same list.
Open the attribute layer of a geometry less table: nothing is shown (probably the same problem, since no feature is visible on map).
Affects master and 2.8
Related issues
Associated revisions
- change 'show all' action text
- add note to the window title
- also ignore mode for geometryless tables
(fixes #12318)
- change 'show all' action text
- add note to the window title
- also ignore mode for geometryless tables
(fixes #12318)
(cherry picked from commit 2a5d59e872f91de16eed73aab218aed46a71ec58)
History
#1 Updated by Jürgen Fischer over 9 years ago
that's a feature. If you use "show features visible on map" as default mode a permanent spatial filter is set to the feature request associated with the table - that filter is also visualized in the canvas (see 86d08b6). Otherwise QGIS is unusable with large tables (and that's what that default mode was originally made for).
#2 Updated by Denis Rouzaud over 9 years ago
Well, then the option "show all features" should be disabled, no?
It makes no sense to have this option if the table is not actually listing all the features.
Isn't it possible to reload properly the whole table when selecting "show all features"?
#3 Updated by Jürgen Fischer over 9 years ago
Denis Rouzaud wrote:
Well, then the option "show all features" should be disabled, no?
It makes no sense to have this option if the table is not actually listing all the features.Isn't it possible to reload properly the whole table when selecting "show all features"?
Well, "show visible features" within the attribute table still works the way it was, if you zoom in. If you zoom out it also does - but limited to the initial rectangle that you see in the canvas. And "show all features" also works like it was, just also limited to the initial window.
#4 Updated by Denis Rouzaud over 9 years ago
OK, but there's at least two remaining major problems:
- you will never be able to show the content of a geometry less table (!)
- "show all features" should be removed as it can't possibly show all features
Or at least give better feedback in the option dialog, as this behavior is quite unnatural.
#5 Updated by Denis Rouzaud over 9 years ago
- Assignee changed from Matthias Kuhn to Jürgen Fischer
#6 Updated by Jürgen Fischer over 9 years ago
- Status changed from Open to Closed
Fixed in changeset 2a5d59e872f91de16eed73aab218aed46a71ec58.
#7 Updated by andskog - over 6 years ago
- Priority changed from Severe/Regression to Low
- Description updated (diff)
While this is not an issue anymore in e.g. 2.18.4, it seems reintroduced with 3.2. Unless you enable Show Features Visible On Map when in a view extent that contains all records, panning around will only show those within the extent it was initially set.
#8 Updated by Giovanni Manghi over 6 years ago
- Resolution set to fixed/implemented
- Priority changed from Low to High
- Regression? changed from No to Yes
andskog - wrote:
While this is not an issue anymore in e.g. 2.18.4, it seems reintroduced with 3.2. Unless you enable Show Features Visible On Map when in a view extent that contains all records, panning around will only show those within the extent it was initially set.
Unless I'm not understanding the scenario I'm not able to replicate. Clean 3.2 install with osgeo4w on Windows (can't test 3.* in my Linux box at the moment).
Can you add exact steps on how replicate? thanks!
#9 Updated by Harrissou Santanna over 6 years ago
@andskog I think that's the expected behavior. Please read the tip at https://docs.qgis.org/testing/en/docs/user_manual/introduction/qgis_configuration.html#data-sources-settings (unless I also misunderstood).
#10 Updated by andskog - over 6 years ago
@ Giovanni, for the replication: In both 2.18.4 (or maybe earlier versions too, maybe since #6 above?) and 3.2 (or 3.0.3, just tested), add a point layer to a blank project and zoom in on some points somewhere. Open the attribute table and select Show Features Visible On Map, and it will show the records for the currently visible points. Pan to a completely different area with other points, and the table will still "show features visible on map" in 2.18.4, but not in 3.x, where it will show no records.
@ Harrissou, you are right, I checked the link and the tip covers the behavior.
I find it much more intuitive and useful in 2.18.4, though. Apparently previous QGIS developments did too, but not anymore?
#11 Updated by Harrissou Santanna over 6 years ago
@ Giovanni, for the replication: In both 2.18.4 (or maybe earlier versions too, maybe since #6 above?) and 3.2 (or 3.0.3, just tested), add a point layer to a blank project and zoom in on some points somewhere. Open the attribute table and select Show Features Visible On Map, and it will show the records for the currently visible points. Pan to a completely different area with other points, and the table will still "show features visible on map" in 2.18.4, but not in 3.x, where it will show no records.
If it's all to reproduce it then it sounds like a bug to me. The behavior documented in the doc is about 2.18 and the option it refers to is the one in the Settings --> Options dialog. In short:
- case 1: you set the table behavior to "Show Features Visible On Map" in global settings, then opening the attribute table limits the data to that extent wherever you goes, so if you go to another place => empty table. And this is what the tip fixes.
- case 2: you keep that global setting to "show all features" and select the "Show Features Visible On Map" in the attribute table, then it updates data as you pan the canvas.
This works in 2.18 but in master (3.3) whether you select "Show Features Visible On Map" or "show all features" does not change anything: they behave the same, aka just use the initial canvas to limit displayed data (the above case 1). Looks like we miss some functionality there.
#12 Updated by Jérôme Guélat over 6 years ago
Confirmed here with QGIS 3.2 on Windows 7...
Can someone re-open this issue?
#13 Updated by Harrissou Santanna over 6 years ago
- Related to Bug report #19468: Attribute table: show features visible on map is broken (and affects show all features, too) added