The CopyableValue serializer is probably instantiated for the NullValue
(which extends CopyableValue).

It looks like you are passing a function that puts a Long into that field,
but the TypeExtraction thinks you return a NullValue. I would guess that
there are some unsafe generic casts in your code that emit a Long at a
place that declares a NullValue in its signature.

On Sun, Nov 8, 2015 at 9:20 PM, Vasiliki Kalavri <vasilikikala...@gmail.com>
wrote:

> Hello squirrels,
>
> I'm writing a few graph algorithms to test the performance of different
> iteration models  and I am quite stuck with an error. While my sssp example
> works fine, I get the following in my connected components job (local
> execution inside eclipse):
>
>
> Exception in thread "main"
> org.apache.flink.runtime.client.JobExecutionException: Job execution
> failed.
> at
>
> org.apache.flink.runtime.jobmanager.JobManager$anonfun$handleMessage$1$anonfun$applyOrElse$5.apply$mcV$sp(JobManager.scala:563)
> at
>
> org.apache.flink.runtime.jobmanager.JobManager$anonfun$handleMessage$1$anonfun$applyOrElse$5.apply(JobManager.scala:509)
> at
>
> org.apache.flink.runtime.jobmanager.JobManager$anonfun$handleMessage$1$anonfun$applyOrElse$5.apply(JobManager.scala:509)
> at
>
> scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
> at
> scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
> at akka.dispatch.TaskInvocation.run(AbstractDispatcher.scala:41)
> at
>
> akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:401)
> at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)
> at
>
> scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)
> at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)
> at
>
> scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
>
> Caused by: java.lang.ClassCastException: java.lang.Long cannot be cast to
> org.apache.flink.types.CopyableValue
> at
>
> org.apache.flink.api.java.typeutils.runtime.CopyableValueSerializer.serialize(CopyableValueSerializer.java:1)
> at
>
> org.apache.flink.api.java.typeutils.runtime.TupleSerializer.serialize(TupleSerializer.java:116)
> at
>
> org.apache.flink.api.java.typeutils.runtime.TupleSerializer.serialize(TupleSerializer.java:1)
> at
>
> org.apache.flink.runtime.plugable.SerializationDelegate.write(SerializationDelegate.java:56)
> at
>
> org.apache.flink.runtime.io.network.api.serialization.SpanningRecordSerializer.addRecord(SpanningRecordSerializer.java:79)
> at
>
> org.apache.flink.runtime.io.network.api.writer.RecordWriter.emit(RecordWriter.java:84)
> at
>
> org.apache.flink.runtime.operators.shipping.OutputCollector.collect(OutputCollector.java:65)
> at org.apache.flink.runtime.operators.MapDriver.run(MapDriver.java:97)
> at org.apache.flink.runtime.operators.BatchTask.run(BatchTask.java:489)
> at org.apache.flink.runtime.operators.BatchTask.invoke(BatchTask.java:354)
> at org.apache.flink.runtime.taskmanager.Task.run(Task.java:584)
> at java.lang.Thread.run(Thread.java:745)
>
>
> The 2 jobs are almost identical​, expect that in connected components I
> have Long values instead of Double and edges have no weights (NullValue
> types).
>
> With this exception message, ​I'm not really sure where to look ​for the
> error. What is the CopyableValueSerializer and when is it used? I tried
> turning the object reuse mode on/off, but no luck. I would really
> appreciate any hint or idea on where to look :)
>
> Cheers,
> -Vasia.
>

Reply via email to