Skip to content

stable_only=True does not reject HTTP/fsspec sources via direct read_geotiff_gpu() #2830

@brendancol

Description

@brendancol

Follow-up to #2821 / #2826.

#2821 fixed the eager and dask non-VRT read paths so stable_only=True rejects advanced-tier HTTP/fsspec sources. The fix gates remote sources in open_geotiff (ahead of the eager/dask/GPU dispatch) and adds a direct check in read_geotiff_dask.

The GPU direct entry point read_geotiff_gpu (xrspatial/geotiff/_backends/gpu.py) accepts stable_only but does not gate remote sources on its own. A caller who hits the public open_geotiff(..., gpu=True) path is covered by the shared gate, but read_geotiff_gpu(http_or_fsspec_url, stable_only=True) called directly still slips through, the same gap #2821 closed for the direct dask entry point.

Expected fix: call _validate_stable_only_remote (added in #2826) at the top of read_geotiff_gpu for parity with read_geotiff_dask. Add a GPU-marked test once GPU CI can run it.

Split out from #2821 because it is GPU-only and was out of scope for the eager + dask finding.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workinggeotiffGeoTIFF modulegpuCuPy / CUDA GPU supportinput-validationInput validation and error messagesseverity:highSweep finding: HIGH

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions