SQLite Forum

SQLite temp file is removed but still kept by java process
I believe the output of lsof in the github issue is showing a bunch of threads within the same java process, rather than separate processes. Each thread of course shares the same file descriptor table, and it appears that lsof makes no attempt to be smart here and simply repeats the details of each file descriptor for every thread.

The size column is actually "SIZE/OFF" - the fact that it's changing throughout the output might tell us that the tempfile is associated with a transaction that is still actively doing something?

Here's the lsof column header, for reference:

COMMAND     PID   TID           USER   FD      TYPE             DEVICE   SIZE/OFF                NODE NAME