A directory (which is what an LDAP service is) was not meant to be an ACID
resource.  This is because:

1. There is a single owner of data, assigned to a directory tree.
Therefore, updates from multiple sources to the same datam should be an
accident, rather intent.

2. Directories are not meant to store high or even medium volatility data.
The data they are meant to have is "rarely" modified.  A somewhat objective
definition of "rarely" can be that less than 5% of access to the data in a
directory server are updates.  Even 5% is generous.

--
Rajeev Arora                           | E [EMAIL PROTECTED]
IT Strategy Consultant / Transurban    | M +61 412 027 872
SMS Consulting (http://www.sms.com.au) | T +61 3 9612-6959
Melbourne.  Australia.                 | W http://talk.to/rajeev
============================================================================

-----Original Message-----
From: A mailing list for Enterprise JavaBeans development
[mailto:[EMAIL PROTECTED]]On Behalf Of Assaf Arkin
Sent: Monday, 13 December 1999 11:32
To: [EMAIL PROTECTED]
Subject: Re: BMP with LDAP


The problem is locking.

I could run a transparent layer between the application code and the LDAP
server that will hold all updates in memory until they are committed or
rolled back. LDIF makes that easy to do using the Mozilla Directory Server,
and I can figure out a way to do that with JNDI for any given SPI.

But there are two things that LDAP cannot guarantee, one is locks and two is
the actual update (if you are updating a replication server, the update is
not likely to propagate to the master server)

I agree with all the postings so far, since people would expect a BMP LDAP
to work like a BMP RDBMS which cannot be done whether or not you have a
resource implementation, it is better not done at all.

arkin


>Yes, but those apis are useless if the underlying resource can't do a
>prepare, commit and rollback!
>
>-Chris.
>
>> -----Original Message-----
>> From: Assaf Arkin [SMTP:[EMAIL PROTECTED]]
>> Sent: Friday, December 10, 1999 2:04 PM
>> To:   [EMAIL PROTECTED]
>> Subject:      Re: BMP with LDAP
>>
>> There are three APIs that allow you do make your resource transactional
>> aware and get it running in the context of a global transaction:
>> org.omg.CosTransactions.Resource (JTS/OTS),
>> javax.transactions.xa.XAResource (JTA), and
>> javax.transaction.Synchronization (no two-phase commit).
>>
>> The only thing you need is a way to tell the transaction manager to
>> place this resource inside the transaction, and there is no API to get
>> that done. I expect the connector architecture to provide something like
>> that, or at least define some way to configure it.
>>
>> arkin
>>
>>
>> > Erik Huddleston wrote:
>> >
>> > Microsoft's suite of middleware technologies is introducing the
>> > concept of a compensating resource managers (if COM+ ever ships).
>> > Basically, you create a component that implements a couple of
>> > interfaces.  One interface is used to integrate with OLE Transactions
>> > (the equivalent of JTS) and vote on the outcome of transactions.  The
>> > other interface is used to allow notification of the outcome of a
>> > transaction (including a durable log).  That allows the non
>> > transactional resource to issue a compensating action for any rolled
>> > back transaction.
>> >
>> > Does anyone who is following the EJB standards process know if we are
>> > going to get functionality like this any time soon.  It sounds like
>> > the connector architecture is a first step and would provide a
>> > convenient place to house such functionality.
>> >
>> > Erik
>> > --
>> > Erik Huddleston, [EMAIL PROTECTED]
>> > Chief Architect, eCustomers.com
>> > Microsoft Java MVP
>> >
>> > > -----Original Message-----
>> > > From: Kirk Pepperdine [mailto:[EMAIL PROTECTED]]
>> > > Sent: Friday, December 10, 1999 6:27 PM
>> > > To: [EMAIL PROTECTED]
>> > > Subject: Re: BMP with LDAP
>> > >
>> > >
>> > > >Confirmed. You can get an LDAP JNDI SPI from either JavaSoft (look
>> > in
>> > > >the JNDI page) or Netscape (the Mozilla Directory SDK).
>> > > >
>> > > >That still does not make LDAP transactional, but I don't see why
>> > you
>> > > >couldn't use LDAP for persistance. After all if you are
>> > > updating LDAP,
>> > > >whether through the LDAP API, JNDI or BMP you get the same
>> > > >non-transactional persistance.
>> > >
>> > > [Kirk] What happens when the LDAP is involved in a
>> > > distributed transaction
>> > > that gets rolled back?
>> > >
>> > > >
>> > > >arkin
>> > >
>> > > ==============================================================
>> > > =============
>> > > To unsubscribe, send email to [EMAIL PROTECTED] and
>> > > include in the body
>> > > of the message "signoff EJB-INTEREST".  For general help,
>> > > send email to
>> > > [EMAIL PROTECTED] and include in the body of the message "help".
>> >
>> > >
>>
>> --
>> ____________________________________________________________
>> Assaf Arkin                               [EMAIL PROTECTED]
>> CTO                                  http://www.exoffice.com
>> Exoffice, The ExoLab Company             tel: (650) 259-9796
>>
>>
==========================================================================
>> =
>> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
>> body
>> of the message "signoff EJB-INTEREST".  For general help, send email to
>> [EMAIL PROTECTED] and include in the body of the message "help".
>
>===========================================================================
>To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
>of the message "signoff EJB-INTEREST".  For general help, send email to
>[EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to