On 13/06/12 18:16, Simon Helsen wrote:
I have to correct my statement below, I was misreading my own numbers.
The overall write time was about 3 times slower, not just 70%. This is
comparing the latest build, once with and once without transactions
(single user). The numbers (40%) I mentioned before came from 25
concurrent users on a build using transactions from May 15 compared to a
build using transactions from last weekend. That is not quite the same
kind of comparison of course. However, I do recall (I don't have that on
paper) that my own test suite with the May 15 build was running at a
comparable speed whether I was using transactions or not. So I dare to
conclude that write transactions are now considerable more expensive
than around May 15

Is there some way we can turn this into a publicly usable example?

The recent changes to fix problems (JENA-250, JENA-252) might change the concurrency but the changes also added a potential file system sync the dataset when transitioning at first use transactionally. Depending on how you use StoreConenction.release, that might have an effect but in normal use it's not supposed to (and also syncs should only go to the OS if they are needed as components keep a flag as to whether a raw update has been done.

I'm a little surprised that tx and non-tx were the same speed in the first place.

> by lock contention on the writes

For clarity:
TDB does not use 2-phase locking - it uses a write-behind log.
It does use java locks to protect key datastructures.

        Andy

Reply via email to