tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/54504: -9/-current WAPBL panic: current transaction too big to flush



> On Aug 29, 2019, at 2:00 AM, kardel%netbsd.org@localhost wrote:
> 
> 	Workround (presumably): don't use WAPBL.
> 	Fix: Change WAPBL logic to allow truncation/deletion of big files aka avoid running into transaction size limitations.

WAPBL is going to need some help with this -- but in all likelihood, the WAPBL-using file system is going to have to participate, as well; i.e. it's not just changes to WAPBL in order to solve this problem.

The way some other file systems that I'm familiar with deal with this situation is to move the file (or the file's extents / blocks) into a "purgatory" (essentially, a hidden directory within the file system) -- from the perspective of the original file, the operation is complete and the file system consistent.  Then, a background task iterates on items in the purgatory, operating in chunks that will fit within the transaction size limitations.

This sometimes means that space isn't freed immediately, but it works pretty well in principle, and you can always add an escape valve that boosts the priority of the purgatory task and blocks while it does its work if you are desperate for space.

-- thorpej



Home | Main Index | Thread Index | Old Index