yes! you are right. I already did that and started working....although I have no idea
why it is working and
what difference I made. I thought it is a valid config. Can't think about the possible
cause? any idea.
Anyway, thanks a lot for your help.
-----Original Message-----
From: Armin Waibel [mailto:[EMAIL PROTECTED]
Sent: Fri 2/28/2003 9:29 AM
To: OJB Users List; Ajitesh Das
Cc:
Subject: Re: Brrow broker from pool is failing : OptimisticLockException in PB
Api
Hi,
that's (not?) really strange!
But I think it could be a little problematic to set an
autoincrement, primary key field (zonaDbId) as the
locking field (locking="true") of the persistent object.
Try to use a separate field to do optimistic locking.
regards,
Armin
----- Original Message -----
From: "Ajitesh Das" <[EMAIL PROTECTED]>
To: "OJB Users List" <[EMAIL PROTECTED]>
Sent: Wednesday, February 26, 2003 6:09 PM
Subject: RE: Brrow broker from pool is failing : OptimisticLockException
in PB Api
> Here is my class descriptor:
> <class-descriptor
> class="com.acme.ZonaSample"
> table="ZONA_TABLE"
> >
> <field-descriptor id="1"
> name="zonaDbId"
> column="ID"
> jdbc-type="INTEGER"
> primarykey="true"
> nullable="false"
> indexed="true"
> autoincrement="true"
> locking="true"
> default-fetch="false"
> />
> <field-descriptor id="2"
> name="attr1"
> column="a1"
> jdbc-type="BIGINT"
> primarykey="false"
> nullable="true"
> indexed="true"
> autoincrement="false"
> locking="false"
> default-fetch="false"
> />
> <field-descriptor id="3"
> name="attr2"
> column="a2"
> jdbc-type="INTEGER"
> primarykey="false"
> nullable="true"
> indexed="true"
> autoincrement="false"
> locking="false"
> default-fetch="false"
> />
> <field-descriptor id="4"
> name="attr3"
> column="a3"
> jdbc-type="BIGINT"
> primarykey="false"
> nullable="true"
> indexed="true"
> autoincrement="false"
> locking="false"
> default-fetch="false"
> />
> </class-descriptor>
>
>
> -----Original Message-----
> From: Armin Waibel [mailto:[EMAIL PROTECTED]
> Sent: Wed 2/26/2003 2:50 AM
> To: OJB Users List
> Cc:
> Subject: Re: Brrow broker from pool is failing :
OptimisticLockException in PB Api
>
>
>
> Hi,
>
> need some more info.
> Please send the class-descriptor of
> your 'persistentObject'
>
> regards,
> Armin
>
> ----- Original Message -----
> From: "Ajitesh Das" <[EMAIL PROTECTED]>
> To: "OJB Users List Armin Waibel"
> <[EMAIL PROTECTED]@code-au-lait.de>; "OJB Users List"
> <[EMAIL PROTECTED]>
> Sent: Wednesday, February 26, 2003 11:34 AM
> Subject: RE: Brrow broker from pool is failing :
OptimisticLockException
> in PB Api
>
>
> > Hi Armin :
> > Thanks for your reply.
> > >first, it seems that you mix the JDO-api with the PB-api in your
code
> > >PersistenceManager --> JDO
> > >PersistenceBroker (PB), PersistenceBrokerFactory (PBF)--> PB-api
> > >maybe a typo.
> > yes this is a Typo. I am just playing PB api
> >
> > > I get this "Brrow broker from pool is failing" exception after
some
> > >success write.
> > >Think you forget to call the close method of the PB after use.
> > >PB.close() returns
> > >the broker to broker pool managed by PBF.
> >
> >
> > Here are the tries I have made :
> >
> > case 1* If I put PB.close() ... I get exception saying
> "OprimisticLockException: Some body using the object"
> >
> > case 2* If I do not use PB.close() ....I ran out of Broker pool.
> >
> > here is the structure I am using
> >
> > Loop :
> >
> > < condition>
> >
> > new PersistentObject()
> >
> > set values;
> >
> > PB = PersistenceBrokerFactory.defaultPersistenceBroker();
> >
> > PB.beginTx();
> >
> > PB.store(myObj)
> >
> > PB.commitTx()
> >
> > PB.close() // tried with and without this
> >
> >
> > I have also tried with a static var ...holding obj reference of PB
> during my application initialization.
> >
> > I am still getting Optimistic Lock Exception .... similar to case 2.
> >
> > thanks
> >
> > ~ajitesh
> >
> >
> >
> >
> >
> > ----- Original Message -----
> > From: "Ajitesh Das" <[EMAIL PROTECTED]>
> > To: "OJB Users List" <[EMAIL PROTECTED]>; "OJB Users List"
> > <[EMAIL PROTECTED]>; "OJB Users List" <[EMAIL PROTECTED]>;
> > "OJB Users List" <[EMAIL PROTECTED]>
> > Sent: Wednesday, February 26, 2003 10:45 AM
> > Subject: Brrow broker from pool is failing : OptimisticLockException
> in
> > PB Api
> >
> >
> > > * Here is my issue :
> > > - When I save the "Broker" object reference in a static
> > variable and use that in multiple context
> > > I get Optimistic Lock exception.
> > > - If I do not save the Broker object reference :
> > > // pm = PersistenceManager.getInstance(); // return
> > Broker.defaultPersistenceBroker()
> > > pm = PersistenceBrokerFactory.defaultPersistenceBroker();
> > >
> > > I get this "Brrow broker from pool is failing" exception after
some
> > success write. I need to import a big data set into db table from a
> CSV
> > file and I make this in a *big* loop.
> > >
> > > Please advise.
> > >
> > > =========================================
> > > java.util.NoSuchElementException
> > > at
> >
>
org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(Generic
> > KeyedObjectPool.java:758)
> > > at
> >
>
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.createPersi
> > stenceBroker(Unknown Source)
> > > at
> >
>
org.apache.ojb.broker.ta.PersistenceBrokerFactoryDefaultImpl.defaultPers
> > istenceBroker(Unknown Source)
> > > at
> >
>
org.apache.ojb.broker.PersistenceBrokerFactory.defaultPersistenceBroker(
> > Unknown Source)
> > > at org.apache.ojb.broker.Identity.<init>(Unknown Source)
> > > at
org.apache.ojb.broker.cache.ObjectCacheDefaultImpl.cache(Unknown
> > Source)
> > > at
> >
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.storeToDb(Unknown
> > Source)
> > > at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> >
>
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.store(Unknown
> > Source)
> > > at
> >
>
org.apache.ojb.broker.util.sequence.SequenceGenerator.getNextSequence(Un
> > known Source)
> > > at
> >
>
org.apache.ojb.broker.util.sequence.SequenceManagerHiLoImpl.getUniqueId(
> > Unknown Source)
> > > at
> >
>
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.getUniqueId(Unknown
> > Source)
> > > at
> >
>
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.getUniqueId(U
> > nknown Source)
> > > at
> >
>
org.apache.ojb.broker.metadata.ClassDescriptor.getAutoIncrementValue(Unk
> > nown Source)
> > > at
> >
>
org.apache.ojb.broker.metadata.ClassDescriptor.getKeyValuesForObject(Unk
> > nown Source)
> > > at
> > org.apache.ojb.broker.metadata.ClassDescriptor.getKeyValues(Unknown
> > Source)
> > > at
> > org.apache.ojb.broker.metadata.ClassDescriptor.getKeyValues(Unknown
> > Source)
> > > at org.apache.ojb.broker.Identity.<init>(Unknown Source)
> > > at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> >
>
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.store(Unknown
> > Source)
> > >
> > >
> > > -----Original Message-----
> > > From: Ajitesh Das
> > > Sent: Wed 2/26/2003 1:20 AM
> > > To: OJB Users List; OJB Users List; OJB Users List
> > > Cc:
> > > Subject: RE: OptimisticLockException in PB Api
> > >
> > >
> > >
> > > I have checked org.apache.ojb.tutorial1.UCEnterNewProduct.apply()
> ...
> > my main2() method is also same in nature..how come urs is woking and
> > mine is not :(
> > >
> > >
> > > -----Original Message-----
> > > From: Ajitesh Das
> > > Sent: Wed 2/26/2003 1:14 AM
> > > To: OJB Users List; OJB Users List
> > > Cc:
> > > Subject: OptimisticLockException in PB Api
> > >
> > >
> > >
> > > I was trying a simple Test program. where I am setting a
set
> > of objects and what to write them in a DB.I am using PB Api. The
very
> > first write is a success but throwing exception from 2nd write
> onwards.
> > What I am doing wrong ?
> > >
> > > org.apache.ojb.broker.OptimisticLockException: Object has
> been
> > modified by someone else
> > > at Test1.main2(Test1.java:64)
> > > at Test1.<init>(Test1.java:23)
> > > at Test1.main(Test1.java:27)
> > > Caused by: org.apache.ojb.broker.OptimisticLockException:
> > Object has been modified by someone else
> > > at
> > org.apache.ojb.broker.accesslayer.JdbcAccess.executeUpdate(Unknown
> > Source)
> > > at
> >
org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.storeToDb(Unknown
> > Source)
> > > at
> > org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> > org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> > org.apache.ojb.broker.singlevm.PersistenceBrokerImpl.store(Unknown
> > Source)
> > > at
> >
>
org.apache.ojb.broker.singlevm.DelegatingPersistenceBroker.store(Unknown
> > Source)
> > >
> > > Here is my caller method:
> > >
> > > public Test1 ()
> > > {
> > > main2();
> > > main2();
> > > }
> > >
> > > And here is the called method
> > >
> > > public void main2 ( )
> > > {
> > > PersistenceManager pm = null;
> > > Transaction tx = null;
> > > Sample zs = new Sample();
> > > zs.setAttr1((long)10);
> > > zs.setAttr2(30);
> > > zs.setAttr3((long)40);
> > >
> > > try {
> > > pm = PersistenceManager.getInstance(); // return
> > Broker.defaultPersistenceBroker()
> > > pm.beginTransaction();
> > > pm.Store(zs);
> > > pm.commitTransaction();
> > >
> > > }
> > > catch (Exception ex) {
> > > ex.printStackTrace();
> > > System.out.println("Error in Test1 1 ");
> > > try {
> > > if ( tx != null )
> > > pm.abortTransaction();
> > >
> > > catch (Exception ex1) {
> > > }
> > > }
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
> >
>
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
>