Kernel failed - malloc.c

I’m running pyterrier

result = pt.Experiment(
    retr_systems=[df_run_1_pt],
    topics=df_run_1_topics,
    qrels=df_run_1_qrels,
    eval_metrics=["map", "ndcg"],
)

The same code worked locally in my Jupyter notebook, but on the Datalore server it crashed the kernel.

The error from the agent’s docker container is:

#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f5d8c57e04a, pid=228, tid=228
#
# JRE version: OpenJDK Runtime Environment (17.0.11+9) (build 17.0.11+9-Ubuntu-122.04.1)
# Java VM: OpenJDK 64-Bit Server VM (17.0.11+9-Ubuntu-122.04.1, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
python: malloc.c:4302: _int_malloc: Assertion `(unsigned long) (size) >= (unsigned long) (nb)' failed.
# C  [libc.so.6+0x1a104a]09:48:31.509 ERROR [evaluator-worker] j.d.a.e.s.i.j.JupyterModeComputation     Kernel failed
jetbrains.datalore.agent.evaluator.server.impl.jupyter.JupyterModeComputation$KernelDiedException: null
	at jetbrains.datalore.agent.evaluator.server.impl.jupyter.JupyterModeComputation.a(JupyterModeComputation.kt:9)
	at jetbrains.datalore.agent.evaluator.server.impl.jupyter.JupyterModeComputation.access$processQueuedRequest(JupyterModeComputation.kt:28)
	at jetbrains.datalore.agent.evaluator.server.impl.jupyter.JupyterModeComputation$processQueuedRequest$1.invokeSuspend(JupyterModeComputation.kt)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
	at kotlinx.coroutines.internal.ScopeCoroutine.afterResume(Scopes.kt:29)
	at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:99)
	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:840)

Any idea?