marimo ui dataframe countinuously refreshing after filtering a column
Describe the bug
I have been having issue with the mo.ui.dataframe that is present across all my marimo notebooks, this issue started when i updated to the new marimo version 0.8.11 from 0.8.7 today, saw 0.8.11 having this issue so created another environment with marimo version 0.8.7 but this issue still persisted.
This was not present before updating marimo to version 0.8.11, opening any dataframe through mo.ui.dataframe and trying to filter a column makes the entire marimo notebook refresh continously.
Even after selecting some filter in a column it doesn't filter the dataframe even if the refresh stopped it gave some error that contained union not found, attached video for reference
https://github.com/user-attachments/assets/8266eb1f-a6fc-4c78-8662-aece0a394552
This is the error I got in my terminal
[W 240906 10:22:31 deps:131] Valid sessions: [] ERROR: Exception in ASGI application
- Exception Group Traceback (most recent call last): | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_utils.py", line 87, in collapse_excgroups | yield | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 190, in call | async with anyio.create_task_group() as task_group: | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/anyio/_backends/_asyncio.py", line 678, in aexit | raise BaseExceptionGroup( | exceptiongroup.ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception) +-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 412, in run_asgi | result = await app( # type: ignore[func-returns-value] | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in call | return await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/applications.py", line 123, in call | await self.middleware_stack(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/errors.py", line 186, in call | raise exc | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/errors.py", line 164, in call | await self.app(scope, receive, _send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/auth.py", line 216, in call | return await super().call(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/sessions.py", line 83, in call | await self.app(scope, receive, send_wrapper) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 189, in call | with collapse_excgroups(): | File "/home/user/miniconda3/envs/research_test/lib/python3.10/contextlib.py", line 153, in exit | self.gen.throw(typ, value, traceback) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_utils.py", line 93, in collapse_excgroups | raise exc | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 191, in call | response = await self.dispatch_func(request, call_next) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/middleware.py", line 129, in dispatch | return await call_next(request) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 165, in call_next | raise app_exc | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 151, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/authentication.py", line 48, in call | await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/cors.py", line 91, in call | await self.simple_response(scope, receive, send, request_headers=headers) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/cors.py", line 146, in simple_response | await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/middleware.py", line 101, in call | return await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 62, in call | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app | raise exc | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | await app(scope, receive, sender) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 758, in call | await self.middleware_stack(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 778, in app | await route.handle(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 487, in handle | await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 758, in call | await self.middleware_stack(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 778, in app | await route.handle(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 299, in handle | await self.app(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 79, in app | await wrap_app_handling_exceptions(app, request)(scope, receive, send) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app | raise exc | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | await app(scope, receive, sender) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 74, in app | response = await func(request) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/router.py", line 54, in wrapper_func | response = await func(request=request) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/endpoints/execution.py", line 113, in function_call | app_state.require_current_session().put_control_request(body) | File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/deps.py", line 135, in require_current_session | raise ValueError(f"Invalid session id: {session_id}") | ValueError: Invalid session id: s_c4jbwl +------------------------------------
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 412, in run_asgi result = await app( # type: ignore[func-returns-value] File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in call return await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/applications.py", line 123, in call await self.middleware_stack(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/errors.py", line 186, in call raise exc File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/errors.py", line 164, in call await self.app(scope, receive, _send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/auth.py", line 216, in call return await super().call(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/sessions.py", line 83, in call await self.app(scope, receive, send_wrapper) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 189, in call with collapse_excgroups(): File "/home/user/miniconda3/envs/research_test/lib/python3.10/contextlib.py", line 153, in exit self.gen.throw(typ, value, traceback) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_utils.py", line 93, in collapse_excgroups raise exc File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 191, in call response = await self.dispatch_func(request, call_next) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/middleware.py", line 129, in dispatch return await call_next(request) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 165, in call_next raise app_exc File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/base.py", line 151, in coro await self.app(scope, receive_or_disconnect, send_no_error) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/authentication.py", line 48, in call await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/cors.py", line 91, in call await self.simple_response(scope, receive, send, request_headers=headers) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/cors.py", line 146, in simple_response await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/middleware.py", line 101, in call return await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 62, in call await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 758, in call await self.middleware_stack(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 778, in app await route.handle(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 487, in handle await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 758, in call await self.middleware_stack(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 778, in app await route.handle(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 299, in handle await self.app(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 79, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app raise exc File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app await app(scope, receive, sender) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/starlette/routing.py", line 74, in app response = await func(request) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/router.py", line 54, in wrapper_func response = await func(request=request) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/endpoints/execution.py", line 113, in function_call app_state.require_current_session().put_control_request(body) File "/home/user/miniconda3/envs/research_test/lib/python3.10/site-packages/marimo/_server/api/deps.py", line 135, in require_current_session raise ValueError(f"Invalid session id: {session_id}") ValueError: Invalid session id: s_c4jbwl
Environment
{ "marimo": "0.8.11", "OS": "Linux", "OS Version": "3.10.0-1160.105.1.el7.x86_64", "Processor": "x86_64", "Python Version": "3.10.13", "Binaries": { "Browser": "122.0.6261.69", "Node": "--" }, "Dependencies": { "click": "8.1.7", "importlib-resources": "missing", "jedi": "0.19.1", "markdown": "3.5.2", "pygments": "2.17.2", "pymdown-extensions": "10.7", "ruff": "0.5.3", "starlette": "0.37.1", "tomlkit": "0.12.4", "typing-extensions": "4.10.0", "uvicorn": "0.27.1", "websockets": "12.0" }, "Optional Dependencies": { "pandas": "2.2.1", "pyarrow": "15.0.0" } }
Code to reproduce
No response
Can you provide code that we can use to reproduce this issue? I just tried and couldn't reproduce it.
Can you provide code that we can use to reproduce this issue? I just tried and couldn't reproduce it.
Hi Akshay, I ran the code on my other pc and it seems to be working there since I haven't updated the marimo version there (0.7.6), I think it may be an issue with my environment than with marimo will confirm after checking it.
Hi, I've checked everything from my system issues to environment issues but I don't think it is due to that, having trouble in every single one of my marimo notebooks all of them have different codes but the common thing between them all is I use mo.ui.dataframe to filter on them and whenever I try to filter them it keeps on refreshing I could see some of my cells running again and again in the code window in all my notebooks.
This all started when i updated my marimo to 0.8.11, also it did not have the green progress bar that comes in the app window(to tell number of running cells) in my earlier version and after updating to marimo version 0.8.11 and encountering the problem I reverted the marimo version to 0.8.7 but it still showed the progress bar which it did not before.
I also noted that on the side of marimo transformed dataframe when I try to apply filter it keeps on loading this all happens when i apply any filter on it and all my marimo notebooks have this same issue.
@ayushwd Hi, I'm unable to reproduce this issue. Can you provide your notebook's code?
closing due to inactivity and cannot reproduce