You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by ulf schneider <us...@datenlabor.net> on 2011/11/28 13:17:07 UTC

too many open files / derby / suse

dear developers,
i'm running a jackrabbit system with several workspaces (15) and using derby as embedded database on suse linux.
since a few days and after adding another workspace i get exceptions like the one that i've attached to this e-mail (reproducable with jackrabbit 2.2.9 and 2.2.10). i'm suspecting that the failure is originated by the number of workspaces.
ulimit -n prints out a value of 1024.

do you have recommendations how to deal with this issue? 

best regards, ulf.


2011.11.27 13:11:00.087 ERROR [DbUtility.java:92] failed to close Connection 
2011.11.27 13:11:00.087 ERROR [DbUtility.java:94]        Reason: Already closed. 
2011.11.27 13:11:00.088 ERROR [DbUtility.java:95]    State/Code: null/0 
2011.11.27 13:11:00.095 ERROR [ConnectionHelper.java:498] Failed to execute SQL (stacktrace on DEBUG log level) 
org.apache.commons.dbcp.SQLNestedException: Borrow prepareStatement from pool failed 
	at org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnection.java:98) ~[commons-dbcp-1.2.2.jar:1.2.2] 
	at org.apache.commons.dbcp.DelegatingConnection.prepareStatement(DelegatingConnection.java:248) ~[commons-dbcp-1.2.2.jar:1.2.2] 
	at org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepareStatement(PoolingDataSource.java:302) ~[commons-dbcp-1.2.2.jar:1.2.2] 
	at org.apache.jackrabbit.core.util.db.ConnectionHelper.reallyExec(ConnectionHelper.java:387) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelper.java:371) ~[jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelper.java:367) ~[jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.util.db.ConnectionHelper$RetryManager.doTry(ConnectionHelper.java:494) ~[jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.util.db.ConnectionHelper.exec(ConnectionHelper.java:367) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.loadReferencesTo(BundleDbPersistenceManager.java:1141) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.state.SharedItemStateManager.getNodeReferences(SharedItemStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.state.LocalItemStateManager.getNodeReferences(LocalItemStateManager.java:218) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.state.XAItemStateManager.getReferences(XAItemStateManager.java:372) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.state.XAItemStateManager.hasNodeReferences(XAItemStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.state.SessionItemStateManager.hasNodeReferences(SessionItemStateManager.java:198) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:3028) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:2406) [jackrabbit-core-2.2.10.jar:2.2.10] 
	at dlab.content.ocm.OCMStorer.removeTaggingReferences(OCMStorer.java:459) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.OCMStorer.storeTagging(OCMStorer.java:1064) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.OCMStorer.storeFinalProperty(OCMStorer.java:789) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectContentMapperJsr170.java:1025) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectContentMapperJsr170.java:1066) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJsr170.java:698) [dlab_content_1.4.2.jar:na] 
	at dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJsr170.java:710) [dlab_content_1.4.2.jar:na] 
	at dlab.content.service.ContentService.storeContent(ContentService.java:2908) [dlab_content_1.4.2.jar:na] 
	at dlab.content.service.ContentService.storeContent(ContentService.java:2859) [dlab_content_1.4.2.jar:na] 
	at dlab.docker.document.DocumentEditablePage.store(DocumentEditablePage.java:608) [dlab_docker_templating_1.4.2.jar:na] 
	at dlab.docker.document.DocumentEditablePage.onSubmit(DocumentEditablePage.java:510) [dlab_docker_templating_1.4.2.jar:na] 
	at dlab.web.dialog.DialogEditablePage$1.onSubmit(DialogEditablePage.java:116) [dlab_web_1.4.2.jar:na] 
	at org.apache.wicket.markup.html.form.Form$10.component(Form.java:1189) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.markup.html.form.Form$10.component(Form.java:1184) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:273) [wicket-util-1.5.3.jar:1.5.3] 
	at org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:244) [wicket-util-1.5.3.jar:1.5.3] 
	at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1182) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.markup.html.form.Form.process(Form.java:838) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:762) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:692) [wicket-core-1.5.3.jar:1.5.3] 
	at sun.reflect.GeneratedMethodAccessor175.invoke(Unknown Source) ~[na:na] 
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) ~[na:1.6.0_17] 
	at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_17] 
	at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:260) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:216) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:750) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) [wicket-request-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:209) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:280) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:162) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:218) [wicket-core-1.5.3.jar:1.5.3] 
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [catalina-6.0.16.jar:na] 
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) [catalina-6.0.16.jar:na] 
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) [tomcat-coyote-6.0.16.jar:na] 
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) [tomcat-coyote-6.0.16.jar:na] 
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) [tomcat-coyote-6.0.16.jar:na] 
	at java.lang.Thread.run(Thread.java:619) [na:1.6.0_17] 
Caused by: java.sql.SQLException: Meta-data for Container org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff could not be accessed 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedPreparedStatement40.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.jdbc.Driver40.newEmbedPreparedStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.commons.dbcp.PoolingConnection.makeObject(PoolingConnection.java:193) ~[commons-dbcp-1.2.2.jar:1.2.2] 
	at org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:797) ~[commons-pool-1.3.jar:1.3] 
	at org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnection.java:92) ~[commons-dbcp-1.2.2.jar:1.2.2] 
	... 61 common frames omitted 
Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Meta-data for Container org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff could not be accessed 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	... 78 common frames omitted 
Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Java exception: '/srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files): java.io.FileNotFoundException'. 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	... 75 common frames omitted 
Caused by: java.io.FileNotFoundException: /srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files) 
	at java.io.RandomAccessFile.open(Native Method) ~[na:1.6.0_17] 
	at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212) ~[na:1.6.0_17] 
	at org.apache.derby.impl.io.DirRandomAccessFile.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.io.DirRandomAccessFile4.<init>(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.io.DirFile4.getRandomAccessFile(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.RAFContainer.run(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at java.security.AccessController.doPrivileged(Native Method) ~[na:1.6.0_17] 
	at org.apache.derby.impl.store.raw.data.RAFContainer.openContainer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.RAFContainer4.openContainer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.FileContainer.setIdent(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.RAFContainer.setIdentity(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.services.cache.ConcurrentCache.find(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.raw.xact.Xact.openContainer(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.access.btree.index.B2IFactory.readConglomerate(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.access.RAMAccessManager.conglomCacheFind(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.access.RAMTransaction.findExistingConglomerate(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.store.access.RAMTransaction.openStoreCost(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.CompilerContextImpl.getStoreCostController(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.FromBaseTable.getStoreCostController(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.FromBaseTable.estimateCost(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.OptimizerImpl.estimateTotalCost(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.OptimizerImpl.costBasedCostOptimizable(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.OptimizerImpl.costOptimizable(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.FromBaseTable.optimizeIt(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.ProjectRestrictNode.optimizeIt(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.OptimizerImpl.costPermutation(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.SelectNode.optimize(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	at org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInternalStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na] 
	... 71 common frames omitted 
--
ulf schneider
+49 163 2505164
mail: us@datenlabor.net
blog: http://allesagil.net

datenlabor gmbh
sitz: paderborn, hrb 8819
geschäftsführer: ulf schneider
http://datenlabor.net

Am 25.11.2011 um 18:01 schrieb Julian Reschke:

> On 2011-11-25 17:36, Alex Parvulescu wrote:
>> ok, I kinda lost here
>> 
>> any ideas how the root node can be sometimes protected?
>> 
>> http://www.day.com/maven/javax.jcr/javadocs/jcr-2.0/javax/jcr/nodetype/ItemDefinition.html#isProtected()
>> http://www.day.com/specs/jcr/2.0/3_Repository_Model.html#3.7.2.2 Protected
>> 
>> alex
>> ...
> 
> What's the actual node type definition?


Re: too many open files / derby / suse

Posted by Jukka Zitting <ju...@gmail.com>.
Hi,

On Mon, Nov 28, 2011 at 1:17 PM, ulf schneider <us...@datenlabor.net> wrote:
> do you have recommendations how to deal with this issue?

The simple solution is to increase the limit on open files.

BR,

Jukka Zitting

Re: too many open files / derby / suse

Posted by ulf schneider <us...@datenlabor.net>.
thomas,
doing lsof -u tomcat i find a list of open files like the one below for each workspace.
i think that is expected for derby and is conform to what you explained. in addition tomcat has open files to the jars that are needed and i do not see any suspicious files so i will leave it for now like it is and check again later.

regards, ulf.

java    3045 tomcat  576u   REG                3,7   1048576 134580311 /srv/docker/workspaces/AWK314/db/log/log4.dat
java    3045 tomcat  577uw  REG                3,7         4 101034512 /srv/docker/workspaces/AWK314/db/dbex.lck
java    3045 tomcat  578u   REG                3,7      8192 152017578 /srv/docker/workspaces/AWK314/db/seg0/c10.dat
java    3045 tomcat  579u   REG                3,7      8192 152017597 /srv/docker/workspaces/AWK314/db/seg0/cc0.dat
java    3045 tomcat  580u   REG                3,7      8192 152017598 /srv/docker/workspaces/AWK314/db/seg0/cd1.dat
java    3045 tomcat  581u   REG                3,7      8192 152017590 /srv/docker/workspaces/AWK314/db/seg0/c60.dat
java    3045 tomcat  582u   REG                3,7      8192 152017591 /srv/docker/workspaces/AWK314/db/seg0/c71.dat
java    3045 tomcat  583u   REG                3,7     20480 152017593 /srv/docker/workspaces/AWK314/db/seg0/c90.dat
java    3045 tomcat  584u   REG                3,7     24576 152017594 /srv/docker/workspaces/AWK314/db/seg0/ca1.dat
java    3045 tomcat  585u   REG                3,7     28672 152017583 /srv/docker/workspaces/AWK314/db/seg0/c20.dat
java    3045 tomcat  586u   REG                3,7      8192 152017589 /srv/docker/workspaces/AWK314/db/seg0/c51.dat
java    3045 tomcat  587u   REG                3,7    245760 152017425 /srv/docker/workspaces/AWK314/db/seg0/c230.dat
java    3045 tomcat  588u   REG                3,7     24576 152017426 /srv/docker/workspaces/AWK314/db/seg0/c241.dat
java    3045 tomcat  589u   REG                3,7     16384 152017427 /srv/docker/workspaces/AWK314/db/seg0/c251.dat
java    3045 tomcat  590u   REG                3,7      8192 152017408 /srv/docker/workspaces/AWK314/db/seg0/c150.dat
java    3045 tomcat  591u   REG                3,7      8192 152017409 /srv/docker/workspaces/AWK314/db/seg0/c161.dat
java    3045 tomcat  592u   REG                3,7      8192 152017435 /srv/docker/workspaces/AWK314/db/seg0/c2d0.dat
java    3045 tomcat  593u   REG                3,7      8192 152017436 /srv/docker/workspaces/AWK314/db/seg0/c2e1.dat
java    3045 tomcat  594u   REG                3,7      8192 152017592 /srv/docker/workspaces/AWK314/db/seg0/c81.dat
java    3045 tomcat  595u   REG                3,7      8192 152017599 /srv/docker/workspaces/AWK314/db/seg0/ce1.dat
java    3045 tomcat  596u   REG                3,7     32768 152017414 /srv/docker/workspaces/AWK314/db/seg0/c180.dat
java    3045 tomcat  597u   REG                3,7     16384 152017415 /srv/docker/workspaces/AWK314/db/seg0/c191.dat
java    3045 tomcat  598u   REG                3,7    131072 152021397 /srv/docker/workspaces/AWK314/db/seg0/c400.dat
java    3045 tomcat  599u   REG                3,7     16384 152021398 /srv/docker/workspaces/AWK314/db/seg0/c411.dat
java    3045 tomcat  600u   REG                3,7      8192 152017382 /srv/docker/workspaces/AWK314/db/seg0/cf0.dat
java    3045 tomcat  601u   REG                3,7      8192 152017405 /srv/docker/workspaces/AWK314/db/seg0/c121.dat
java    3045 tomcat  602u   REG                3,7      8192 152017406 /srv/docker/workspaces/AWK314/db/seg0/c130.dat
java    3045 tomcat  603u   REG                3,7      8192 152017407 /srv/docker/workspaces/AWK314/db/seg0/c141.dat
java    3045 tomcat  604r   REG                3,7    133707 168906123 /srv/docker/workspaces/AWK314/index/_5q/_0.cfs
java    3045 tomcat  605r   REG                3,7    133707 168906123 /srv/docker/workspaces/AWK314/index/_5q/_0.cfs
--
ulf schneider
+49 163 2505164
mail: us@datenlabor.net
blog: http://allesagil.net

datenlabor gmbh
sitz: paderborn, hrb 8819
geschäftsführer: ulf schneider
http://datenlabor.net

Am 28.11.2011 um 15:25 schrieb Thomas Mueller:

> Hi,
> 
>> and as far as i can see the failure is gone.
> 
> Depending on what the problem is, that might only be a temporary solution.
> I really would try to find out what the problem is, using "lsof -p <pid>".
> To get the pid, use "jps -l".
> 
>> @thomas: you suggested to use H2. would it be possible to replace derby
>> with H2 but reuse the file structure that has already been created by
>> derby?
> 
> H2 only needs one file per database (plus one temporary file to lock the
> database file, plus possibly a log file). Derby uses many files per
> database (one per table or index, plus a few for the transaction log, and
> so on). So: no. You need to create a new database / new databases.
> 
> Regards,
> Thomas
> 


Re: too many open files / derby / suse

Posted by Thomas Mueller <mu...@adobe.com>.
Hi,

>and as far as i can see the failure is gone.

Depending on what the problem is, that might only be a temporary solution.
I really would try to find out what the problem is, using "lsof -p <pid>".
To get the pid, use "jps -l".

>@thomas: you suggested to use H2. would it be possible to replace derby
>with H2 but reuse the file structure that has already been created by
>derby?

H2 only needs one file per database (plus one temporary file to lock the
database file, plus possibly a log file). Derby uses many files per
database (one per table or index, plus a few for the transaction log, and
so on). So: no. You need to create a new database / new databases.

Regards,
Thomas


Re: too many open files / derby / suse

Posted by ulf schneider <us...@datenlabor.net>.
yukka and thomas,
thanks a lot for your help. i've configured

/etc/security/limits.conf
* soft nofile 10240
* hard nofile 10240

and as far as i can see the failure is gone.

@thomas: you suggested to use H2. would it be possible to replace derby with H2 but reuse the file structure that has already been created by derby? 
--
ulf schneider
+49 163 2505164
mail: us@datenlabor.net
blog: http://allesagil.net

datenlabor gmbh
sitz: paderborn, hrb 8819
geschäftsführer: ulf schneider
http://datenlabor.net

Am 28.11.2011 um 13:23 schrieb Thomas Mueller:

> Hi,
> 
> Could you run "lsof" to find out what files are open? I guess most files
> are open in a different area (not Derby). If it really is Derby, then an
> option is to use another database, for example H2 (disclaimer: I'm one of
> the committers of H2).
> 
> Regards,
> Thomas
> 
> 
> On 11/28/11 1:17 PM, "ulf schneider" <us...@datenlabor.net> wrote:
> 
>> dear developers,
>> i'm running a jackrabbit system with several workspaces (15) and using
>> derby as embedded database on suse linux.
>> since a few days and after adding another workspace i get exceptions like
>> the one that i've attached to this e-mail (reproducable with jackrabbit
>> 2.2.9 and 2.2.10). i'm suspecting that the failure is originated by the
>> number of workspaces.
>> ulimit -n prints out a value of 1024.
>> 
>> do you have recommendations how to deal with this issue?
>> 
>> best regards, ulf.
>> 
>> 
>> 2011.11.27 13:11:00.087 ERROR [DbUtility.java:92] failed to close
>> Connection
>> 2011.11.27 13:11:00.087 ERROR [DbUtility.java:94]        Reason: Already
>> closed.
>> 2011.11.27 13:11:00.088 ERROR [DbUtility.java:95]    State/Code: null/0
>> 2011.11.27 13:11:00.095 ERROR [ConnectionHelper.java:498] Failed to
>> execute SQL (stacktrace on DEBUG log level)
>> org.apache.commons.dbcp.SQLNestedException: Borrow prepareStatement from
>> pool failed
>>       at
>> org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnecti
>> on.java:98) ~[commons-dbcp-1.2.2.jar:1.2.2]
>>       at
>> org.apache.commons.dbcp.DelegatingConnection.prepareStatement(DelegatingCo
>> nnection.java:248) ~[commons-dbcp-1.2.2.jar:1.2.2]
>>       at
>> org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepa
>> reStatement(PoolingDataSource.java:302) ~[commons-dbcp-1.2.2.jar:1.2.2]
>>       at
>> org.apache.jackrabbit.core.util.db.ConnectionHelper.reallyExec(ConnectionH
>> elper.java:387) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelpe
>> r.java:371) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelpe
>> r.java:367) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.util.db.ConnectionHelper$RetryManager.doTry(Con
>> nectionHelper.java:494) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.util.db.ConnectionHelper.exec(ConnectionHelper.
>> java:367) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.loa
>> dReferencesTo(BundleDbPersistenceManager.java:1141)
>> [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.state.SharedItemStateManager.getNodeReferences(
>> SharedItemStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.state.LocalItemStateManager.getNodeReferences(L
>> ocalItemStateManager.java:218) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.state.XAItemStateManager.getReferences(XAItemSt
>> ateManager.java:372) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.state.XAItemStateManager.hasNodeReferences(XAIt
>> emStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.state.SessionItemStateManager.hasNodeReferences
>> (SessionItemStateManager.java:198) [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:3028)
>> [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:2406)
>> [jackrabbit-core-2.2.10.jar:2.2.10]
>>       at
>> dlab.content.ocm.OCMStorer.removeTaggingReferences(OCMStorer.java:459)
>> [dlab_content_1.4.2.jar:na]
>>       at dlab.content.ocm.OCMStorer.storeTagging(OCMStorer.java:1064)
>> [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.ocm.OCMStorer.storeFinalProperty(OCMStorer.java:789)
>> [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectCo
>> ntentMapperJsr170.java:1025) [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectCo
>> ntentMapperJsr170.java:1066) [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJ
>> sr170.java:698) [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJ
>> sr170.java:710) [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.service.ContentService.storeContent(ContentService.java:2908)
>> [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.content.service.ContentService.storeContent(ContentService.java:2859)
>> [dlab_content_1.4.2.jar:na]
>>       at
>> dlab.docker.document.DocumentEditablePage.store(DocumentEditablePage.java:
>> 608) [dlab_docker_templating_1.4.2.jar:na]
>>       at
>> dlab.docker.document.DocumentEditablePage.onSubmit(DocumentEditablePage.ja
>> va:510) [dlab_docker_templating_1.4.2.jar:na]
>>       at
>> dlab.web.dialog.DialogEditablePage$1.onSubmit(DialogEditablePage.java:116)
>> [dlab_web_1.4.2.jar:na]
>>       at
>> org.apache.wicket.markup.html.form.Form$10.component(Form.java:1189)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.markup.html.form.Form$10.component(Form.java:1184)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:273)
>> [wicket-util-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:244)
>> [wicket-util-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1182)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at org.apache.wicket.markup.html.form.Form.process(Form.java:838)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:762)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:692)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at sun.reflect.GeneratedMethodAccessor175.invoke(Unknown Source)
>> ~[na:na]
>>       at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm
>> pl.java:25) ~[na:1.6.0_17]
>>       at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_17]
>>       at
>> org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerI
>> nterface.java:260) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface
>> .java:216) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.invokeLi
>> stener(ListenerInterfaceRequestHandler.java:248)
>> [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.respond(
>> ListenerInterfaceRequestHandler.java:234) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(Reque
>> stCycle.java:750) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.
>> java:64) [wicket-request-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252
>> ) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.j
>> ava:209) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(Reque
>> stCycle.java:280) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.j
>> ava:162) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:21
>> 8) [wicket-core-1.5.3.jar:1.5.3]
>>       at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicati
>> onFilterChain.java:235) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilter
>> Chain.java:206) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
>> java:233) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
>> java:174) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:1
>> 28) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:1
>> 02) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.ja
>> va:109) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286
>> ) [catalina-6.0.16.jar:na]
>>       at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>> [tomcat-coyote-6.0.16.jar:na]
>>       at
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Ht
>> tp11Protocol.java:583) [tomcat-coyote-6.0.16.jar:na]
>>       at
>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>> [tomcat-coyote-6.0.16.jar:na]
>>       at java.lang.Thread.run(Thread.java:619) [na:1.6.0_17]
>> Caused by: java.sql.SQLException: Meta-data for Container
>> org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff could not be
>> accessed
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unkn
>> own Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source)
>> ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedPreparedStatement40.<init>(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.jdbc.Driver40.newEmbedPreparedStatement(Unknown Source)
>> ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.commons.dbcp.PoolingConnection.makeObject(PoolingConnection.jav
>> a:193) ~[commons-dbcp-1.2.2.jar:1.2.2]
>>       at
>> org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKe
>> yedObjectPool.java:797) ~[commons-pool-1.3.jar:1.3]
>>       at
>> org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnecti
>> on.java:92) ~[commons-dbcp-1.2.2.jar:1.2.2]
>>       ... 61 common frames omitted
>> Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Meta-data for
>> Container org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff
>> could not be accessed
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcros
>> sDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       ... 78 common frames omitted
>> Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Java exception:
>> '/srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files):
>> java.io.FileNotFoundException'.
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcros
>> sDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
>> ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unkn
>> own Source) ~[derby-10.5.3.0_1.jar:na]
>>       ... 75 common frames omitted
>> Caused by: java.io.FileNotFoundException:
>> /srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files)
>>       at java.io.RandomAccessFile.open(Native Method) ~[na:1.6.0_17]
>>       at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
>> ~[na:1.6.0_17]
>>       at org.apache.derby.impl.io.DirRandomAccessFile.<init>(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.io.DirRandomAccessFile4.<init>(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.io.DirFile4.getRandomAccessFile(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.store.raw.data.RAFContainer.run(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at java.security.AccessController.doPrivileged(Native Method)
>> ~[na:1.6.0_17]
>>       at
>> org.apache.derby.impl.store.raw.data.RAFContainer.openContainer(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.data.RAFContainer4.openContainer(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.data.FileContainer.setIdent(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.data.RAFContainer.setIdentity(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.services.cache.ConcurrentCache.find(Unknown Source)
>> ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unk
>> nown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unk
>> nown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.raw.xact.Xact.openContainer(Unknown Source)
>> ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.access.btree.index.B2IFactory.readConglomerate
>> (Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.access.RAMAccessManager.conglomCacheFind(Unkno
>> wn Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.access.RAMTransaction.findExistingConglomerate
>> (Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.store.access.RAMTransaction.openStoreCost(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.CompilerContextImpl.getStoreCostControll
>> er(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.FromBaseTable.getStoreCostController(Unk
>> nown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.FromBaseTable.estimateCost(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.OptimizerImpl.estimateTotalCost(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.OptimizerImpl.costBasedCostOptimizable(U
>> nknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.OptimizerImpl.costOptimizable(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.FromBaseTable.optimizeIt(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.ProjectRestrictNode.optimizeIt(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.OptimizerImpl.costPermutation(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.sql.compile.SelectNode.optimize(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(Unkno
>> wn Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown
>> Source) ~[derby-10.5.3.0_1.jar:na]
>>       at
>> org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInt
>> ernalStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>>       ... 71 common frames omitted
>> --
>> ulf schneider
>> +49 163 2505164
>> mail: us@datenlabor.net
>> blog: http://allesagil.net
>> 
>> datenlabor gmbh
>> sitz: paderborn, hrb 8819
>> geschäftsführer: ulf schneider
>> http://datenlabor.net
>> 
>> Am 25.11.2011 um 18:01 schrieb Julian Reschke:
>> 
>>> On 2011-11-25 17:36, Alex Parvulescu wrote:
>>>> ok, I kinda lost here
>>>> 
>>>> any ideas how the root node can be sometimes protected?
>>>> 
>>>> 
>>>> http://www.day.com/maven/javax.jcr/javadocs/jcr-2.0/javax/jcr/nodetype/I
>>>> temDefinition.html#isProtected()
>>>> http://www.day.com/specs/jcr/2.0/3_Repository_Model.html#3.7.2.2
>>>> Protected
>>>> 
>>>> alex
>>>> ...
>>> 
>>> What's the actual node type definition?
>> 
> 


Re: too many open files / derby / suse

Posted by Thomas Mueller <mu...@adobe.com>.
Hi,

Could you run "lsof" to find out what files are open? I guess most files
are open in a different area (not Derby). If it really is Derby, then an
option is to use another database, for example H2 (disclaimer: I'm one of
the committers of H2).

Regards,
Thomas


On 11/28/11 1:17 PM, "ulf schneider" <us...@datenlabor.net> wrote:

>dear developers,
>i'm running a jackrabbit system with several workspaces (15) and using
>derby as embedded database on suse linux.
>since a few days and after adding another workspace i get exceptions like
>the one that i've attached to this e-mail (reproducable with jackrabbit
>2.2.9 and 2.2.10). i'm suspecting that the failure is originated by the
>number of workspaces.
>ulimit -n prints out a value of 1024.
>
>do you have recommendations how to deal with this issue?
>
>best regards, ulf.
>
>
>2011.11.27 13:11:00.087 ERROR [DbUtility.java:92] failed to close
>Connection
>2011.11.27 13:11:00.087 ERROR [DbUtility.java:94]        Reason: Already
>closed.
>2011.11.27 13:11:00.088 ERROR [DbUtility.java:95]    State/Code: null/0
>2011.11.27 13:11:00.095 ERROR [ConnectionHelper.java:498] Failed to
>execute SQL (stacktrace on DEBUG log level)
>org.apache.commons.dbcp.SQLNestedException: Borrow prepareStatement from
>pool failed
>        at
>org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnecti
>on.java:98) ~[commons-dbcp-1.2.2.jar:1.2.2]
>        at
>org.apache.commons.dbcp.DelegatingConnection.prepareStatement(DelegatingCo
>nnection.java:248) ~[commons-dbcp-1.2.2.jar:1.2.2]
>        at
>org.apache.commons.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.prepa
>reStatement(PoolingDataSource.java:302) ~[commons-dbcp-1.2.2.jar:1.2.2]
>        at
>org.apache.jackrabbit.core.util.db.ConnectionHelper.reallyExec(ConnectionH
>elper.java:387) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelpe
>r.java:371) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.util.db.ConnectionHelper$3.call(ConnectionHelpe
>r.java:367) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.util.db.ConnectionHelper$RetryManager.doTry(Con
>nectionHelper.java:494) ~[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.util.db.ConnectionHelper.exec(ConnectionHelper.
>java:367) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.persistence.pool.BundleDbPersistenceManager.loa
>dReferencesTo(BundleDbPersistenceManager.java:1141)
>[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.state.SharedItemStateManager.getNodeReferences(
>SharedItemStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.state.LocalItemStateManager.getNodeReferences(L
>ocalItemStateManager.java:218) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.state.XAItemStateManager.getReferences(XAItemSt
>ateManager.java:372) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.state.XAItemStateManager.hasNodeReferences(XAIt
>emStateManager.java:335) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.state.SessionItemStateManager.hasNodeReferences
>(SessionItemStateManager.java:198) [jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:3028)
>[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>org.apache.jackrabbit.core.NodeImpl.getReferences(NodeImpl.java:2406)
>[jackrabbit-core-2.2.10.jar:2.2.10]
>        at
>dlab.content.ocm.OCMStorer.removeTaggingReferences(OCMStorer.java:459)
>[dlab_content_1.4.2.jar:na]
>        at dlab.content.ocm.OCMStorer.storeTagging(OCMStorer.java:1064)
>[dlab_content_1.4.2.jar:na]
>        at
>dlab.content.ocm.OCMStorer.storeFinalProperty(OCMStorer.java:789)
>[dlab_content_1.4.2.jar:na]
>        at
>dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectCo
>ntentMapperJsr170.java:1025) [dlab_content_1.4.2.jar:na]
>        at
>dlab.content.ocm.ObjectContentMapperJsr170.traverseAndStoreObject(ObjectCo
>ntentMapperJsr170.java:1066) [dlab_content_1.4.2.jar:na]
>        at
>dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJ
>sr170.java:698) [dlab_content_1.4.2.jar:na]
>        at
>dlab.content.ocm.ObjectContentMapperJsr170.setContent(ObjectContentMapperJ
>sr170.java:710) [dlab_content_1.4.2.jar:na]
>        at
>dlab.content.service.ContentService.storeContent(ContentService.java:2908)
> [dlab_content_1.4.2.jar:na]
>        at
>dlab.content.service.ContentService.storeContent(ContentService.java:2859)
> [dlab_content_1.4.2.jar:na]
>        at
>dlab.docker.document.DocumentEditablePage.store(DocumentEditablePage.java:
>608) [dlab_docker_templating_1.4.2.jar:na]
>        at
>dlab.docker.document.DocumentEditablePage.onSubmit(DocumentEditablePage.ja
>va:510) [dlab_docker_templating_1.4.2.jar:na]
>        at
>dlab.web.dialog.DialogEditablePage$1.onSubmit(DialogEditablePage.java:116)
> [dlab_web_1.4.2.jar:na]
>        at
>org.apache.wicket.markup.html.form.Form$10.component(Form.java:1189)
>[wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.markup.html.form.Form$10.component(Form.java:1184)
>[wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.util.visit.Visits.visitPostOrderHelper(Visits.java:273)
>[wicket-util-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.util.visit.Visits.visitPostOrder(Visits.java:244)
>[wicket-util-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1182)
>[wicket-core-1.5.3.jar:1.5.3]
>        at org.apache.wicket.markup.html.form.Form.process(Form.java:838)
>[wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:762)
>[wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:692)
>[wicket-core-1.5.3.jar:1.5.3]
>        at sun.reflect.GeneratedMethodAccessor175.invoke(Unknown Source)
>~[na:na]
>        at
>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm
>pl.java:25) ~[na:1.6.0_17]
>        at java.lang.reflect.Method.invoke(Method.java:597) ~[na:1.6.0_17]
>        at
>org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerI
>nterface.java:260) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface
>.java:216) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.invokeLi
>stener(ListenerInterfaceRequestHandler.java:248)
>[wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.handler.ListenerInterfaceRequestHandler.respond(
>ListenerInterfaceRequestHandler.java:234) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(Reque
>stCycle.java:750) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.
>java:64) [wicket-request-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:252
>) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.j
>ava:209) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(Reque
>stCycle.java:280) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.j
>ava:162) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:21
>8) [wicket-core-1.5.3.jar:1.5.3]
>        at
>org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicati
>onFilterChain.java:235) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilter
>Chain.java:206) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.
>java:233) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.
>java:174) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:1
>28) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:1
>02) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.ja
>va:109) [catalina-6.0.16.jar:na]
>        at
>org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286
>) [catalina-6.0.16.jar:na]
>        at
>org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
> [tomcat-coyote-6.0.16.jar:na]
>        at
>org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Ht
>tp11Protocol.java:583) [tomcat-coyote-6.0.16.jar:na]
>        at
>org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
>[tomcat-coyote-6.0.16.jar:na]
>        at java.lang.Thread.run(Thread.java:619) [na:1.6.0_17]
>Caused by: java.sql.SQLException: Meta-data for Container
>org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff could not be
>accessed
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.jdbc.Util.seeNextException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unkn
>own Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.TransactionResourceImpl.handleException(Unknown
> Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedConnection.handleException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.ConnectionChild.handleException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedPreparedStatement.<init>(Unknown Source)
>~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedPreparedStatement20.<init>(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedPreparedStatement30.<init>(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedPreparedStatement40.<init>(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.jdbc.Driver40.newEmbedPreparedStatement(Unknown Source)
>~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.EmbedConnection.prepareStatement(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.commons.dbcp.PoolingConnection.makeObject(PoolingConnection.jav
>a:193) ~[commons-dbcp-1.2.2.jar:1.2.2]
>        at
>org.apache.commons.pool.impl.GenericKeyedObjectPool.borrowObject(GenericKe
>yedObjectPool.java:797) ~[commons-pool-1.3.jar:1.3]
>        at
>org.apache.commons.dbcp.PoolingConnection.prepareStatement(PoolingConnecti
>on.java:92) ~[commons-dbcp-1.2.2.jar:1.2.2]
>        ... 61 common frames omitted
>Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Meta-data for
>Container org.apache.derby.impl.store.raw.data.RAFContainer4@3e6e4eff
>could not be accessed
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcros
>sDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        ... 78 common frames omitted
>Caused by: org.apache.derby.impl.jdbc.EmbedSQLException: Java exception:
>'/srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files):
>java.io.FileNotFoundException'.
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcros
>sDRDA(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.jdbc.Util.newEmbedSQLException(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.jdbc.Util.javaException(Unknown Source)
>~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.jdbc.TransactionResourceImpl.wrapInSQLException(Unkn
>own Source) ~[derby-10.5.3.0_1.jar:na]
>        ... 75 common frames omitted
>Caused by: java.io.FileNotFoundException:
>/srv/docker/workspaces/CRM/db/seg0/c3f1.dat (Too many open files)
>        at java.io.RandomAccessFile.open(Native Method) ~[na:1.6.0_17]
>        at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
>~[na:1.6.0_17]
>        at org.apache.derby.impl.io.DirRandomAccessFile.<init>(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.io.DirRandomAccessFile4.<init>(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.io.DirFile4.getRandomAccessFile(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.store.raw.data.RAFContainer.run(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at java.security.AccessController.doPrivileged(Native Method)
>~[na:1.6.0_17]
>        at
>org.apache.derby.impl.store.raw.data.RAFContainer.openContainer(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.data.RAFContainer4.openContainer(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.data.FileContainer.setIdent(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.data.RAFContainer.setIdentity(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.services.cache.ConcurrentCache.find(Unknown Source)
>~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unk
>nown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.data.BaseDataFileFactory.openContainer(Unk
>nown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.raw.xact.Xact.openContainer(Unknown Source)
>~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.access.btree.index.B2IFactory.readConglomerate
>(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.access.RAMAccessManager.conglomCacheFind(Unkno
>wn Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.access.RAMTransaction.findExistingConglomerate
>(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.store.access.RAMTransaction.openStoreCost(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.CompilerContextImpl.getStoreCostControll
>er(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.FromBaseTable.getStoreCostController(Unk
>nown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.FromBaseTable.estimateCost(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.OptimizerImpl.estimateTotalCost(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.OptimizerImpl.costBasedCostOptimizable(U
>nknown Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.OptimizerImpl.costOptimizable(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.FromBaseTable.optimizeIt(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.ProjectRestrictNode.optimizeIt(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.OptimizerImpl.costPermutation(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.sql.compile.SelectNode.optimize(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.DMLStatementNode.optimizeStatement(Unkno
>wn Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.compile.CursorNode.optimizeStatement(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.sql.GenericStatement.prepMinion(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at org.apache.derby.impl.sql.GenericStatement.prepare(Unknown
>Source) ~[derby-10.5.3.0_1.jar:na]
>        at
>org.apache.derby.impl.sql.conn.GenericLanguageConnectionContext.prepareInt
>ernalStatement(Unknown Source) ~[derby-10.5.3.0_1.jar:na]
>        ... 71 common frames omitted
>--
>ulf schneider
>+49 163 2505164
>mail: us@datenlabor.net
>blog: http://allesagil.net
>
>datenlabor gmbh
>sitz: paderborn, hrb 8819
>geschäftsführer: ulf schneider
>http://datenlabor.net
>
>Am 25.11.2011 um 18:01 schrieb Julian Reschke:
>
>> On 2011-11-25 17:36, Alex Parvulescu wrote:
>>> ok, I kinda lost here
>>>
>>> any ideas how the root node can be sometimes protected?
>>>
>>>
>>>http://www.day.com/maven/javax.jcr/javadocs/jcr-2.0/javax/jcr/nodetype/I
>>>temDefinition.html#isProtected()
>>> http://www.day.com/specs/jcr/2.0/3_Repository_Model.html#3.7.2.2
>>>Protected
>>>
>>> alex
>>> ...
>>
>> What's the actual node type definition?
>