sb-ext:with-timeout and recycle kernel cache

3 views
Skip to first unread message

Qian Yun

unread,
6:21 AM (11 hours ago) 6:21 AM
to fricas-devel
I hit this strange situation when I was testing
recycle-kernel-cache patch with a long running session:

to compute 10000 integrals in a row.

I use TimeoutPackage package with uses sb-ext:with-timeout,
to avoid stuck at an integral for too long.

The strange situation is, after over 9000 integrals computed,
the session is filled with errors complaining
"WEAK POINTER is not of type BOOT::SPAD_KERNEL".

I guess that in the middle of recycling kernel cache,
timeout is reached, and kernel cache is left at inconsistent
state. (the array contains weak pointer instead of kernel.)

The SBCL documentation does say that sb-ext:with-timeout
can be very dangerous.

This is also a remainder that sb-ext:with-timeout can cause
inconsistency elsewhere in the code base silently.

I'll try if WITHOUT-INTERRUPTS can help in this case.

- Qian

Waldek Hebisch

unread,
10:44 AM (7 hours ago) 10:44 AM
to fricas...@googlegroups.com
Or maybe do what I suggested: keep weak pointers to kernels all
the time.

--
Waldek Hebisch
Reply all
Reply to author
Forward
0 new messages