Hi all,
I'm using analytics-zoo-bigdl_0.13.0-spark_2.4.6, and I came across these errors while using TrainSummary for visualization. I found that TensorFlow uses protobuf-java 3.5.1, and this should be the correct version I'm using by looking into the dependency tree. But it seems that the errors are due to version conflict. Could you please help with this issue?
Thanks,
Ruiyang
Error 1:
java.lang.NoSuchMethodError: com.google.protobuf.CodedInputStream.getProto3DiscardUnknownFieldsDefault()Z
at com.google.protobuf.GeneratedMessageV3$Builder.setUnknownFieldsProto3(GeneratedMessageV3.java:645)
at org.tensorflow.util.Event$Builder.setUnknownFields(Event.java:1978)
at org.tensorflow.util.Event$Builder.setUnknownFields(Event.java:774)
at com.google.protobuf.GeneratedMessageV3$Builder.mergeUnknownFields(GeneratedMessageV3.java:656)
at org.tensorflow.util.Event$Builder.mergeUnknownFields(Event.java:1983)
at org.tensorflow.util.Event$Builder.mergeFrom(Event.java:957)
at org.tensorflow.util.Event.toBuilder(Event.java:757)
at com.intel.analytics.bigdl.visualization.tensorboard.FileWriter.addEvent(FileWriter.scala:69)
at com.intel.analytics.bigdl.visualization.tensorboard.FileWriter.addSummary(FileWriter.scala:51)
at com.intel.analytics.bigdl.visualization.Summary.addScalar(Summary.scala:48)
at com.intel.analytics.bigdl.optim.AbstractOptimizer$$anonfun$saveSummary$1.apply(AbstractOptimizer.scala:74)
at com.intel.analytics.bigdl.optim.AbstractOptimizer$$anonfun$saveSummary$1.apply(AbstractOptimizer.scala:69)
at scala.collection.Iterator$class.foreach(Iterator.scala:891)
at scala.collection.AbstractIterator.foreach(Iterator.scala:1334)
at com.intel.analytics.bigdl.optim.AbstractOptimizer.saveSummary(AbstractOptimizer.scala:69)
at com.intel.analytics.bigdl.optim.DistriOptimizer$$anonfun$optimize$8.apply(DistriOptimizer.scala:503)
at com.intel.analytics.bigdl.optim.DistriOptimizer$$anonfun$optimize$8.apply(DistriOptimizer.scala:502)
at scala.Option.foreach(Option.scala:257)
at com.intel.analytics.bigdl.optim.DistriOptimizer$.optimize(DistriOptimizer.scala:502)
at com.intel.analytics.bigdl.optim.DistriOptimizer.optimize(DistriOptimizer.scala:908)
Error 2:
java.lang.IllegalAccessError: tried to access field com.google.protobuf.AbstractMessage.memoizedSize from class org.tensorflow.util.Event
at org.tensorflow.util.Event.getSerializedSize(Event.java:526)
at com.google.protobuf.AbstractMessageLite.toByteArray(AbstractMessageLite.java:62)
at com.intel.analytics.bigdl.visualization.tensorboard.RecordWriter.write(RecordWriter.scala:42)
at com.intel.analytics.bigdl.visualization.tensorboard.EventWriter.writeEvent(EventWriter.scala:57)
at com.intel.analytics.bigdl.visualization.tensorboard.EventWriter.run(EventWriter.scala:68)
at com.intel.analytics.bigdl.visualization.tensorboard.FileWriter$$anonfun$1.apply$mcV$sp(FileWriter.scala:40)
at com.intel.analytics.bigdl.visualization.tensorboard.FileWriter$$anonfun$1.apply(FileWriter.scala:40)
at com.intel.analytics.bigdl.visualization.tensorboard.FileWriter$$anonfun$1.apply(FileWriter.scala:40)
at com.intel.analytics.bigdl.utils.ThreadPool$$anonfun$invoke$2.apply(ThreadPool.scala:221)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24)
at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)