Open amnaredo opened 2 years ago
Currently when upickle fails to decode a json string, it shows such an exception:
Message: upickle.Invalid$Json was thrown. Exception: upickle.Invalid$Json upickle.json.package$.read(package.scala:11) upickle.Types$class.read(Types.scala:133) upickle.default$.read(Api.scala:25) io.gearpump.integrationtest.minicluster.RestClient.queryStreamingAppDetail(RestClient.scala:113) io.gearpump.integrationtest.checklist.RestServiceSpec$$anonfun$7$$anonfun$apply$mcV$sp$32.apply$mcV$sp(RestServiceSpec.scala:337) io.gearpump.integrationtest.checklist.RestServiceSpec$$anonfun$7$$anonfun$apply$mcV$sp$32.apply(RestServiceSpec.scala:320) io.gearpump.integrationtest.checklist.RestServiceSpec$$anonfun$7$$anonfun$apply$mcV$sp$32.apply(RestServiceSpec.scala:320) org.scalatest.Transformer$$anonfun$apply$1.apply$mcV$sp(Transformer.scala:22) org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85) org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104) org.scalatest.Transformer.apply(Transformer.scala:22) org.scalatest.Transformer.apply(Transformer.scala:20) org.scalatest.WordSpecLike$$anon$1.apply(WordSpecLike.scala:953) org.scalatest.Suite$class.withFixture(Suite.scala:1122) org.scalatest.WordSpec.withFixture(WordSpec.scala:1881) org.scalatest.WordSpecLike$class.invokeWithFixture$1(WordSpecLike.scala:950) org.scalatest.WordSpecLike$$anonfun$runTest$1.apply(WordSpecLike.scala:962) org.scalatest.WordSpecLike$$anonfun$runTest$1.apply(WordSpecLike.scala:962) org.scalatest.SuperEngine.runTestImpl(Engine.scala:306) org.scalatest.WordSpecLike$class.runTest(WordSpecLike.scala:962) io.gearpump.integrationtest.checklist.RestServiceSpec.org$scalatest$BeforeAndAfterEach$$super$runTest(RestServiceSpec.scala:30) org.scalatest.BeforeAndAfterEach$class.runTest(BeforeAndAfterEach.scala:255) io.gearpump.integrationtest.checklist.RestServiceSpec.runTest(RestServiceSpec.scala:30) org.scalatest.WordSpecLike$$anonfun$runTests$1.apply(WordSpecLike.scala:1021) org.scalatest.WordSpecLike$$anonfun$runTests$1.apply(WordSpecLike.scala:1021) org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:413) org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:401) scala.collection.immutable.List.foreach(List.scala:381) org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:401) org.scalatest.SuperEngine.org$scalatest$SuperEngine$$runTestsInBranch(Engine.scala:390) org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:427) org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:401) scala.collection.immutable.List.foreach(List.scala:381) org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:401) org.scalatest.SuperEngine.org$scalatest$SuperEngine$$runTestsInBranch(Engine.scala:396) org.scalatest.SuperEngine.runTestsImpl(Engine.scala:483) org.scalatest.WordSpecLike$class.runTests(WordSpecLike.scala:1021) org.scalatest.WordSpec.runTests(WordSpec.scala:1881) org.scalatest.Suite$class.run(Suite.scala:1424) org.scalatest.WordSpec.org$scalatest$WordSpecLike$$super$run(WordSpec.scala:1881) org.scalatest.WordSpecLike$$anonfun$run$1.apply(WordSpecLike.scala:1067) org.scalatest.WordSpecLike$$anonfun$run$1.apply(WordSpecLike.scala:1067) org.scalatest.SuperEngine.runImpl(Engine.scala:545) org.scalatest.WordSpecLike$class.run(WordSpecLike.scala:1067) io.gearpump.integrationtest.checklist.RestServiceSpec.org$scalatest$BeforeAndAfterAll$$super$run(RestServiceSpec.scala:30) org.scalatest.BeforeAndAfterAll$class.liftedTree1$1(BeforeAndAfterAll.scala:257) org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:256) io.gearpump.integrationtest.checklist.RestServiceSpec.run(RestServiceSpec.scala:30) org.scalatest.tools.Framework.org$scalatest$tools$Framework$$runSuite(Framework.scala:462) org.scalatest.tools.Framework$ScalaTestNestedTask.execute(Framework.scala:547) sbt.TestRunner.runTest$1(TestFramework.scala:76) sbt.TestRunner.run(TestFramework.scala:85) sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:202) sbt.TestFramework$$anon$2$$anonfun$$init$$1$$anonfun$apply$8.apply(TestFramework.scala:202) sbt.TestFramework$.sbt$TestFramework$$withContextLoader(TestFramework.scala:185) sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:202) sbt.TestFramework$$anon$2$$anonfun$$init$$1.apply(TestFramework.scala:202) sbt.TestFunction.apply(TestFramework.scala:207) sbt.Tests$.sbt$Tests$$processRunnable$1(Tests.scala:239) sbt.Tests$$anonfun$makeSerial$1.apply(Tests.scala:245) sbt.Tests$$anonfun$makeSerial$1.apply(Tests.scala:245) sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:44) sbt.std.Transform$$anon$3$$anonfun$apply$2.apply(System.scala:44) sbt.std.Transform$$anon$4.work(System.scala:63) sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226) sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226) sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17) sbt.Execute.work(Execute.scala:235) sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226) sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226) sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159) sbt.CompletionService$$anon$2.call(CompletionService.scala:28) java.util.concurrent.FutureTask.run(FutureTask.java:266) java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) java.util.concurrent.FutureTask.run(FutureTask.java:266) java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) java.lang.Thread.run(Thread.java:745)
It will be very helpful, if upickle can print the original json string for a more easier debugging.
ID: 130 Original Author: stanleyxu2005
The original string could be huge. You already have the string since you're the one calling upickle.read, feel free to do whatever you want with it yourself =)
upickle.read
Original Author: lihaoyi
Currently when upickle fails to decode a json string, it shows such an exception:
It will be very helpful, if upickle can print the original json string for a more easier debugging.
ID: 130 Original Author: stanleyxu2005