More cleanup, and a new problem. Notable:
Object.serialize_header(): Stopped stuffing the version string into this notion of "a header". Couldn't see any reason for it, and it was surprising. ClientCache.invalidate(): Added some asserts to clarify intended preconditions. Alas, my guess that it was intended that the passed-in tid always be greater than the current tid turned out to trigger errors. This gets complicated, and hasn't been resolved yet. The problem is that the passed-in tid can be (in fact, always is) None during cache verification. The code here *really* doesn't seem to be expecting that, and the on-disk cache file is clearly left in a wrong state (if we repopulated the cache from the disk file, the object would not look invalidated any more, it would look current). Dumped in a giant stack trace so I don't forget this; sent email to Jeremy asking if he recalls what the real intent was.
Showing
Please register or sign in to comment