Added some comments.
Added seek before write in invalidate method. Without this, strange things happen on NT and solaris. (I was probably breaking a rule of thumb that says never to do a write() right after a read() even though tell() would indicate I was in the right place.) Added logic to update the cache index on an invalidate. Added a separate call to check the cache size so that we only check when a transaction is about to be written. It would be bad if we "flipped" the cache twice during a transaction, as we would have incomplete transaction data. Note that this means that we could exceed the target cache size if the data for a transaction exceeded the target size (/2).
Showing
Please register or sign in to comment