LockObtainFailedException &sun.misc.Unsafe is a restricted class

89 views
Skip to first unread message

cxc...@ualr.edu

unread,
Feb 16, 2013, 4:18:04 PM2/16/13
to lucene-a...@googlegroups.com
What steps will reproduce the problem?
1. I built index when parsing the "TheFirstOne.txt"
2. And use the index to search the content of "TheFirstOne.txt"
3. I test all things in search.jsp using google plugin for eclipse.

What is the expected output? What do you see instead?
The error is shown as below.
INFO: Time to load datastore: 260 ms
org.apache.lucene.store.LockObtainFailedException: Lock obtain timed out: com.googlecode.lucene.appengine.GaeLockFactory$1@1b9ef36
	at org.apache.lucene.store.Lock.obtain(Lock.java:84)
	at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:602)
	at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:85)
	at org.apache.jsp.search_jsp._jspService(search_jsp.java:65)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23)
	at com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:59)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:57)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
	at com.google.appengine.api.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:123)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:61)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97)
	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
	at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:94)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:383)
	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
	at org.mortbay.jetty.Server.handle(Server.java:326)
	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
	at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938)
	at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755)
	at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
	at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
	at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)

What version of the product are you using? On what operating system?
I used appengine-api-1.0-sdk-1.7.4.jar, lucene-appengine-4.0.0.jar, lucene-queryparser-4.0.0.jar, lucene-core-4.0.0.jar and lucene-analyzers-common-4.0.0.jar. And my eclipse version is Juno. And JDK version is 1.6.


More problems:

And when I deploy my code to googe app engine. I run it. It gives me the errors as below:
  1. W2013-02-16 12:52:35.353
    [s~oysteridentityexplorer/2.365353514586674566].<stderr>: SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
    
    
  2. W2013-02-16 12:52:35.355
    [s~oysteridentityexplorer/2.365353514586674566].<stderr>: SLF4J: Defaulting to no-operation (NOP) logger implementation
    
    
  3. W2013-02-16 12:52:35.355
    [s~oysteridentityexplorer/2.365353514586674566].<stderr>: SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
    
    
  4. W2013-02-16 12:52:37.735
    /search.jsp
    java.lang.NoClassDefFoundError: sun.misc.Unsafe is a restricted class. Please see the Google App Engine developer's guide for more details.
    	at com.google.appengine.runtime.Request.process-c5a413979102c554(Request.java)
    	at sun.misc.Unsafe.<clinit>(Unsafe.java)
    	at java.lang.reflect.Method.invoke(Method.java:43)
    	at org.apache.lucene.util.RamUsageEstimator.<clinit>(RamUsageEstimator.java:162)
    	at org.apache.lucene.index.BufferedDeletes.<clinit>(BufferedDeletes.java:52)
    	at org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>(DocumentsWriterDeleteQueue.java:86)
    	at org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>(DocumentsWriterDeleteQueue.java:82)
    	at org.apache.lucene.index.DocumentsWriter.<init>(DocumentsWriter.java:117)
    	at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:665)
    	at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:85)
    	at org.apache.jsp.search_jsp._jspService(search_jsp.java:60)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:326)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    	at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:454)
    	at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:461)
    	at com.google.tracing.TraceContext.runInContext(TraceContext.java:703)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:338)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:330)
    	at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:458)
    	at java.lang.Thread.run(Thread.java:679)
    
  5. C2013-02-16 12:52:37.965
    Uncaught exception from servlet
    java.lang.NoClassDefFoundError: sun.misc.Unsafe is a restricted class. Please see the Google App Engine developer's guide for more details.
    	at com.google.appengine.runtime.Request.process-c5a413979102c554(Request.java)
    	at sun.misc.Unsafe.<clinit>(Unsafe.java)
    	at java.lang.reflect.Method.invoke(Method.java:43)
    	at org.apache.lucene.util.RamUsageEstimator.<clinit>(RamUsageEstimator.java:162)
    	at org.apache.lucene.index.BufferedDeletes.<clinit>(BufferedDeletes.java:52)
    	at org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>(DocumentsWriterDeleteQueue.java:86)
    	at org.apache.lucene.index.DocumentsWriterDeleteQueue.<init>(DocumentsWriterDeleteQueue.java:82)
    	at org.apache.lucene.index.DocumentsWriter.<init>(DocumentsWriter.java:117)
    	at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:665)
    	at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:85)
    	at org.apache.jsp.search_jsp._jspService(search_jsp.java:60)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:326)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    	at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:454)
    	at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:461)
    	at com.google.tracing.TraceContext.runInContext(TraceContext.java:703)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:338)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:330)
    	at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:458)
    	at java.lang.Thread.run(Thread.java:679)
    
  6. I2013-02-16 12:52:37.967
    This request caused a new process to be started for your application, and thus caused your application code to be loaded for the first time. This request may thus take longer and use more CPU than a typical request for your application.

cxc...@ualr.edu

unread,
Feb 16, 2013, 4:20:19 PM2/16/13
to lucene-a...@googlegroups.com
CreateIndex.java
SearchIdentity.java

cxc...@ualr.edu

unread,
Feb 16, 2013, 4:23:51 PM2/16/13
to lucene-a...@googlegroups.com
"search.jsp" and "TheFirstOne.txt " can be downloaded from the following page.

http://code.google.com/p/lucene-appengine/issues/detail?id=2

Fabio Grucci

unread,
Feb 16, 2013, 4:34:56 PM2/16/13
to lucene-a...@googlegroups.com
Hello for the problem java.lang.NoClassDefFoundError: sun.misc.Unsafe there is wiki page that explains cause and solution named deploy issue ram usage estimator .

Then your problem with the org.apache.lucene.store.LockObtainFailedException is probably related to the first one so first resolve that to see if this is automatically resolved, if not so it is related to an inconsistent state of your indexing directory stored into bigtable. No worry! Just go into Google AppEngine administration -> Datastore viewer, select GaeLock entity and delete all the entities, by doing that you will unlock every Lucene index that was locked for any reason.

Thank you for using LAE!

cxc...@ualr.edu

unread,
Feb 16, 2013, 5:33:16 PM2/16/13
to lucene-a...@googlegroups.com
Hi~~ I have solved the org.apache.luncen.store.LockObtainFailedException according to your suggestion. I really appreciate it!!!~~

But I got another problem when I tried to build index for anthor txt (about 60MB). I am wondering is this problem also related to index? The problem is shown as below.

java.lang.ArrayIndexOutOfBoundsException: 0
at com.googlecode.lucene.appengine.SegmentIndexInput.readByte(SegmentIndexInput.java:74)
at com.googlecode.lucene.appengine.SegmentIndexInput.readBytes(SegmentIndexInput.java:85)
at org.apache.lucene.store.DataOutput.copyBytes(DataOutput.java:254)
at org.apache.lucene.store.Directory.copy(Directory.java:200)
at org.apache.lucene.index.IndexWriter.createCompoundFile(IndexWriter.java:4264)
at org.apache.lucene.index.IndexWriter.prepareFlushedSegment(IndexWriter.java:2148)
at org.apache.lucene.index.DocumentsWriter.publishFlushedSegment(DocumentsWriter.java:509)
at org.apache.lucene.index.DocumentsWriter.finishFlush(DocumentsWriter.java:487)
at org.apache.lucene.index.DocumentsWriterFlushQueue$SegmentFlushTicket.publish(DocumentsWriterFlushQueue.java:204)
at org.apache.lucene.index.DocumentsWriterFlushQueue.innerPurge(DocumentsWriterFlushQueue.java:118)
at org.apache.lucene.index.DocumentsWriterFlushQueue.forcePurge(DocumentsWriterFlushQueue.java:137)
at org.apache.lucene.index.DocumentsWriter.doFlush(DocumentsWriter.java:445)
at org.apache.lucene.index.DocumentsWriter.flushAllThreads(DocumentsWriter.java:565)
at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:2967)
at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:2943)
at org.apache.lucene.index.IndexWriter.closeInternal(IndexWriter.java:904)
at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:859)
at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:821)
at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:212)
at org.apache.jsp.Indexing_jsp._jspService(Indexing_jsp.java:69)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
at com.google.appengine.tools.development.PrivilegedJspServlet.access$101(PrivilegedJspServlet.java:23)
at com.google.appengine.tools.development.PrivilegedJspServlet$2.run(PrivilegedJspServlet.java:59)
at java.security.AccessController.doPrivileged(Native Method)
at com.google.appengine.tools.development.PrivilegedJspServlet.service(PrivilegedJspServlet.java:57)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
at com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
at com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:94)
at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:327)
at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
at com.google.appengine.tools.development.StaticFileUtils.serveWelcomeFileAsForward(StaticFileUtils.java:85)
at com.google.appengine.tools.development.LocalResourceFileServlet.maybeServeWelcomeFile(LocalResourceFileServlet.java:254)
at com.google.appengine.tools.development.LocalResourceFileServlet.doGet(LocalResourceFileServlet.java:120)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)

Fabio Grucci

unread,
Feb 16, 2013, 6:13:07 PM2/16/13
to lucene-a...@googlegroups.com
Yes, there is a problem in the index, go into Datastore Viewer and delete all the entry for all index related entities LuceneIndex, Segment and SegmentHunk. 

cxc...@ualr.edu

unread,
Feb 16, 2013, 6:23:40 PM2/16/13
to lucene-a...@googlegroups.com
Is there any size limitation of the file being indexed?

cxc...@ualr.edu

unread,
Feb 16, 2013, 6:54:06 PM2/16/13
to lucene-a...@googlegroups.com
I have solved all these two problems. When I try to run it in app engine, new problem came out..... Google app engine is driving me crazy....

  1. W2013-02-16 15:51:37.131
    /search.jsp
    java.lang.NullPointerException
    	at org.apache.lucene.store.DataOutput.writeString(DataOutput.java:234)
    	at org.apache.lucene.store.DataOutput.writeStringStringMap(DataOutput.java:276)
    	at org.apache.lucene.codecs.lucene40.Lucene40SegmentInfoWriter.write(Lucene40SegmentInfoWriter.java:60)
    	at org.apache.lucene.index.IndexWriter.prepareFlushedSegment(IndexWriter.java:2160)
    	at org.apache.lucene.index.DocumentsWriter.publishFlushedSegment(DocumentsWriter.java:509)
    	at org.apache.lucene.index.DocumentsWriter.finishFlush(DocumentsWriter.java:487)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue$SegmentFlushTicket.publish(DocumentsWriterFlushQueue.java:204)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue.innerPurge(DocumentsWriterFlushQueue.java:118)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue.forcePurge(DocumentsWriterFlushQueue.java:137)
    	at org.apache.lucene.index.DocumentsWriter.doFlush(DocumentsWriter.java:445)
    	at org.apache.lucene.index.DocumentsWriter.flushAllThreads(DocumentsWriter.java:565)
    	at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:2967)
    	at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:2943)
    	at org.apache.lucene.index.IndexWriter.closeInternal(IndexWriter.java:904)
    	at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:859)
    	at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:821)
    	at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:212)
    	at org.apache.jsp.search_jsp._jspService(search_jsp.java:64)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    	at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
    	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:266)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:326)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
    	at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    	at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:146)
    	at com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:447)
    	at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:454)
    	at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:461)
    	at com.google.tracing.TraceContext.runInContext(TraceContext.java:703)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:338)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:330)
    	at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:458)
    	at com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
    	at java.lang.Thread.run(Thread.java:679)
    
  2. C2013-02-16 15:51:37.145
    Uncaught exception from servlet
    java.lang.NullPointerException
    	at org.apache.lucene.store.DataOutput.writeString(DataOutput.java:234)
    	at org.apache.lucene.store.DataOutput.writeStringStringMap(DataOutput.java:276)
    	at org.apache.lucene.codecs.lucene40.Lucene40SegmentInfoWriter.write(Lucene40SegmentInfoWriter.java:60)
    	at org.apache.lucene.index.IndexWriter.prepareFlushedSegment(IndexWriter.java:2160)
    	at org.apache.lucene.index.DocumentsWriter.publishFlushedSegment(DocumentsWriter.java:509)
    	at org.apache.lucene.index.DocumentsWriter.finishFlush(DocumentsWriter.java:487)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue$SegmentFlushTicket.publish(DocumentsWriterFlushQueue.java:204)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue.innerPurge(DocumentsWriterFlushQueue.java:118)
    	at org.apache.lucene.index.DocumentsWriterFlushQueue.forcePurge(DocumentsWriterFlushQueue.java:137)
    	at org.apache.lucene.index.DocumentsWriter.doFlush(DocumentsWriter.java:445)
    	at org.apache.lucene.index.DocumentsWriter.flushAllThreads(DocumentsWriter.java:565)
    	at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:2967)
    	at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:2943)
    	at org.apache.lucene.index.IndexWriter.closeInternal(IndexWriter.java:904)
    	at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:859)
    	at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:821)
    	at edu.ualr.oysterweb.CreateIndex.run(CreateIndex.java:212)
    	at org.apache.jsp.search_jsp._jspService(search_jsp.java:64)
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    	at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1166)
    	at com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlobUploadFilter.java:125)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionFilter.java:35)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
    	at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
    	at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
    	at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
    	at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
    	at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
    	at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
    	at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle(AppVersionHandlerMap.java:266)
    	at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
    	at org.mortbay.jetty.Server.handle(Server.java:326)
    	at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
    	at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:923)
    	at com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable(RpcRequestParser.java:76)
    	at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
    	at com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:146)
    	at com.google.apphosting.runtime.JavaRuntime$RequestRunnable.run(JavaRuntime.java:447)
    	at com.google.tracing.TraceContext$TraceContextRunnable.runInContext(TraceContext.java:454)
    	at com.google.tracing.TraceContext$TraceContextRunnable$1.run(TraceContext.java:461)
    	at com.google.tracing.TraceContext.runInContext(TraceContext.java:703)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContextNoUnref(TraceContext.java:338)
    	at com.google.tracing.TraceContext$AbstractTraceContextCallback.runInInheritedContext(TraceContext.java:330)
    	at com.google.tracing.TraceContext$TraceContextRunnable.run(TraceContext.java:458)
    	at com.google.apphosting.runtime.ThreadGroupPool$PoolEntry.run(ThreadGroupPool.java:251)
    	at java.lang.Thread.run(Thread.java:679)
    
  3. I2013-02-16 15:51:37.148

Fabio Grucci

unread,
Feb 16, 2013, 7:33:20 PM2/16/13
to lucene-a...@googlegroups.com
Can you post the edu.ualr.oysterweb.CreateIndex class?  Are you indexing <null> values?

cxc...@ualr.edu

unread,
Feb 16, 2013, 7:53:39 PM2/16/13
to lucene-a...@googlegroups.com
CreateIndex.java

Fabio Grucci

unread,
Feb 17, 2013, 9:17:27 AM2/17/13
to lucene-a...@googlegroups.com

I've tried your class into my test suite with TheFirstOne.txt as input and no error occurs.


Your class print this:

Total Clusters are: 586

Total Records are:1000


Check your war to see if there are multiple Lucene versions into WEB-INF/lib.

If you don't resolve the problem feel free to send me all your source code as zip so I can check and resolve your troubles in a shorter time.

TheFirstOne.txt

cxc...@ualr.edu

unread,
Feb 17, 2013, 5:02:21 PM2/17/13
to lucene-a...@googlegroups.com
Actually it works well when I run it in google plugin of eclipse. But the error happened when run it after deploy into google app engine server. The attachment is the source code. 

Thanks for your time and help a lot a lot.
OysterIdentityGoogleExplorer.rar

Fabio Grucci

unread,
Feb 19, 2013, 8:10:17 AM2/19/13
to
Last night I've investigated the trouble, probably there is a problem related to TextField.TYPE_STORED, try to replace it with new instances of FieldType created by a method like below:

private static FieldType newType() {
   
FieldType newType = new FieldType();
    newType
.setIndexed(true);
    newType
.setStored(true);
    newType
.setTokenized(true);
        return newType;
}



Fabio Grucci

unread,
Feb 19, 2013, 8:34:49 AM2/19/13
to lucene-a...@googlegroups.com
Starting from LAE examples I've integrated your project and everything works, zip attached.
NB: change "gae.application.name" and "gae.serverId" properties in the pom.xml to deploy the application into your appengine server, more details here.
nullpointer-fixed.zip

cxc...@ualr.edu

unread,
Feb 19, 2013, 3:41:54 PM2/19/13
to lucene-a...@googlegroups.com
It can work now~~~~
I really appreciate your help~~~~~~
Have a nice day~~~

Fabio Grucci

unread,
Feb 19, 2013, 6:45:26 PM2/19/13
to lucene-a...@googlegroups.com
It's been a pleasure to help you :)

Thanks to you for using Lucene AppEngine (LAE)!
Reply all
Reply to author
Forward
0 new messages