jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Francisco Carriedo Scher <fcarrie...@gmail.com>
Subject Does Jackrabbit enqueue operations?
Date Wed, 11 Apr 2012 08:27:27 GMT
Hi there,

i've got a question regarding the undercover behaviour of Jackrabbit. First
of all the scenario is:

- Jackrabbit through Webdav
- Sessions are created within beans, during instantiation and never closed
(just saved on each operation)
- Repositories (on server side, WAR apps) are eventually undeployed and
redeployed


Now, the observed behaviour is that there remain somehow pending operations
on the client side (store files, for example) that we presume were tried at
anytime in the past, but did not succeed. Now, on each  fresh new
operation, the others mentioned are tried first (as a queue) and fail and
an exception on the client side arises (and no communication with the
server side is done for sure, as we tried shutting down the repository and
the same happens).

So, in order to use fresh sessions and avoid this queue behaviour, would
suffice using the following JCR standard methods?

- isLive() to check whether the session about to be used is healthy or not.
- if it is not alive then, refresh(true) would store the pending changes
(those on the "queue" mentioned above) and set the session fresh again,
isn't it?. The same for refresh(false) but that would destroy the "queue",
isn't it???
- about the last point, better (more efficient) to discard the "dirty"
sessions and create new sessions as needed?

Finally, despite having read that opening sessions is a light process, then
reusing it seems discouraged, but after testing under a heavy load it
seemed that it was quite heavy in terms of network traffic, any comments on
this?.

Thanks in advance for your time, regards!

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message