Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-11-07 | Fixed long standing double-free bug in the cache. | Mike Buland | |
I guess we don't delete stuff very often. | |||
2023-08-01 | Updated copyright date. | Mike Buland | |
2023-07-11 | Fixed cachebase memory leak. | Mike Buland | |
2020-10-01 | Fixed bug in CachePtr pointer dereference. | Mike Buland | |
I guess I never used it before, it wouldn't even compile, it wasn't dereferencing the returned pointer. It's not a great idea to use it, but sometimes you need it. | |||
2020-06-22 | Fixed a bad catch statement. | Mike Buland | |
2019-05-24 | Updated copyright date. | Mike Buland | |
2018-11-07 | Added convinience Key/Value typedefs to ptrs. | Mike Buland | |
2018-07-16 | Removed a little cache debugging. | Mike Buland | |
2015-08-25 | Added more lock/unlock features to the cache Lockers. That...was a weird | Mike Buland | |
sentence, but it's true. Also, oddly enough, Lockers aren't thread-safe, but they shouldn't ever have to be. Figure that one out! | |||
2015-08-24 | Added some refcount debugging. | Mike Buland | |
2015-08-16 | Thread safety update for the previous commit. I left one structure access | Mike Buland | |
unprotected, but fortunately this time I was able to use a read lock which is much lest nasty and persistant. | |||
2015-08-16 | Fixed a highly essoteric issue. The ReadWriteMutex was locked in write while | Mike Buland | |
syncing changes. That was important so that more changes wouldn't be added while we're writing, but it also meant that in a very particular circumstance where one thread was syncing changes, another was marking changes as having happened, and another locked an object that was being written because it had changes they would all deadlock. This should be fixed now. | |||
2015-07-14 | constant cache pointers can now be bound and unbound. It may seem odd, but it's | Mike Buland | |
important, they are references to constant data, weather they should be able to become bound still. | |||
2014-08-08 | The cache didn't handle syncing objects that were marked changed and then | Mike Buland | |
deleted before the sync could occur properly. They are now ignored during sync. | |||
2014-07-22 | Deferred erase now works on cache entries. You can erase a cache entry while | Mike Buland | |
it still has active references, and it will be safely cleaned up when the last reference is released. | |||
2014-03-05 | Added a method to null/clear a cache pointer, and one to see if it's set at all. | Mike Buland | |
2014-02-03 | Changed copyright to 2007-2014. | Mike Buland | |
2014-01-30 | Attempting to fix OSX compatibility, it's not 100%, but it builds and most ↵ | Mike Buland | |
things seem to work. We've also tested against LLVM. | |||
2014-01-22 | Updated the cache system. It now ensures that objects are initialized with | Mike Buland | |
cache information before they are deserialized from storage. This changed the signature of the cache loading template function, but the new function isn't harder to use, and provides the key information as well. | |||
2013-07-18 | Fixed caching changed issue. The cache now marks objects as unchanged for you | Mike Buland | |
after they are saved. It needs some more testing, but the theory is sound. | |||
2013-07-03 | Modified the Bu::CacheBase API, what was erase is eraseNow, and erase is about | Mike Buland | |
to be re-engineered to actually do a lazy erase like removing an iNode in a posix filesystem. While the file remains open it exists, but the references visible to the user on disk are gone. | |||
2013-03-25 | Corrected a pure virtual call issue while destroying caches. | Mike Buland | |
2013-03-18 | Added the has function to the new cache system. If the object identified by | Mike Buland | |
key is loaded then the query doesn't even get to the superclass. | |||
2013-03-17 | The new cache system has been broken out into it's individual headers, and is | Mike Buland | |
now ready for actual use. |