[gdal-dev] How to handle private (system) tables which a caller may explicitly want

Even Rouault even.rouault at spatialys.com
Mon Aug 23 01:45:53 PDT 2021


Hi Nyall,

> On Sun, 22 Aug 2021 at 18:59, Even Rouault <even.rouault at spatialys.com> wrote:
>> Hi Nyall,
>>
>> There are several possible approaches to this:
>>
>> - have a LIST_ALL_TABLES=YES open option. A few drivers expose it, like
>> PG, SQLite and GPKG. But the intent here was more for drivers that use
>> by default the content of a geometry_columns table to establish their
>> list of layers. With LIST_ALL_TABLES=YES they expose also other
>> non-spatial tables. But if that includes "system" tables or not is
>> driver dependent. I see the GPKG driver still hides system tables,
>> whereas SQLite really shows all tables, and PG exposes for example
>> raster tables (but not pg_XXXX tables, but I don't think they are actual
>> tables, so that might explain it)
>>
> I like this approach. Would you be accepting of a new API "bool
> GDALDataset::IsLayerPrivate(int iLayer)" to accompany this? It would
> return true for any layers which are deemed as private/system/internal
> details only.

Sounds good to me

Even

-- 

http://www.spatialys.com
My software is free, but my time generally not.



More information about the gdal-dev mailing list