Comments (4)
Hit it again. Odd that it hits on os.remove
. I was able to reproduce in the shell on the server. But I screwed up while debugging and lost the reference. When it happens again it's worth debugging on the server. The key format is:
'thread-question-summary-%d-%s' % (thread_id, 'en')
from python-diskcache.
This is odd:
In [23]: !ls -al /tmp/xxx-cache/000/8f/17/
total 16
drwxr-xr-x 2 grantj root 4096 Mar 23 19:55 .
drwxr-xr-x 48 grantj root 4096 Mar 27 15:12 ..
-rw-r--r-- 1 grantj root 5740 Mar 23 19:55 cdc864e3de42f9a7578953f5f0c7.val
In [24]: !ls -al /tmp/xxx-cache/000/8f/f3/
total 12
drwxr-xr-x 2 root root 4096 Mar 26 23:57 .
drwxr-xr-x 48 grantj root 4096 Mar 27 15:12 ..
-rw-r--r-- 1 root root 2732 Mar 26 23:57 c6f9cfb2aad602bb9a59db9ec183.val
Some cache values are stored as root. Not all are. Only the ones here. How does that happen?
If it now tries to delete the key at 000/8f/f3
then it raises OSError.
from python-diskcache.
Attempted fix:
sudo find /tmp/xxx-cache/ -user root -type d -exec chown grantj:root {} \;
sudo find /tmp/xxx-cache/ -user root -type f -exec chown grantj:grantj {} \;
We'll see. It's otherwise very odd. Maybe I was debugging something and running uwsgi manually as root? I'm not sure.
from python-diskcache.
Error happened again. I think it may be the crontab. Some management commands are run under root. I very much doubt this is a DiskCache bug.
from python-diskcache.
Related Issues (20)
- High memory usage with multiple threads HOT 3
- [Bug] Fetching an item while writing the item into Cache HOT 4
- "unable to open database file" with Python 3.11 and PySide6 threads HOT 9
- Mark the distributed package as typed HOT 1
- Long-lived cache management HOT 2
- PR for fork deadlock HOT 1
- Can this awasome add the range selection Feature? HOT 2
- PicklingError: logger cannot be pickled HOT 6
- Q: Config for in-memory shared cache HOT 8
- Use local OS' path separator HOT 3
- Cannot change JSONDisk compression level HOT 2
- Memoize key isn't always invertible
- support pandas.DataFrame in cache.memoize()
- Protect Against Repeated KeyboardInterrupt Signals HOT 1
- Error during reset
- Custom serializer cannot return "None"
- Bug with pandas 2.0
- Retrieve cached file path instead of bytes HOT 1
- Comparison with RocksDict HOT 3
- ImportError: DLL load failed while importing _sqlite3: The specified module could not be found.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-diskcache.