Bug #10008
Updated by Tom Clegg almost 8 years ago
h2. Background -TokenExpiryTest TokenExpiryTest in source:services/fuse/tests/test_mount.py is slow and unreliable because it relies on sleep().- (fixed) sleep(). There is signature-refreshing logic ("re-fetch collection from API server before signatures expire") in arv-mount. However: * It checks expiry times only when a file is opened. If a file is left open for a long time, reading from the file will eventually stop working. * Other programs using the Python SDK need the same auto-refresh behavior for the same reasons as arv-mount, but no facility is provided. h2. Proposed fix Fix Implement manifest-refreshing logic in the Python SDK. Reading from a file should always work: * regardless Mock time.time() instead of how much sleeping to make time passes between instantiating the Collection, opening a file, writing, and reading. * regardless of whether the collection is writable or not, and regardless of whether it is referenced by PDH or UUID. This will make the arv-mount token-refresh mechanism (added in notes 4-6 here) redundant, so that can be reverted. advance.