You are viewing a plain text version of this content. The canonical link for it is here.
Posted to slide-user@jakarta.apache.org by Andreas Probst <an...@gmx.net> on 2002/11/01 15:36:59 UTC

RE: Resource in a wrong state after transaction rollback

Hi Peter,

On 31 Oct 2002 at 9:04, Nevermann, Dr., Peter wrote:

> > Trying to proppatch the protected property caused a transaction 
> > rollback, which left the resource in a wrong state. This led to 
> > a RevisionDescriptorNotFoundException later and after a restart 
> > of Tomcat to a RevisionAlreadyExistException. 
> 
> Andreas, what kind of stores are you using? What was the exact scenario
> after the rolled-back PROPPATCH?

As contentstore I'm using slidestore.reference.FileContentStore 
with enabled versioning. Btw: Is it necessary to enable 
versioning there? I guess not, because of DeltaV.

For the other stores I'm using 
slidestore.reference.JDBCDescriptorsStore with HSQLDB.

What I did with Slide 1.0.16 client (scope set to /files), Slide 
2 on the server:

[LOCALHOST] /dms/kurs2/ $ propput /dms/kurs2/t1.txt 
getcontentlanguage de
Putting property(getcontentlanguage, de) to '/dms/kurs2/t1.txt': 
succeeded.

Slide log:

29 Oct 2002 11:11:17 - 
org.apache.slide.transaction.SlideTransactionManager - WARNING - 

Rollback Transaction 11 xid HttpProcessor[8080][4]-1035886275608-
11- in thread HttpProcessor[8080][4]
29 Oct 2002 11:11:17 - org.apache.slide.webdav.WebdavServlet - 
INFO - PROPPATCH = 207 Multi-Status (time: 1803 ms) URI = 
/files/kurs2/t1.txt



Then I tried it as user root on a new file:

*1st try: the same like above, DAV:checked-in property set to 
new version 1.1, but no new version under associated VHR.

*2nd try: like 1st try

*3rd try: now it gets interesting, revision not found:

[LOCALHOST] /dms/kurs2/ $ propput /dms/kurs2/t2.txt 
getcontentlanguage de
Putting property(getcontentlanguage, de) to '/dms/kurs2/t2.txt': 
failed.
Internal Server Error (500)

Slide log:
org.apache.slide.content.RevisionDescriptorNotFoundException: No 
revision
descriptor found on object /history/7
        at      
slidestore.reference.JDBCDescriptorsStore.retrieveRevisionDescrip
t
        or(JDBCDescriptorsStore.java:1567) at        
org.apache.slide.store.StandardStore.retrieveRevisionDescriptor(S
t
        andardStore.java:560) at        
org.apache.slide.content.ContentImpl.store(ContentImpl.java:979)
        at        
org.apache.slide.webdav.util.VersioningHelper.checkout(Versioning
H
        elper.java:816) at        
org.apache.slide.webdav.method.PropPatchMethod.executeRequest(Pro
p
        PatchMethod.java:298) at        
org.apache.slide.webdav.method.AbstractWebdavMethod.run(AbstractW
e
        bdavMethod.java:324) at        
org.apache.slide.webdav.WebdavServlet.service(WebdavServlet.java:
2
        21)

29 Oct 2002 11:20:41 -
org.apache.slide.transaction.SlideTransactionManager - WARNING - 
Rollback
Transaction 23 xid HttpProcessor[8080][4]-1035886841592-23- in 
thread
HttpProcessor[8080][4] 29 Oct 2002 11:20:41 -
org.apache.slide.webdav.WebdavServlet - INFO - PROPPATCH = 500 
Internal
Server Error (time: 50 ms) URI = /files/kurs2/t2.txt

Now the DAV:checked-in property is set back to still version 1.0 


OK

*4th try: now forbidden

[LOCALHOST] /dms/kurs2/ $ propput /dms/kurs2/t2.txt 
getcontentlanguage de
Putting property(getcontentlanguage, de) to '/dms/kurs2/t2.txt': 
failed.
Forbidden (403)

29 Oct 2002 11:25:33 - 
org.apache.slide.transaction.SlideTransactionManager - WARNING - 

Rollback Transaction 24 xid HttpProcessor[8080][4]-1035887133312-

24- in thread HttpProcessor[8080][4]
29 Oct 2002 11:25:33 - org.apache.slide.webdav.WebdavServlet - 
INFO - PROPPATCH = 403 Forbidden (time: 20 ms) URI = 
/files/kurs2/t2.txt

Version stays 1.0

*5th try: like 4th try

*Now new start of Tomcat server:

*1th try: now revision 1.1 already exists

[LOCALHOST] /dms/kurs2/ $ propput /dms/kurs2/t2.txt 
getcontentlanguage de
Putting property(getcontentlanguage, de) to '/dms/kurs2/t2.txt': 
failed.
Internal Server Error (500)

org.apache.slide.content.RevisionAlreadyExistException: Revision 
1.1 already exists on object /history/7
        at 
slidestore.reference.FileContentStore.createRevisionContent(FileC
ontentStore.java:294)
        at 
org.apache.slide.store.AbstractStore.createRevisionContent(Abstra
ctStore.java:1225)
        at 
org.apache.slide.store.StandardStore.createRevisionContent(Standa
rdStore.java:654)
        at 
org.apache.slide.content.ContentImpl.create(ContentImpl.java:1215
)
        at 
org.apache.slide.content.ContentImpl.create(ContentImpl.java:680)
        at 
org.apache.slide.webdav.util.VersioningHelper.checkin(VersioningH
elper.java:1187)
        at 
org.apache.slide.webdav.method.PropPatchMethod.executeRequest(Pro
pPatchMethod.java:343)
        at 
org.apache.slide.webdav.method.AbstractWebdavMethod.run(AbstractW
ebdavMethod.java:324)
        at 
org.apache.slide.webdav.WebdavServlet.service(WebdavServlet.java:
221)

29 Oct 2002 11:31:21 - 
org.apache.slide.transaction.SlideTransactionManager - WARNING - 

Rollback Transaction 5 xid HttpProcessor[8080][3]-1035887480951-
5- in thread HttpProcessor[8080][3]
29 Oct 2002 11:31:21 - org.apache.slide.webdav.WebdavServlet - 
INFO - PROPPATCH = 500 Internal Server Error (time: 381 ms) URI 
= /files/kurs2/t2.txt

*2nd try: now Slide client says succeeded again, but rollback in 
slide log

I stop here.

This looks like a problem with rolling back transactions.

Thanks.
Andreas


> 
> Regards,
> Peter
> 


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>