You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Ravindra Ramarao (JIRA)" <ji...@apache.org> on 2008/01/23 19:37:34 UTC
[jira] Updated: (JCR-1338) ItemImpl.save(1251) | /: unable to
update item.
[ https://issues.apache.org/jira/browse/JCR-1338?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ravindra Ramarao updated JCR-1338:
----------------------------------
I don't think it is a usage issue. It is similar to importing a repository and then deleting a document. The repository always constructs the directories on the file system if they do not exist. I see the problem is on the delete only and not during create. That should clearly state that it is not a usage issue. The saveSession is the one that is causing the problem.
> ItemImpl.save(1251) | /: unable to update item.
> ------------------------------------------------
>
> Key: JCR-1338
> URL: https://issues.apache.org/jira/browse/JCR-1338
> Project: Jackrabbit
> Issue Type: Bug
> Components: versioning
> Affects Versions: 1.4
> Environment: Tomcat5.0 , Jackrabbit1.4 and dependent jars. Windows platform, Informix DB.
> Reporter: Ravindra Ramarao
> Priority: Critical
>
> Steps to create:
> Repository Home=C:\CM directory.
> repository.xml is located under the home.
> Start TomcatCat which in turn starts the repository.
> Create a document in the repository.
> Stop the server.
> Delete the subdirectories underneath the repository home. (meaning workspace,index,.............).
> Start the Tomcat back .
> Try deleting the document which was saved previously.
> In my scenarion I have a template and a document. The relationship is one-to-many between template-document.
> All documents in the repository have a UUID . I am using this to locate and delete.
> Find the Document.
> Get the UUID from the name value pair in the UI.
> Find the node from the repository using the UUID>
> node.remove()
> Node nodeToDelete = jcrTemplate.getNodeByUUID(id);
> NodeIterator nodeIter = nodeToDelete.getNodes(); - Making sure there are no child nodes.
> if (nodeIter.getSize() == 0) {
> nodeToDelete.remove();
> }
>
> saveSession();
> this is the stacktrace.
> 2008-01-22 13:39:15,822 DEBUG [http-8080-Processor22] ItemManager.itemInvalidated(761) | invalidated item 10c3e652-5f6b-43a5-a2be-e5b4724181a6
> 2008-01-22 13:39:15,822 DEBUG [http-8080-Processor22] ItemManager.evictItem(702) | removing item 10c3e652-5f6b-43a5-a2be-e5b4724181a6 from cache
> 2008-01-22 13:39:31,942 DEBUG [http-8080-Processor22] TransactionSynchronizationManager.getResource(136) | Retrieved value [org.springmodules.jcr.SessionHolder@1305bf8] for key [SessionFactory for Jackrabbit 1.4|workspace=null] bound to thread [http-8080-Processor22]
> 2008-01-22 13:39:31,957 DEBUG [http-8080-Processor22] TransactionSynchronizationManager.getResource(136) | Retrieved value [org.springmodules.jcr.SessionHolder@1305bf8] for key [SessionFactory for Jackrabbit 1.4|workspace=null] bound to thread [http-8080-Processor22]
> 2008-01-22 13:39:31,957 DEBUG [http-8080-Processor22] JcrTemplate.execute(71) | Found thread-bound Session for JcrTemplate
> 2008-01-22 13:39:31,973 DEBUG [http-8080-Processor22] ItemManager.itemCreated(750) | created item cafebabe-cafe-babe-cafe-babecafebabe
> 2008-01-22 13:39:31,989 DEBUG [http-8080-Processor22] ItemManager.cacheItem(689) | caching item cafebabe-cafe-babe-cafe-babecafebabe
> 2008-01-22 13:39:32,285 DEBUG [http-8080-Processor22] ItemImpl.save(1251) | /: unable to update item.
> 2008-01-22 13:39:32,317 DEBUG [http-8080-Processor22] JcrTemplate.execute(95) | Not closing pre-bound Jcr Session after JcrTemplate
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.