You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Mahesh <ma...@gmail.com> on 2012/01/23 14:31:56 UTC

"FineGrainedISMLocking" not allowing read while write lock is acquired.

Hello All,

We have used jackrabbit as DMS module in our product also we have used
it as DMS for JBPM workflows.  We have 3 jackrabbit cluster node and
are using file journal and file datastore.

I understand that jackrabbit only allows serialized write operation
i.e. only one thread is allowed to have write lock, this can be seen
from thread dump taken on cluster environment (i.e. at a given point
of time only one jackrabbit thread has acquired write lock and others
are waiting for write lock).  I also had observed, many threads are
waiting for read lock while one of runnable thread has acquired write
lock.

Hence I was searching for options where reads are allowed while write
lock is acquired and found ‘FineGrainedISMLocking’ as doing this job.
Still after changing ISMLocking to ‘FineGrainedISMLocking’ there are
read locks waiting. Hence I am confused and stuck.

Attached is the thread dump for "FineGrainedISMLocking" changes.

Any help would be appreciated.

Thanks
Mahesh

Re: "FineGrainedISMLocking" not allowing read while write lock is acquired.

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

On Mon, Jan 23, 2012 at 2:31 PM, Mahesh <ma...@gmail.com> wrote:
> Still after changing ISMLocking to ‘FineGrainedISMLocking’ there are
> read locks waiting. Hence I am confused and stuck.

Looks like your threads are blocked accessing version histories.
Access to the version storage is controlled by a separate read/write
lock.

BR,

Jukka Zitting