Monday, February 20, 2006

a bit of a gem, a bit of fun--cache is now smarter

Usage and Restrict are now only keys in the cls- table, though they are well represented in the Ark's classifier interfaces.

I've been thinking about how to cache a role's topics, which requires dependency chaining. So I've enhanced the cache package to handle interdependencies--a cachable will not now be recycled so long as another cachable dependsOn it. OK well, that's as far as I got on topics.

But I have managed to enhance the btree package. The blocks for nodes and leaves are now marked as depending on the block holding their parent node. This means that preference will generally be given to keeping blocks holding higher-level nodes and recycling blocks holding lower-level nodes and leaves. Likely only a nominal speed increase, but increasingly important as the database grows in size.

Well it was fun to do, anyway. And in the process I managed to uncover another TKS bug or two. (When testing TKS, I always drop the blockSize down to 256 bytes and the block and table cache down to 10--this really pushes TKS to its limits. In contrast things are pretty sedate, though much faster, with a 32K blocksize.)

Bill

0 Comments:

Post a Comment

<< Home