2011/8/1 Sanne Grinovero <sanne(a)infinispan.org>:
Hi Mircea,
what you propose has a strong impact on existing use cases.
Not having batching kills the Lucene performance, and using
transactions is not an option unless the whole state of the index can
fit in memory, which is not the use case we're targeting: I need to be
able to use both on the same Cache.
Isn't it possible to have a batching implementation which doesn't rely
on transactions, or why are you needing to add this limitation?
If not, I'll have to start thinking about a different design.. not
happy about it since we got much testing from the community and I
would consider it quite stable now, but especially the performance
tests are not something I can easily reproduce on my own as it implies
big indexes, real clusters and real world use cases.
What we could do, is implement batching in the Lucene Directory itself
( a layer above Infinispan); that could work, but then again I don't
see why this could not be generalized and provide to everyone, keeping
the change less traumatic.. I'm likely not the only user of this API.
Sorry, not sure what I was thinking: I just realized that I can't
possibly implement batching on a different layer.
So I have no way to workaround this other than re-designing some core concepts:
please allow batching without transactions.
Sanne