Page 1 of 1

OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Fri Apr 04, 2014 2:38 pm
by anyonebutnoone
Hey,

from one second to another i get this error in my OKM, it keeps me from accessing a folder permanently.
Code: Select all
OKM-002024(GetDocumentChilds): Datenbankfehler

No row with the given identifier exists: [com.openkm.dao.bean.NodeFolder#0676f0b4-77b6-4954-9e73-79a9df59d04e]
I am running 6.2.3 on Debian

Is there any possibility to bump this back into place?

thanks

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Sun Apr 06, 2014 5:06 pm
by jllort
I think could be some catagory deleted associated to some document ( it's a bug already solved but probably present in your openkm version ).

1- Take a look if the UUID node exists in NODE_BASE TABLE COLUMN NBS_UUID
2- Take a look if in OKM_NODE_CATEGORY table exist some node with this UUID

I suspect in first table not exitst but already exists in second ( remove from second and the problem will be solved )

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Tue Apr 08, 2014 9:10 am
by anyonebutnoone
Hello jllort, thank you for your answer,

indeed i found two entrys in OKM_NODE_CATEGORY in NCT_CATEGORY

Sow you say if I delete these two entrys i will be able to acces the categorie and files that are missing again?

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Thu Apr 10, 2014 11:55 am
by jllort
Ye, deleting these entries your system go right again, Basically here you're unlinking with non existing categories node ( nodes has been deleted but still exist the reference in this table , it's a know and solved bug on next release ).

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Sat Apr 12, 2014 1:18 pm
by anyonebutnoone
OK, i deleted the two lines but now i still cant access the files and get a nother error message.
Code: Select all
No row with the given identifier exists: [com.openkm.dao.bean.NodeFolder#fccaaa3a-ef18-4daa-a9cf-ac9fe61e1305]/

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Sun Apr 13, 2014 2:29 pm
by jllort
I should take a look at log error, copy only the stack trace to see what's happening

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Mon Apr 14, 2014 11:23 am
by anyonebutnoone
Im not sure if you need more, this is what heppens when i open the folder that has missing files in the Taxonomie
Code: Select all
2014-04-14 11:05:07,369 [http-bio-0.0.0.0-8080-exec-4803] ERROR com.openkm.servlet.frontend.DocumentServlet - No row with the given identifier exists: [com.openkm.dao.bean.NodeFolder#fccaaa3a-ef18-4daa-a9cf-ac9fe61e1305]
com.openkm.core.DatabaseException: No row with the given identifier exists: [com.openkm.dao.bean.NodeFolder#fccaaa3a-ef18-4daa-a9cf-ac9fe61e1305]
	at com.openkm.dao.NodeFolderDAO.resolveCategories(NodeFolderDAO.java:585)
	at com.openkm.module.db.base.BaseDocumentModule.getProperties(BaseDocumentModule.java:238)
	at com.openkm.module.db.DbDocumentModule.getChildren(DbDocumentModule.java:568)
	at com.openkm.api.OKMDocument.getChildren(OKMDocument.java:145)
	at com.openkm.servlet.frontend.DocumentServlet.getChilds(DocumentServlet.java:129)
	at sun.reflect.GeneratedMethodAccessor420.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
	at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
	at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
	at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:101)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
	at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
	at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:173)
	at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
	at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.openkm.dao.bean.NodeFolder#fccaaa3a-ef18-4daa-a9cf-ac9fe61e1305]
	at org.hibernate.impl.SessionFactoryImpl$2.handleEntityNotFound(SessionFactoryImpl.java:435)
	at org.hibernate.proxy.AbstractLazyInitializer.checkTargetState(AbstractLazyInitializer.java:189)
	at org.hibernate.proxy.AbstractLazyInitializer.initialize(AbstractLazyInitializer.java:178)
	at org.hibernate.proxy.AbstractLazyInitializer.getImplementation(AbstractLazyInitializer.java:215)
	at org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer.invoke(JavassistLazyInitializer.java:190)
	at com.openkm.dao.bean.NodeFolder_$$_javassist_112.getUuid(NodeFolder_$$_javassist_112.java)
	at com.openkm.module.db.stuff.DbSimpleAccessManager.isGranted(DbSimpleAccessManager.java:63)
	at com.openkm.dao.NodeFolderDAO.resolveCategories(NodeFolderDAO.java:572)
	... 52 more

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Tue Apr 15, 2014 9:24 am
by jllort
Seems is other category folder removed. You should select all category node you got on table and do minimal script to test if really exists or not.

import com.openkm.api-*;
String uuid = "the uuid";
OKMFolder.getInstance().isValid(null, uuid);

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Tue Apr 15, 2014 4:21 pm
by anyonebutnoone
Im not to familiar with the opnekm scripting so when coping your lines i get an error on the first line
Code: Select all
Parse error at line 1, column 22. Encountered: -
removing the - or the * does not help, with them removed i run in to an instance call error
Code: Select all
Sourced file: inline evaluation of: ``import com.openkm.api; String uuid = "the uuid"; OKMFolder.getInstance().isVal . . . '' : Attempt to resolve method: getInstance() on undefined variable or class name: OKMFolder : at Line: 3 : in file: inline evaluation of: ``import com.openkm.api; String uuid = "the uuid"; OKMFolder.getInstance().isVal . . . '' : OKMFolder .getInstance ( ) 

Re: OKM-002024(GetDocumentChilds): Datenbankfehler

PostPosted:Thu Apr 17, 2014 7:30 am
by jllort
Here you get the available methods in OKMFolder http://doxygen.openkm.com/openkm/d0/dd8 ... older.html

this section of code was wrong
import com.openkm.api.*;

You should change String uuid = your documents uuid value

If you do not have minimal java skills it will take a lot of time to you.