fuenfundachtzig
fuenfundachtzigβ€’9mo ago

Table crashes marimo

When I try this line mo.ui.table([1, 2]) the server (0.3.8) crashes with "Task exception was never retrieved". Is that only me or should I open an issue for that?
17 Replies
Akshay
Akshayβ€’9mo ago
Oh, that’s no good. An issue would be appreciated!
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
GitHub
Table crashes marimo Β· Issue #1056 Β· marimo-team/marimo
Describe the bug When I try this line mo.ui.table([1, 2]) the server (0.3.8) crashes with "Task exception was never retrieved". Environment { "marimo": "0.3.8", "...
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
I added more debug info but it doesn't seem very useful. The kernel is just a separate Python process that is running in the background? Is it possible to make it visible what happens there?
Akshay
Akshayβ€’9mo ago
Yes, it's just another process. We have some debug logging, but perhaps it's not very useful. You can also step into the code with a breakpoint set in the marimo cell (add breakpoint() to the line before mo.ui.table) and see if you can find the line at which it crashes
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
Yes, I tried to debug it already I think but to no avail. Today, however, I found this: "Fatal Python error: Illegal instruction".
Akshay
Akshayβ€’9mo ago
oh interesting ... in _forward_os_stream ... what operating system are you using?
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
Ubuntu 20.04.6 LTS (and Python 3.8.10)
Akshay
Akshayβ€’9mo ago
Okay, so very standard. Can you run pytest -v so we can see which test in test_table fails? Though it looks like it might just be the first one
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
It fails on one of the 2nd block of tests: tests/_plugins/ui/_impl/tables/test_polars_table.py::TestPolarsTableManagerFactory::test_get_row_headers Fatal Python error: Illegal instruction
Akshay
Akshayβ€’9mo ago
One more q, what version of polars are you running?
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
Huh. So it's not Marimo πŸ™‚
Python 3.8.10 (default, Nov 22 2023, 10:22:35)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import polars
Illegal instruction (core dumped)
Python 3.8.10 (default, Nov 22 2023, 10:22:35)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import polars
Illegal instruction (core dumped)
Akshay
Akshayβ€’9mo ago
ah!
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
I'll look into this tomorrow to see whether my polars installation is broken (it's a venv, so wouldn't know why, but let's see...)
Akshay
Akshayβ€’9mo ago
Quick google serach shows that many people have problems with the built polars distributions, so you wouldn't be alone. Thanks for looking into this! Glad that it wasn't a problem with marimo in the end πŸ˜…
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
Well, in the end it means that marimo won't really work on (old) machines without AVX2 support due to its dependence on polars.
Akshay
Akshayβ€’9mo ago
Polars is an optional dependency. It gets pulled in with you install with the Makefile, for testing. But regular users don't need to have Polars installed.
fuenfundachtzig
fuenfundachtzigOPβ€’9mo ago
Ah, that's good, I didn't know that. Case closed then I guess πŸ™‚