Please sign in to comment.
[mssql][needs-docs] Add connection setting to ignore invalid geometry…
… handling Sets whether the connection should skip all handling of records with invalid geometry, which are slow and costly. This speeds up the provider, however, if any invalid geometries are present in a table then the result is unpredictable and may include missing records. Only check this option if you are certain that all geometries present in the database are valid, and any newly added geometries or tables will also be valid! Why would we want this? Well, SQL Server invalid geometry handling is AWEFUL. A seriously lame, data mangling and corrupting piece of s***. Use Postgres instead. But if you can't, then you can at least choose to use your layers at full speed, if you can take the responsibility that a SINGLE invalid geometry hiding somewhere in the table will result in a whole bunch of missing (valid) features. SQL server is at fault here, not us. There's nothing we (or GDAL, or MapServer, or GeoServer, or anyone else) can do to fix this. Suffice to say, this option is off by default, as we're better to have a slow provider which actually shows all features. Fixes #15752 Rant over
- Loading branch information
Showing with 157 additions and 36 deletions.
- +12 −0 src/providers/mssql/qgsmssqlconnection.cpp
- +36 −0 src/providers/mssql/qgsmssqlconnection.h
- +25 −14 src/providers/mssql/qgsmssqldataitems.cpp
- +7 −4 src/providers/mssql/qgsmssqldataitems.h
- +6 −1 src/providers/mssql/qgsmssqlfeatureiterator.cpp
- +3 −0 src/providers/mssql/qgsmssqlfeatureiterator.h
- +2 −0 src/providers/mssql/qgsmssqlnewconnection.cpp
- +22 −3 src/providers/mssql/qgsmssqlprovider.cpp
- +2 −0 src/providers/mssql/qgsmssqlprovider.h
- +6 −3 src/providers/mssql/qgsmssqlsourceselect.cpp
- +3 −1 src/providers/mssql/qgsmssqltablemodel.cpp
- +1 −1 src/providers/mssql/qgsmssqltablemodel.h
- +32 −9 src/ui/qgsmssqlnewconnectionbase.ui
Oops, something went wrong.