-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
Looks like the expensive operation is a a call to WooFOpen()/WooFFree(). Caching open woofs, however, is problematic because the woof can change while the woof is cached. Only WooFCreate() can rewrite a woof and it keeps the woof state (e.g. element size and history size) in its persistent state . Reopening the woof on each use ensures that the current state is used in what ever process or container the woof is being accessed but then a rewrite causes inconsistency.
Possible fix is to delete the woof in the create if it exists. Then the cachers would cache the creation time and check to see if the creation time has changed before using a woof. Calling stat() should be faster than calling WooFOpen()/WooFClose().
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels