You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@thrift.apache.org by Jens Geyer <je...@hotmail.com> on 2013/08/01 01:07:00 UTC

Re: ava.lang.AbstractMethodError: org.apache.thrift.ProcessFunction.isOneway

Hi Avinash,

after doing a quick check over the java library I'm not quite sure whether 
this is a bug in the Thrift code or not. There are two declarations of 
isOneway(), both abstract. On the other hand, there are two occurences in 
the generator, where the missing overrides seem to be generated. The method 
is called only once, within ProcessFunction<I, T>.process(), exactly as your 
stack indicates.

I'd recommend that you try to provide a more complete, reproducible test 
case which wil help to track that down.

> AbstractMethodError should be compile time,  guess

Not necessarily. It just means, that there some virtual method gets called 
but there is no override for it. The compiler is not necessarily able to 
detect that.




-----Ursprüngliche Nachricht----- 
From: Avinash Dongre
Sent: Wednesday, July 31, 2013 1:39 PM
To: user@thrift.apache.org
Subject: ava.lang.AbstractMethodError: 
org.apache.thrift.ProcessFunction.isOneway

Hi all,
I think my older email did not reach.
I am getting following error. where should I look for possible cause.
AbstractMethodError should be compile time,  guess


Exception in thread "pool-1-thread-1" java.lang.AbstractMethodError:
org.apache.thrift.ProcessFunction.isOneway()Z
at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:51)
at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
at
com.gemfire.gemstone.thrift.hbase.ThreadPoolServer$ClientConnnection.run(Unknown
Source)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662) 


Re: ava.lang.AbstractMethodError: org.apache.thrift.ProcessFunction.isOneway

Posted by Bill Dortch <bi...@gmail.com>.
That's usually a classpath/version problem. Make sure the jars you're
running against are the same as the ones you compiled against.


On Wed, Jul 31, 2013 at 4:07 PM, Jens Geyer <je...@hotmail.com> wrote:

> Hi Avinash,
>
> after doing a quick check over the java library I'm not quite sure whether
> this is a bug in the Thrift code or not. There are two declarations of
> isOneway(), both abstract. On the other hand, there are two occurences in
> the generator, where the missing overrides seem to be generated. The method
> is called only once, within ProcessFunction<I, T>.process(), exactly as
> your stack indicates.
>
> I'd recommend that you try to provide a more complete, reproducible test
> case which wil help to track that down.
>
>  AbstractMethodError should be compile time,  guess
>>
>
> Not necessarily. It just means, that there some virtual method gets called
> but there is no override for it. The compiler is not necessarily able to
> detect that.
>
>
>
>
> -----Ursprüngliche Nachricht----- From: Avinash Dongre
> Sent: Wednesday, July 31, 2013 1:39 PM
> To: user@thrift.apache.org
> Subject: ava.lang.AbstractMethodError: org.apache.thrift.**
> ProcessFunction.isOneway
>
> Hi all,
> I think my older email did not reach.
> I am getting following error. where should I look for possible cause.
> AbstractMethodError should be compile time,  guess
>
>
> Exception in thread "pool-1-thread-1" java.lang.AbstractMethodError:
> org.apache.thrift.**ProcessFunction.isOneway()Z
> at org.apache.thrift.**ProcessFunction.process(**ProcessFunction.java:51)
> at org.apache.thrift.**TBaseProcessor.process(**TBaseProcessor.java:39)
> at
> com.gemfire.gemstone.thrift.**hbase.ThreadPoolServer$**
> ClientConnnection.run(Unknown
> Source)
> at
> java.util.concurrent.**ThreadPoolExecutor$Worker.**
> runTask(ThreadPoolExecutor.**java:886)
> at
> java.util.concurrent.**ThreadPoolExecutor$Worker.run(**
> ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.**java:662)
>