You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Andreas Hartmann <an...@apache.org> on 2006/11/17 11:01:44 UTC
Transactions with Bea WebLogic
Hi Jackrabbit community,
can Jackrabit be used to implement the following scenario?
- Bea WebLogic as application server
- Cluster, each instance has read+write access to the repository
- Transactions must be supported
I'm not quite sure how to understand the transaction support.
The persistence manager overview states that some of the
persistence managers are transactional. Can I just choose one
of them, or are there differences re. the transactional behaviour?
Do I understand it correctly that the PM has to be JDBC-based to
ensure atomic storage of changes?
OTOH, do I still need transaction support facilities of the
application server?
Which deployment model would be appropriate?
Does the model 3 apply to clusters, or would the repository
clustering be implemented in the back-end (DB cluster)?
Would it be possible to scale the repository back-end and the
application layer independently from each other?
Thank you very much in advance!
-- Andreas
Re: Transactions with Bea WebLogic
Posted by Dominique Pfister <do...@gmail.com>.
Hi Andreas,
On 11/17/06, Andreas Hartmann <an...@apache.org> wrote:
> Hi Jackrabbit community,
>
> can Jackrabit be used to implement the following scenario?
>
> - Bea WebLogic as application server
> - Cluster, each instance has read+write access to the repository
> - Transactions must be supported
Yes, Jackrabbit contains a JCA contribution that also features
deployment descriptors for BEA WebLogic. Recently, clustering support
has been added to jackrabbit, though it might not yet be feature
complete.
> I'm not quite sure how to understand the transaction support.
> The persistence manager overview states that some of the
> persistence managers are transactional. Can I just choose one
> of them, or are there differences re. the transactional behavior?
Transactions inside Jackrabbit are handled by buffering changes to an
internal change log. When a transaction is committed, all these
changes are atomically written to the underlying PM.
> Do I understand it correctly that the PM has to be JDBC-based to
> ensure atomic storage of changes?
Yes, the file-system based PMs do not write change logs atomically.
> OTOH, do I still need transaction support facilities of the
> application server?
If you only need local transactions, you might control transactions
inside Jackrabbit manually by calling the individual XAResource
methods exposed by Jackrabbit's XASession.
> Which deployment model would be appropriate?
> Does the model 3 apply to clusters, or would the repository
> clustering be implemented in the back-end (DB cluster)?
Clustering inside Jackrabbit requires a shared back-end, e.g. a DB
running standalone. Yet, there is still some information that every
node in the cluster stores locally, e.g. the search index, map of
locked nodes, etc.
> Would it be possible to scale the repository back-end and the
> application layer independently from each other?
Sorry, could you clarify this?
Cheers
Dominique