Bug report #8435
Spatialite, PostGIS layers with 8-byte primary keys don't display in Identify tool
|Affected QGIS version:||1.8.0||Regression?:||No|
|Operating System:||Windows||Easy fix?:||No|
|Pull Request or Patch supplied:||No||Resolution:||worksforme|
|Crashes QGIS or corrupts data:||No||Copied to github as #:||17204|
SQLite only has one INTEGER type for column declaration. It determines whether to store as 4, 6, or 8-byte values.
I have a view in PostGIS with BIGINT primary keys. I'm exporting to a Spatialite database table; since all keys are larger than the 4-byte limit, I assume SQLite is using 8-byte storage.
When I load the PostGIS view in QGIS, the rows show correctly in the Attribute Table.
When I load the Spatialite table in QGIS, the rows display a negative number for the primary key column.
In both cases, the Identify Features tool fails to do anything.
With Spatialite it fails silently.
With PostGIS I get a Log Message like 'feature -148753075 not found' (the actual primary key is a very large positive number)
After some digging, I found a workaround I'll try next:
Since there's a workaround, I'm picking 'low priority'.
If it's an inherent Qt limitation, maybe QGIS could raise a prompt with advice, to avoid users re-searching a known problem.