• Dashboard search error

  • We tried to make OpenKM as intuitive as possible, but an advice is always welcome.
We tried to make OpenKM as intuitive as possible, but an advice is always welcome.
Forum rules: Please, before asking something see the documentation wiki or use the search feature of the forum. And remember we don't have a crystal ball or mental readers, so if you post about an issue tell us which OpenKM are you using and also the browser and operating system version. For more info read How to Report Bugs Effectively.
 #40844  by farkinid
 
Hi there,

I was testing OpenKM and had successfully set up a running headless server. The final test was to delete everything and restore from backup. After restoring from backup (using rdiff-backup and restoring from a .sql), tomcat server seemed to be running fine. During usage of the new server, I ran into a problem with the dashboard search. It throws an error when searching for a keyword that was entered in the original server. Please see the screenshot for error.

Creation and search of new keywords show no problems. Its only 1 keyword that causes issues. I am not sure where to begin fixing the problem therefore I'm looking for some help/direction.

Thanks.

farkinid
Attachments
search_err.jpg
search_err.jpg (128.45 KiB) Viewed 3761 times
 #40855  by jllort
 
Reproduce the problem again, and then copy here the stack trace error you will see at the end of catalina.log file ( seems the problems comes from a Mail, but is needed take a look in more deep ).
 #40872  by farkinid
 
Hi jllort,

I tried to post earlier but it seems that my posting requires administrator review. So here I am trying to post again. Anyways, below is the snippet of the stack trace that you have requested.
Code: Select all
2015-11-16 09:32:23,485 [http-bio-0.0.0.0-8080-exec-10] ERROR com.openkm.servlet.frontend.SearchServlet- No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
com.openkm.core.DatabaseException: No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
	at com.openkm.dao.SearchDAO.findByQuery(SearchDAO.java:161)
	at com.openkm.module.db.DbSearchModule.findSimpleQueryPaginated(DbSearchModule.java:1027)
	at com.openkm.api.OKMSearch.findSimpleQueryPaginated(OKMSearch.java:270)
	at com.openkm.servlet.frontend.SearchServlet.findSimpleQueryPaginated(SearchServlet.java:301)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	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:650)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	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:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
	at org.hibernate.impl.SessionFactoryImpl$2.handleEntityNotFound(SessionFactoryImpl.java:435)
	at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:320)
	at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:277)
	at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:152)
	at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:1090)
	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:1005)
	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:998)
	at org.hibernate.search.impl.FullTextSessionImpl.get(FullTextSessionImpl.java:396)
	at com.openkm.dao.NodeMailDAO.isMail(NodeMailDAO.java:198)
	at com.openkm.dao.SearchDAO.addResult(SearchDAO.java:490)
	at com.openkm.dao.SearchDAO.runQueryLucene(SearchDAO.java:253)
	at com.openkm.dao.SearchDAO.findByQuery(SearchDAO.java:140)
	... 56 more
2015-11-16 09:35:33,118 [Update Info] INFO  com.openkm.core.UpdateInfo- *** UpdateInfo activated ***
2015-11-16 09:37:40,701 [Update Info] ERROR com.openkm.util.Update- IOException: Connection timed out
2015-11-16 09:37:40,701 [Update Info] INFO  com.openkm.util.Update- checkVersion: 
I also noticed that there are 2 keywords that result in this same error. These keywords are also the names of 2 directories under the root directory in the taxonomy. For example, under root, I have a directory named Tax. Some files (within and without the Tax directory) also have the keyword tax. When I search for the word tax, it results in this error. I am not sure why.
 #40876  by pavila
 
Can you reproduce the error in a recent night build?
 #40880  by farkinid
 
I downloaded the 6.3.1 nightly build and replaced the older war file. However the error still persists. Below is the stack trace you might want
Code: Select all
2015-11-18 14:38:22,620 [http-bio-0.0.0.0-8080-exec-6] ERROR com.openkm.servlet.frontend.SearchServlet- No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
com.openkm.core.DatabaseException: No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
	at com.openkm.dao.SearchDAO.findByQuery(SearchDAO.java:161)
	at com.openkm.module.db.DbSearchModule.findSimpleQueryPaginated(DbSearchModule.java:1027)
	at com.openkm.api.OKMSearch.findSimpleQueryPaginated(OKMSearch.java:270)
	at com.openkm.servlet.frontend.SearchServlet.findSimpleQueryPaginated(SearchServlet.java:301)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	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:650)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	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:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.hibernate.ObjectNotFoundException: No row with the given identifier exists: [com.openkm.dao.bean.NodeMail#8a359f2f-6b22-4903-91f1-3f975a6403f7]
	at org.hibernate.impl.SessionFactoryImpl$2.handleEntityNotFound(SessionFactoryImpl.java:435)
	at org.hibernate.event.def.DefaultLoadEventListener.returnNarrowedProxy(DefaultLoadEventListener.java:320)
	at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:277)
	at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:152)
	at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:1090)
	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:1005)
	at org.hibernate.impl.SessionImpl.get(SessionImpl.java:998)
	at org.hibernate.search.impl.FullTextSessionImpl.get(FullTextSessionImpl.java:396)
	at com.openkm.dao.NodeMailDAO.isMail(NodeMailDAO.java:198)
	at com.openkm.dao.SearchDAO.addResult(SearchDAO.java:490)
	at com.openkm.dao.SearchDAO.runQueryLucene(SearchDAO.java:253)
	at com.openkm.dao.SearchDAO.findByQuery(SearchDAO.java:140)
	... 56 more
Additional info you might require :-
  1. Hardware : Virtualbox Virtual machine
  2. Operating System : Debian Jessie 64-bit (x86_74)
  3. Type : Openkm-6.3.1-tomcat-bundle.zip
  4. SQL version : MySQL5.5
  5. Java version : OpenJDK-7
  6. Office suite : LibreOffice installed
Please note that this is a fresh install with only OpenKM related programmes installed.
 #40900  by pavila
 
It seems the Lucene data is not in sync with database contents. Please, go to Administration > Utilities > Rebuild indexes and choose "Optmize indexes".

Tell me if after doing it, this works.
 #40951  by farkinid
 
Hi pavila,

I've done as you asked and its fixed the issue. Thank you very much and sorry for the delay in reply.

On a different note, I realised what happened and why this error occured. When I reinstalled system, I moved from MySQL 5.5 to MySQL 5.6. It only occurred me to after comparing the installation notes on both older and newer installs.

Thank you!

farkinid

About Us

OpenKM is part of the management software. A management software is a program that facilitates the accomplishment of administrative tasks. OpenKM is a document management system that allows you to manage business content and workflow in a more efficient way. Document managers guarantee data protection by establishing information security for business content.