Skip to content

aspect(method='geodesic') memory guard is eager-only too #2783

@brendancol

Description

@brendancol

Follow-up from #2765 / PR #2779, which made the geodesic slope memory guard backend-aware.

aspect.py:427 runs the same eager-only guard:

rows, cols = agg.shape[-2], agg.shape[-1]
_check_geodesic_memory(rows, cols, func_name='aspect')

The dask geodesic aspect backend streams chunk by chunk, same as slope, so sizing the guard against the full raster rejects large-but-chunked rasters that would run fine. The fix mirrors the slope change: call _check_geodesic_memory_backend_aware(agg, func_name='aspect') instead, and add the equivalent dask guard tests.

Kept out of #2779 to keep that PR scoped to slope.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backend-coverageAdding missing dask/cupy/dask+cupy backend supportbugSomething isn't workingdaskDask backend / chunked arraysoomOut-of-memory risk with large datasets

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions