WebDAVCache not performing as expected for S3 requests
(Total: 0.00 h)
- Status changed from New to In Progress
Debug logging indicates (*cache)pruneSessions() is not running, which causes expired sessions to get stuck in the cache forever. I'm guessing there's a situation where fs.MemorySize() deadlocks, and once that happens, pruneSessions can't continue/resume, and we effectively have no cache.
SIGABRT would produce a stack trace to confirm this and show where it's getting stuck.
Here's a debug version that will dump a stack trace and exit if cache pruning takes longer than 30s.
Here's a dev build with both the bugfix from note-5 and the watchdog / stack dump from note-4.
19192-fix-deadlock LGTM, thanks!
- Target version changed from 2022-06-22 Sprint to 2022-07-06
- Related to Story #19205: In Go services, monitor request times and record when they continue processing after client disconnects, or exceed a maximum request time added
- Target version changed from 2022-07-06 to 2022-07-20
- Target version changed from 2022-07-20 to 2022-07-06
- Status changed from In Progress to Resolved
- Category set to Keep
- Related to Bug #19368: [keep-web] [S3] slow requests caused by logUploadOrDownload added
Also available in: Atom