Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Fixed
-
1.0.0
-
None
-
None
-
Single Server with one Nutch instance in DistributedSearchServerMode, not in PseudoDistirubutedMode
-
Patch Available
Description
I run Nutch on a single server, I have two crawl directories, that's why I use Nutch in distributed search server mode as described in the hadoop manual.
But since I have a new Trunk Version (04.02.2009) it fails. Local search on one index works fine. But distributed search throws following exception:
In catalina.out (server)
2009-02-18 17:08:14,906 ERROR NutchBean - org.apache.hadoop.ipc.RemoteException: java.io.IOException: Unknown Protocol classname:org.apache.nutch.searcher.RPCSegmentBean
at org.apache.nutch.searcher.NutchBean.getProtocolVersion(NutchBean.java:403)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:452)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:892)
at org.apache.hadoop.ipc.Client.call(Client.java:696)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:216)
at $Proxy4.getProtocolVersion(Unknown Source)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:319)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:306)
at org.apache.hadoop.ipc.RPC.getProxy(RPC.java:343)
at org.apache.nutch.searcher.DistributedSegmentBean.<init>(DistributedSegmentBean.java:103)
at org.apache.nutch.searcher.NutchBean.<init>(NutchBean.java:111)
at org.apache.nutch.searcher.NutchBean.<init>(NutchBean.java:80)
at org.apache.nutch.searcher.NutchBean$NutchBeanConstructor.contextInitialized(NutchBean.java:422)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
at org.apache.catalina.core.StandardContext.reload(StandardContext.java:3099)
at org.apache.catalina.manager.ManagerServlet.reload(ManagerServlet.java:913)
at org.apache.catalina.manager.HTMLManagerServlet.reload(HTMLManagerServlet.java:536)
at org.apache.catalina.manager.HTMLManagerServlet.doGet(HTMLManagerServlet.java:114)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:269)
at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:81)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
And in Hadoop.log:
2009-02-18 17:07:52,847 INFO ipc.Server - IPC Server handler 48 on 13001: starting
2009-02-18 17:07:52,847 INFO ipc.Server - IPC Server handler 49 on 13001: starting
2009-02-18 17:07:52,847 INFO ipc.Server - IPC Server handler 40 on 13001: starting
2009-02-18 17:08:14,675 INFO ipc.RPC - Call: getProtocolVersion(org.apache.nutch.searcher.RPCS...
2009-02-18 17:08:14,857 INFO ipc.RPC - Return: 1
2009-02-18 17:08:14,878 INFO ipc.RPC - Call: getProtocolVersion(org.apache.nutch.searcher.RPCS...
2009-02-18 17:08:14,879 INFO ipc.Server - IPC Server handler 0 on 13001, call getProtocolVersion(org.apache.nutch.searcher.RPCSegmentBean, 1) from 78.46.86.99:40851: error: java.io.IOException: Unknown Protocol classname:org.apache.nutch.searcher.RPCSegmentBean
java.io.IOException: Unknown Protocol classname:org.apache.nutch.searcher.RPCSegmentBean
at org.apache.nutch.searcher.NutchBean.getProtocolVersion(NutchBean.java:403)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:452)
at org.apache.hadoop.ipc.Server$Handler.run(Server.java:892)
2009-02-18 17:08:14,879 INFO ipc.RPC - Call: ping()
2009-02-18 17:08:14,938 INFO ipc.RPC - Return: true
2009-02-18 17:08:24,876 INFO ipc.RPC - Call: ping()
We do not run Nutch in PseudoDistributedMode. We only use the distributed search mode. With Nutch-0.9 this was working properly.