java.lang.NoSuchFieldError: alwaysUseFieldBuilders

742 views
Skip to first unread message

beho

unread,
Sep 14, 2011, 6:17:54 PM9/14/11
to Akka User List
Hi,

I'm trying to use Akka as a basis for parallelisation of a long
running task. I want to employ remote actors for communication between
nodes. The problem is that the message send (! and !!) to a remote
actor results in the following exception:

ava.lang.NoSuchFieldError: alwaysUseFieldBuilders
at akka.remote.protocol.RemoteProtocol$UuidProtocol.access
$13100(RemoteProtocol.java:8419)
at akka.remote.protocol.RemoteProtocol$UuidProtocol
$Builder.maybeForceBuilderInitialization(RemoteProtocol.java:8630)
at akka.remote.protocol.RemoteProtocol$UuidProtocol
$Builder.<init>(RemoteProtocol.java:8622)
at akka.remote.protocol.RemoteProtocol$UuidProtocol
$Builder.create(RemoteProtocol.java:8634)
at akka.remote.protocol.RemoteProtocol$UuidProtocol$Builder.access
$12900(RemoteProtocol.java:8607)
at akka.remote.protocol.RemoteProtocol
$UuidProtocol.newBuilder(RemoteProtocol.java:8594)
at akka.serialization.RemoteActorSerialization
$.createRemoteMessageProtocolBuilder(SerializationProtocol.scala:294)
at akka.remote.netty.RemoteClient.send(NettyRemoteSupport.scala:235)
at akka.remote.netty.NettyRemoteClientModule$$anonfun$send
$1.apply(NettyRemoteSupport.scala:94)
at akka.remote.netty.NettyRemoteClientModule$$anonfun$send
$1.apply(NettyRemoteSupport.scala:94)
at akka.remote.netty.NettyRemoteClientModule
$class.withClientFor(NettyRemoteSupport.scala:119)
at
akka.remote.netty.NettyRemoteSupport.withClientFor(NettyRemoteSupport.scala:
649)
at akka.remote.netty.NettyRemoteClientModule
$class.send(NettyRemoteSupport.scala:94)
at akka.remote.netty.NettyRemoteSupport.send(NettyRemoteSupport.scala:
649)
at akka.actor.RemoteActorRef.postMessageToMailbox(ActorRef.scala:
1234)
at akka.actor.ScalaActorRef$class.$bang(ActorRef.scala:1400)
at akka.actor.RemoteActorRef.$bang(ActorRef.scala:1207)
at motifs.actors.NodeMaster.preStart(motifs-actors.scala:85)
at akka.actor.LocalActorRef.akka$actor$LocalActorRef$
$initializeActorInstance(ActorRef.scala:1173)
at akka.actor.LocalActorRef$$anonfun$start$1.apply(ActorRef.scala:
704)
at akka.actor.LocalActorRef$$anonfun$start$1.apply(ActorRef.scala:
694)
at akka.util.ReentrantGuard.withGuard(LockUtil.scala:20)
at akka.actor.LocalActorRef.start(ActorRef.scala:694)
at akka.actor.LocalActorRef.start(ActorRef.scala:605)
at Main$.main(motifs-run.scala:106)
at Main.main(motifs-run.scala)
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 scala.tools.nsc.util.ScalaClassLoader$$anonfun$run
$1.apply(ScalaClassLoader.scala:78)
at scala.tools.nsc.util.ScalaClassLoader
$class.asContext(ScalaClassLoader.scala:24)
at scala.tools.nsc.util.ScalaClassLoader
$URLClassLoader.asContext(ScalaClassLoader.scala:88)
at scala.tools.nsc.util.ScalaClassLoader
$class.run(ScalaClassLoader.scala:78)
at scala.tools.nsc.util.ScalaClassLoader
$URLClassLoader.run(ScalaClassLoader.scala:101)
at scala.tools.nsc.ObjectRunner$.run(ObjectRunner.scala:33)
at scala.tools.nsc.ObjectRunner$.runAndCatch(ObjectRunner.scala:40)
at scala.tools.nsc.ScriptRunner.scala$tools$nsc$ScriptRunner$
$runCompiled(ScriptRunner.scala:180)
at scala.tools.nsc.ScriptRunner$$anonfun$runScript
$1.apply(ScriptRunner.scala:197)
at scala.tools.nsc.ScriptRunner$$anonfun$runScript
$1.apply(ScriptRunner.scala:197)
at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1$$anonfun
$apply$mcZ$sp$1.apply(ScriptRunner.scala:166)
at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1$$anonfun
$apply$mcZ$sp$1.apply(ScriptRunner.scala:166)
at scala.Option.exists(Option.scala:188)
at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript$1.apply
$mcZ$sp(ScriptRunner.scala:166)
at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript
$1.apply(ScriptRunner.scala:140)
at scala.tools.nsc.ScriptRunner$$anonfun$withCompiledScript
$1.apply(ScriptRunner.scala:140)
at scala.tools.nsc.util.package$.waitingForThreads(package.scala:26)
at scala.tools.nsc.ScriptRunner.withCompiledScript(ScriptRunner.scala:
139)
at scala.tools.nsc.ScriptRunner.runScript(ScriptRunner.scala:197)
at scala.tools.nsc.ScriptRunner.runScriptAndCatch(ScriptRunner.scala:
210)
at scala.tools.nsc.MainGenericRunner.runTarget
$1(MainGenericRunner.scala:58)
at scala.tools.nsc.MainGenericRunner.process(MainGenericRunner.scala:
80)
at scala.tools.nsc.MainGenericRunner$.main(MainGenericRunner.scala:
89)
at scala.tools.nsc.MainGenericRunner.main(MainGenericRunner.scala)

Same exception is thrown when trying to run minimal remote sample from
https://github.com/jboner/akka/tree/master/akka-samples/akka-sample-remote/
.The default config file is in use.

java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03-383-11A511)
Java HotSpot(TM) 64-Bit Server VM (build 20.1-b02-383, mixed mode)

Scala code runner version 2.9.1.final -- Copyright 2002-2011, LAMP/
EPFL

Akka 1.2RC6


Thanks in advance for any help.

Bruce Mitchener

unread,
Sep 15, 2011, 2:38:46 AM9/15/11
to akka...@googlegroups.com
You've got an older (non 2.4.1, I think) version of Google Protocol Buffers around.  If you're unlucky, you might even have 2 or 3 versions around. :)

 - Bruce


--
You received this message because you are subscribed to the Google Groups "Akka User List" group.
To post to this group, send email to akka...@googlegroups.com.
To unsubscribe from this group, send email to akka-user+...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/akka-user?hl=en.


beho

unread,
Sep 15, 2011, 4:12:18 AM9/15/11
to Akka User List
Then the problem seems to be that akka-microkernel package contains
both protobuf-java-2.3.0 and protobuf-java-2.4.1. After removing
2.3.0, exception disappeared. Akka-core contains only protobuf-
java-2.4.1.

Thank you !
> >https://github.com/jboner/akka/tree/master/akka-samples/akka-sample-r...

√iktor Ҡlang

unread,
Sep 15, 2011, 4:04:18 PM9/15/11
to akka...@googlegroups.com
On Thu, Sep 15, 2011 at 10:12 AM, beho <spe...@gmail.com> wrote:
Then the problem seems to be that akka-microkernel package contains
both protobuf-java-2.3.0 and protobuf-java-2.4.1. After removing
2.3.0, exception disappeared. Akka-core contains only protobuf-
java-2.4.1.

That's awkward, can you open a ticket for 1.2?

Cheers,

 



--
Viktor Klang

Akka Tech Lead
Typesafe - Enterprise-Grade Scala from the Experts

Twitter: @viktorklang

beho

unread,
Sep 18, 2011, 11:31:52 AM9/18/11
to Akka User List
done.

https://www.assembla.com/spaces/akka/tickets/1211-two-versions-of-protobuf-java-in-microkernel
> Typesafe <http://www.typesafe.com/> - Enterprise-Grade Scala from the
> Experts
>
> Twitter: @viktorklang
Reply all
Reply to author
Forward
0 new messages