-
Notifications
You must be signed in to change notification settings - Fork 97
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
qlc error - max limit cache eviction fails for no cwd write permissions #329
Comments
@aerosol sure thing, want to PR it? Happy to include and get a patch out. I do want to ask though, because I don't think I fully understand how it was silently failing. The assumption is that this is the block failing: https://github.com/whitfin/cachex/blob/main/lib/cachex/policy/lrw.ex#L141-L145 This is then simply passed through to QLC again: https://github.com/whitfin/cachex/blob/main/lib/cachex/policy/lrw.ex#L181 So is QLC accepting an error as an input and not logging anything? Or is the comprehension masking the error here? Just want to clarify how it's possible this is failing silently, because at a glance it looks reasonable? Edit: note to self and future readers that this affects the cache max limit eviction, not general eviction. |
Possibly, given enough capacity, will keep you posted.
Ah yes, apologies for imprecise wording - it's not completely silent, in the sense a a one-off mismatch error happens in
Thanks, I'll update the ticket title. |
Awesome, thank you for the clarification - no worries if you're too busy to PR it, I can probably carve out some time tonight for this. I've been trying to get a reproduction case but it's a little awkward, I guess I have to pre-package an app with Cachex to test it. I haven't yet been able to make the Edit: As a quick patch it can be changed to just defer to |
qlc
uses the filesystem to store cursor information.The result of
qlc
calls is discarded by Cachex, therefore it's possible to observe the following error logged - in case the current working directory is not writeable upon cursor/batch erase:Resulting with a silent failure of cache eviction.
I think the preferable approach would be to allow overriding qlc's
{tmpdir, TempDirectory}
configuration as per https://www.erlang.org/doc/man/qlc#common-options.The text was updated successfully, but these errors were encountered: