a test using naturalid would be useful -- Fabio Maulo
El 03/12/2010, a las 12:32, Aaron Boxer <[email protected]> escribió: > Thanks, will do. unit tests are a must here. > > On Fri, Dec 3, 2010 at 1:53 AM, Julian Maughan <[email protected]> > wrote: >> Please submit your work by creating a JIRA Issue (here: >> http://jira.nhforge.org) and attach a SVN patch with your changes. We would >> like to see some (unit-)tests as well, unless you think that existing tests >> offer good enough coverage. >> Regards >> Julian >> >> On Fri, Dec 3, 2010 at 1:31 PM, Aaron Boxer <[email protected]> wrote: >>> >>> Hello All, >>> >>> I've just finished a massive refactoring of the NH cache classes. The >>> biggest change is the introduction of a >>> copy-on-write cache concurrency strategy, where each session, after >>> locking an entity, performs a copy on write into >>> a local per session cache, and copies the write back into the main >>> cache after an entity has been unlocked >>> (assuming that the main cache item for this key is puttable). >>> >>> This provides true repeatable read and read committed isolation for >>> different sessions, and allows one session to access a cache key >>> after another session locks it, as opposed to forcing the first >>> session to hit the database. (Note: the copy >>> on write cache only works for versioned entites). >>> >>> The strategy uses a reader/writer lock for synchronizing access to the >>> cache (ReaderWriterLockSlim), so performance should be >>> good. (I've also converted the ReadWriteCache strategy to use a >>> reader/writer lock) >>> >>> I've updated my Redis-based cache provider to support the new copy on >>> write cache strategy, and because of how >>> Redis is designed, it is possible to remove all locks. So compared to >>> other distributed caches, performance should >>> be excellent. >>> >>> What is the best way of submitting these changes for review? >>> >>> Thanks, >>> Jorge >> >>
