Skip to content

AttributeError: 'DataArray' object has no attribute 'values' #124

Description

@chuckwondo

When hitting /WebMercatorQuad/map.html?backend=xarray&concept_id=C3294057315-ASF&datetime=2025-11-03T00:00:00Z&variable=displacement&colormap_name=terrain&rescale=-0.1,0.05, I noticed the following error appear in the logs.

When I zoom in close enough to the Santa Cruz, CA area to see some tiles, it seems okey, but when I then zoom out just a bit, that seems to trigger this error.

tiler-cmr  | INFO:     192.168.65.1:21242 - "GET /tiles/WebMercatorQuad/8/40/100%401x?backend=xarray&concept_id=C3294057315-ASF&datetime=2025-11-03T00%3A00%3A00Z&variable=displacement&colormap_name=terrain&rescale=-0.1%2C0.05 HTTP/1.1" 500 Internal Server Error
tiler-cmr  | ERROR:    Exception in ASGI application
tiler-cmr  | Traceback (most recent call last):
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/uvicorn/protocols/http/h11_impl.py", line 403, in run_asgi
tiler-cmr  |     result = await app(  # type: ignore[func-returns-value]
tiler-cmr  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
tiler-cmr  |     return await self.app(scope, receive, send)
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/applications.py", line 1135, in __call__
tiler-cmr  |     await super().__call__(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/applications.py", line 107, in __call__
tiler-cmr  |     await self.middleware_stack(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/middleware/errors.py", line 186, in __call__
tiler-cmr  |     raise exc
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/middleware/errors.py", line 164, in __call__
tiler-cmr  |     await self.app(scope, receive, _send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/titiler/core/middleware.py", line 153, in __call__
tiler-cmr  |     raise exception
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/titiler/core/middleware.py", line 139, in __call__
tiler-cmr  |     await self.app(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/titiler/core/middleware.py", line 57, in __call__
tiler-cmr  |     await self.app(scope, receive, send_wrapper)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/middleware/cors.py", line 85, in __call__
tiler-cmr  |     await self.app(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
tiler-cmr  |     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
tiler-cmr  |     raise exc
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
tiler-cmr  |     await app(scope, receive, sender)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
tiler-cmr  |     await self.app(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/routing.py", line 716, in __call__
tiler-cmr  |     await self.middleware_stack(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/routing.py", line 736, in app
tiler-cmr  |     await route.handle(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/routing.py", line 290, in handle
tiler-cmr  |     await self.app(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 115, in app
tiler-cmr  |     await wrap_app_handling_exceptions(app, request)(scope, receive, send)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
tiler-cmr  |     raise exc
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
tiler-cmr  |     await app(scope, receive, sender)
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 101, in app
tiler-cmr  |     response = await f(request)
tiler-cmr  |                ^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 355, in app
tiler-cmr  |     raw_response = await run_endpoint_function(
tiler-cmr  |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 245, in run_endpoint_function
tiler-cmr  |     return await run_in_threadpool(dependant.call, **values)
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/starlette/concurrency.py", line 32, in run_in_threadpool
tiler-cmr  |     return await anyio.to_thread.run_sync(func)
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/anyio/to_thread.py", line 56, in run_sync
tiler-cmr  |     return await get_async_backend().run_sync_in_worker_thread(
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 2441, in run_sync_in_worker_thread
tiler-cmr  |     return await future
tiler-cmr  |            ^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 943, in run
tiler-cmr  |     result = context.run(func, *args)
tiler-cmr  |              ^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/titiler/cmr/factory.py", line 606, in tiles_endpoint
tiler-cmr  |     image, _ = src_dst.tile(
tiler-cmr  |                ^^^^^^^^^^^^^
tiler-cmr  |   File "/app/titiler/cmr/backend.py", line 360, in tile
tiler-cmr  |     return mosaic_reader(mosaic_assets, _reader, tile_x, tile_y, tile_z, **kwargs)
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/rio_tiler/mosaic/reader.py", line 89, in mosaic_reader
tiler-cmr  |     for img, asset in filter_tasks(
tiler-cmr  |                       ^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/rio_tiler/tasks.py", line 34, in filter_tasks
tiler-cmr  |     yield future.result(), asset
tiler-cmr  |           ^^^^^^^^^^^^^^^
tiler-cmr  |   File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 449, in result
tiler-cmr  |     return self.__get_result()
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/usr/local/lib/python3.12/concurrent/futures/_base.py", line 401, in __get_result
tiler-cmr  |     raise self._exception
tiler-cmr  |   File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run
tiler-cmr  |     result = self.fn(*self.args, **self.kwargs)
tiler-cmr  |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/titiler/cmr/backend.py", line 344, in _reader
tiler-cmr  |     return src_dst.tile(x, y, z, **kwargs)
tiler-cmr  |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/rio_tiler/io/xarray.py", line 285, in tile
tiler-cmr  |     da = da.rio.reproject(
tiler-cmr  |          ^^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/rioxarray/raster_array.py", line 471, in reproject
tiler-cmr  |     source=self._obj.values,
tiler-cmr  |            ^^^^^^^^^^^^^^^^
tiler-cmr  |   File "/app/.venv/lib/python3.12/site-packages/xarray/core/common.py", line 300, in __getattr__
tiler-cmr  |     raise AttributeError(
tiler-cmr  | AttributeError: 'DataArray' object has no attribute 'values'

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Fields

    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