Hi, Dirk,

Thanks for the reply!

I get the error in "put" part of my test.

I try test with your modifications. I get the same
error as before. It fails at "put" when two threads
try to put the different contents into Slide. The
Oracle error is:
02 Oct 2001 17:27:54 -
slidestore.reference.OracleContentStore - ERROR -
java.io.IOException: ORA-22990: LOB locators cannot
span transactions
ORA-06512: at "SYS.DBMS_LOB", line 700
ORA-06512: at line 1
I will enlcose the stack trace in the end of email.

The above error is caused by the two threads use the
same database connection to do the transaciton on
Oracle database.

I look at your modifications. You create two tokens, 
token and token2. They are related to same namespace.
There is only one copy of namespace in the JVM. There
is only one database connection in this test. It
causes the problem.

Please advise.

Thanks in advance.

Ting

PS. For large LOB inserting into Oracle, the simple
insert statement does not work. I modify the
JDBCContentStore for Oracle and make it
OracleContentStore.

Here are the stack trace:

java.io.IOException: ORA-22990: LOB locators cannot
span transactions
ORA-06512: at "SYS.DBMS_LOB", line 700
ORA-06512: at line 1

        at
oracle.jdbc.dbaccess.DBError.SQLToIOExceptio
(DBError.java:531)
        at
oracle.jdbc.driver.OracleBlobOutputStream.flushBuffer(OracleBlobOutpu
tStream.java:179)
        at
oracle.jdbc.driver.OracleBlobOutputStream.write(OracleBlobOutputStrea
m.java:125)
        at
slidestore.reference.OracleContentStore.storeContent(OracleContentSto
re.java:619)
        at
slidestore.reference.OracleContentStore.createRevisionContent(OracleC
ontentStore.java:471)
        at
org.apache.slide.store.AbstractStore.createRevisionContent(AbstractSt
ore.java:1205)
        at
org.apache.slide.store.StandardStore.createRevisionContent(StandardSt
ore.java:654)
        at
org.apache.slide.content.ContentImpl.create(ContentImpl.java:483)
        at TestThread.run(TestThread.java:75)
        at java.lang.Thread.run(Thread.java:484)

--- Dirk Verbeeck <[EMAIL PROTECTED]> wrote:
> Hi
> 
> Sorry for the late reply but I wanted to try the
> test myself.
> Are you getting an error in the "get" part of your
> test ?
> I don't have oracle installed but have modified your
> example
> can you try this with use_transaction set to true
> and also with false ?
> 
> 
> Dirk
> 
> 
> 
> Ting Ning wrote:
> 
> > Hi,
> >
> > I write a small test program to test slide in
> > multi-threads env. I enclose my test program here.
> > Please take look at it. The NamespaceAccessToken
> is
> > initialized in the main program. Then it is passed
> to
> > the different thread. Each thread just puts the
> files
> > into Slide, and gets it back into file. Each
> thread
> > works on different file.
> >
> > I run the test program with Slide 1.0.14 with
> Oracle
> > database as descriptor and content stores. I get
> the
> > error like the transaction is not consistent, for
> > example, the Oracle error is "fetch out of
> sequence".
> > It is because that connection is shared between
> the
> > two thread.
> >
> > After doing some debug, I found out there is only
> one
> > database connection in this Slide test. This is
> why my
> > test fails.
> >
> > Do I do the right thing in this test?
> > If not, how can I do it?
> >
> > Any suggestions are welcome!
> >
> > Thanks in Advance.
> >
> > Ting
> 

> ATTACHMENT part 2
application/x-unknown-content-type-javafile
name=TestThread.java


> ATTACHMENT part 3
application/x-unknown-content-type-javafile
name=Test2.java



__________________________________________________
Do You Yahoo!?
Listen to your Yahoo! Mail messages from any phone.
http://phone.yahoo.com

Reply via email to