-
Notifications
You must be signed in to change notification settings - Fork 21
assertion failed: ClassBType.info not yet assigned when using -opt:l:inline and Spark 2.4.0 on Scala 2.12 #11247
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Workaround: remove the inline related settings ( |
Oh I guess that's necessary to get stack traces out of backend failures, my bad (though I don't see why the backend hides its stack traces like this). |
thanks a lot, that's help (note: -optimize also trigger this behavior).
yep, only to see full stack trace and give more info for somebody who will dig inside. |
/cc @lrytz since this seems to be an optimizer issue. |
There's something wrong with the |
It shades a few libraries. |
Yeah, so the problem is post-processing in the maven build, I guess it's the shade plugin. I checked out https://github.com/apache/spark
Comparing compiled and packaged classfiles
shows that the constant pool entries are re-ordered. The Ideas...? cc @retronym |
I guess the best solution is to add support to the maven shade plugin (https://github.com/apache/maven-shade-plugin). |
Or maybe the shade plugin has hooks / extension points. Looking at that. |
If at all possible, perhaps you could enter all class names that are used as String constants (if they're not already there...) and refer to those constants in the Scala specific sections. I believe String constants are also transformed by the shade plugin. But that would probably be a pretty big overhaul, if it's even possible.
Does the sbt assembly plugin know how to update the ScalaSignature and ScalaInlineInfo stuff? |
|
Maven shade uses asm: A comment in ASM predicted what's happening here
Passing We could of course encode full strings in |
Hello @dieu @lrytz Have you submitted an issue to the Apache Spark JIRA? We're running into a similar issue (see reference link above). |
Nope, but disabling of |
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
…odule + Also remove never used makeDeserializer, makeSerializer methods from `private[scala] object CodecImplicits` + Remove jsoniter-scala-macros dependency from scala-implicits & scala-client + Remove scala-java8-compat dependency from scala-client when publishing + scala-client now depend scala-implicits in pom.xml I don't found any benefit to shade scala-implicits into scala-client But shading cause some trouble, ex: scala/bug#11247 + Publish scala-macro & scala-implicits + Users of scala-client now need add `"com.couchbase.client" %% "scala-macro" % Provided` Change-Id: I0ad6a74b2b4b168f84d24321e0333de67ef3e742
@sadhen if you comment here, we can assign you the ticket (for credit/glory) |
@SethTisue Do we need to port the PR to |
It will be forward-merged to 2.13.x in time for 2.13.5. We merge everything forward every so often. (If your PR merges cleanly, you won't have to do anything. If the merge is tricky, you might asked to submit a forward port. In this case, the change is small enough that I don't expect you'll need to do anything further.) |
Hello,
We are maintaining the open source project https://github.com/twitter/algebird, and try to upgrade
algebird-spark
module to new spark version 2.4.0 and scala version 2.12.7 (https://github.com/twitter/algebird/tree/apanasenko/spark_2.4.0). But we are hit a problem (works fine on 2.11.12):https://travis-ci.org/twitter/algebird/jobs/451666066#L2031
and
To reproduce results, you need to do:
a problem reprdocible even if I delete all code in
algebird-spark
module and keep only one file with:The text was updated successfully, but these errors were encountered: