[ 
https://issues.apache.org/jira/browse/GIRAPH-601?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13617662#comment-13617662
 ] 

Eugene Koontz commented on GIRAPH-601:
--------------------------------------

Note that in one container, the master and the worker are both running. The 
Master binds to 30000:

{code}
2013-03-29 12:35:45,085 INFO [org.apache.giraph.master.MasterThread] 
org.apache.giraph.comm.netty.NettyServer: start: Started server communication 
server: Eugenes-MacBook-Pro.local/172.16.175.1:30000 with up to 16 threads on 
bind attempt 0 with sendBufferSize = 32768 receiveBufferSize = 524288 backlog = 
6
2013-03-29 12:35:45,092 INFO [org.apache.giraph.master.MasterThread] 
org.apache.giraph.comm.netty.NettyClient: NettyClient: Using execution handler 
with 8 threads after requestEncoder.
2013-03-29 12:35:45,097 INFO [org.apache.giraph.master.MasterThread] 
org.apache.giraph.master.BspServiceMaster: becomeMaster: I am now the master!
{code}

The worker NettyServer tries to take the same port to listen on (30000), and 
fails because the Master's NettyServer already acquired it. So, the worker 
tries again with a new port number (30010) and succeeds on listening on that:

{code}
2013-03-29 12:35:45,097 WARN [main] org.apache.giraph.comm.netty.NettyServer: 
start: Likely failed to bind on attempt 0 to port 30000
org.jboss.netty.channel.ChannelException: Failed to bind to: 
Eugenes-MacBook-Pro.local/172.16.175.1:30000
        at 
org.jboss.netty.bootstrap.ServerBootstrap.bind(ServerBootstrap.java:298)
        at org.apache.giraph.comm.netty.NettyServer.start(NettyServer.java:324)
        at 
org.apache.giraph.comm.netty.NettyWorkerServer.<init>(NettyWorkerServer.java:101)
        at 
org.apache.giraph.worker.BspServiceWorker.<init>(BspServiceWorker.java:184)
        at 
org.apache.giraph.graph.GraphTaskManager.instantiateBspService(GraphTaskManager.java:557)
        at 
org.apache.giraph.graph.GraphTaskManager.setup(GraphTaskManager.java:206)
        at org.apache.giraph.graph.GraphMapper.setup(GraphMapper.java:60)
        at org.apache.giraph.graph.GraphMapper.run(GraphMapper.java:90)
        at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:757)
        at org.apache.hadoop.mapred.MapTask.run(MapTask.java:339)
        at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:158)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:396)
        at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1441)
        at org.apache.hadoop.mapred.YarnChild.main(YarnChild.java:153)
Caused by: java.net.BindException: Address already in use
        at sun.nio.ch.Net.bind(Native Method)
        at 
sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:124)
        at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.bind(NioServerSocketPipelineSink.java:138)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.handleServerSocket(NioServerSocketPipelineSink.java:90)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketPipelineSink.eventSunk(NioServerSocketPipelineSink.java:64)
        at org.jboss.netty.channel.Channels.bind(Channels.java:569)
        at 
org.jboss.netty.channel.AbstractChannel.bind(AbstractChannel.java:187)
        at 
org.jboss.netty.bootstrap.ServerBootstrap$Binder.channelOpen(ServerBootstrap.java:343)
        at org.jboss.netty.channel.Channels.fireChannelOpen(Channels.java:170)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketChannel.<init>(NioServerSocketChannel.java:80)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory.newChannel(NioServerSocketChannelFactory.java:158)
        at 
org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory.newChannel(NioServerSocketChannelFactory.java:86)
        at 
org.jboss.netty.bootstrap.ServerBootstrap.bind(ServerBootstrap.java:277)
        ... 14 more
2013-03-29 12:35:45,101 INFO [main] org.apache.giraph.comm.netty.NettyServer: 
start: Started server communication server: 
Eugenes-MacBook-Pro.local/172.16.175.1:30010 with up to 16 threads on bind 
attempt 1 with sendBufferSize = 32768 receiveBufferSize = 524288 backlog = 6
{code}

                
> Exception when running pagerank benchmark: SendVertexRequest cannot be cast 
> to MasterRequest
> --------------------------------------------------------------------------------------------
>
>                 Key: GIRAPH-601
>                 URL: https://issues.apache.org/jira/browse/GIRAPH-601
>             Project: Giraph
>          Issue Type: Bug
>            Reporter: Eugene Koontz
>
> Building Giraph with:
> {code}
> mvn -DskipTests  -Phadoop_2.0.3 clean compile
> {code}
> Running pagerank like this:
> {code}
>  $HADOOP_RUNTIME/bin/hadoop jar $JAR \
>          org.apache.giraph.benchmark.PageRankBenchmark \
>         -e 10 -s 10 -v -V 10 -w 6
> {code}
> I see this in  
> /tmp/userlogs/application_1364578380737_0003/container_1364578380737_0003_01_000002/
>  :
> {code}
> 2013-03-29 10:58:06,371 DEBUG [org.apache.giraph.master.MasterThread] 
> org.apache.giraph.master.BspServiceMaster: barrierOnWorkerList: Got finished 
> worker list = [Eugenes-MacBook-Pro.local_1, Eugenes-MacBook-Pro.local_3], 
> size = 2, worker list = [Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=2, port=30002), Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=1, port=30001), Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=4, port=30004), Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=3, port=30003), Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=5, port=30005), Worker(hostname=Eugenes-MacBook-Pro.local, 
> MRtaskID=0, port=30010)], size = 6 from 
> /_hadoopBsp/job_1364578380737_0003/_vertexInputSplitDoneDir
> 2013-03-29 10:58:06,373 WARN [netty-server-exec-3] 
> org.apache.giraph.comm.netty.handler.RequestServerHandler: exceptionCaught: 
> Channel failed with remote address /172.16.175.1:56236
> java.lang.ClassCastException: 
> org.apache.giraph.comm.requests.SendVertexRequest cannot be cast to 
> org.apache.giraph.comm.requests.MasterRequest
>       at 
> org.apache.giraph.comm.netty.handler.MasterRequestServerHandler.processRequest(MasterRequestServerHandler.java:27)
>       at 
> org.apache.giraph.comm.netty.handler.RequestServerHandler.messageReceived(RequestServerHandler.java:106)
>       at 
> org.jboss.netty.channel.Channels.fireMessageReceived(Channels.java:296)
>       at 
> org.jboss.netty.handler.codec.oneone.OneToOneDecoder.handleUpstream(OneToOneDecoder.java:71)
>       at 
> org.jboss.netty.handler.execution.ChannelUpstreamEventRunnable.doRun(ChannelUpstreamEventRunnable.java:45)
>       at 
> org.jboss.netty.handler.execution.ChannelEventRunnable.run(ChannelEventRunnable.java:69)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
>       at java.lang.Thread.run(Thread.java:680)
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to