Hi Armin,
My broker factory is:
PersistenceBrokerFactoryClass=org.apache.ojb.broker.core.PersistenceBrokerFactorySyncImpl
Connection factory class is:
ConnectionFactoryClass=org.apache.ojb.broker.accesslayer.ConnectionFactoryManagedImpl
Persistence broker pool settings are:
maxActive=100
maxIdle=-1
maxWait=2000
timeBetweenEvictionRunsMillis=-1
minEvictableIdleTimeMillis=1000000
whenExhaustedAction=2
My jdbc connection descriptor is:
<jdbc-connection-descriptor
jcd-alias="OJBDb"
default-connection="true"
platform="Db2"
jdbc-level="1.0"
jndi-datasource-name="jdbc/ojbDataSource"
username="rrtools"
password="Parul1da"
batch-mode="false"
useAutoCommit="0"
ignoreAutoCommitExceptions="false">
<sequence-manager
className="org.apache.ojb.broker.util.sequence.SequenceManagerNativeImpl">
<attribute attribute-name="grabSize" attribute-value="1"></attribute>
</sequence-manager>
</jdbc-connection-descriptor>
Even after using clearCache() i run into this issue. How do I solve the null
pointers?
Coming to the rollback issue, I use the same broker through out for storage and
this broker is obtained after the UserTransaction is started.
Thanks for your help.
-Vamsi
----- Original Message ----
From: Armin Waibel <[EMAIL PROTECTED]>
To: OJB Users List <[email protected]>
Sent: Thursday, May 11, 2006 1:17:00 PM
Subject: Re: Intermitter error ...
Vamsi Atluri wrote:
> Hi Armin,
>
> I am using OJB1.0.1 on WSAD 5.1 using JDK1.3.1. I have a simple table of the
> form:
>
> TABLE: BOOK_VERSION_DEF
>
> BOOK_ID INTEGER (PK)
> BOOK_VERSION_ID INTEGER (PK)
> CREATION_DATE DATE
>
> And my query code is like this:
>
> Criteria bookVersionCriteria = new Criteria();
> bookVersionCriteria.addEqualTo("bookId", Integer.valueOf("1"));
> QueryByCriteria bookVersionQuery = new QueryByCriteria(BookVersionDef.class,
> bookVersionCriteria);
> Collection bookVersionDefs = broker.getCollectionByQuery(bookVersionQuery);
>
> It is a very straight forward case. As for threads, I am using WebSphere's
> DataSource, so I am guessing there is on PB per thread. Also, if I do
> broker.clearCache() just before running the query, I don't run into this
> problem. I don't know if it solved it, but as the problem is intermittent, I
> am not sure if broker.clearCache() fixed it.
>
Strange! The posted stack trace indicate that you work on a closed/not
open PB instance because
[5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
java.lang.NullPointerException.(NullPointerException.java:60)
> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
org.apache.ojb.broker.core.PersistenceBrokerImpl.getClassDescriptor(PersistenceBrokerImpl.java)
method PB.getClassDescriptor(...) seems to cause the NPE. The method
itself does:
public ClassDescriptor getClassDescriptor(Class clazz) throws
PersistenceBrokerException
{
return descriptorRepository.getDescriptorFor(clazz);
}
and 'descriptorRepository' is only null when PB instance is closed.
Which PersistenceBrokerFactory do you use?
> Now, I have one more question. If I have a process that does multiple
> broker.store()s
> within a UserTransaction boundary, if I do a broker.clearCache() before each
> store()
> call, if there is a roll back will all db actions be rolled back?
>
If you use the same broker instance (or use datasources in managed
environment) and the broker instance was created after the UT starts - yes.
The synchronization of the cache depends on the used
implementation/configuration.
regards,
Armin
> -Vamsi
>
> ----- Original Message ----
> From: Armin Waibel <[EMAIL PROTECTED]>
> To: OJB Users List <[email protected]>
> Sent: Thursday, May 11, 2006 10:49:51 AM
> Subject: Re: Intermitter error ...
>
>
> Hi Vamsi,
>
> could post more details of the used OJB version and how you are using
> OJB? Could it be a concurrency issue, is it guaranteed that each thread
> use it's own PB instance?
>
> regards,
> Armin
>
> Vamsi Atluri wrote:
>> Hello all,
>>
>> I am getting this error when I am doing a broker.getCollectionByQuery() very
>> intermittently. The same piece of code works some times and fails some times
>> with this error:
>>
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R
>> java.lang.NullPointerException
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> java.lang.Throwable.(Throwable.java)
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> java.lang.Throwable.(Throwable.java)
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> java.lang.NullPointerException.(NullPointerException.java:60)
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getClassDescriptor(PersistenceBrokerImpl.java)
>>
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java)
>>
>> [5/11/06 10:02:15:498 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java)
>>
>> [5/11/06 10:02:15:508 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.QueryReferenceBroker.getCollectionByQuery(QueryReferenceBroker.java:253)
>>
>> [5/11/06 10:02:15:508 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.PersistenceBrokerImpl.getCollectionByQuery(PersistenceBrokerImpl.java:1217)
>>
>> [5/11/06 10:02:15:508 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:338)
>>
>> [5/11/06 10:02:15:508 EDT] 24df24df SystemErr R at
>> org.apache.ojb.broker.core.DelegatingPersistenceBroker.getCollectionByQuery(DelegatingPersistenceBroker.java:338)
>>
>> Does anybody have a clue why this might happen very intermittently? Since,
>> it is intermittent it is very hard to debug.
>>
>> -Vamsi
>>
>> ---------------------------------------------------------------------
>> 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]
>
> ---------------------------------------------------------------------
> 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]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]