[ 
https://issues.apache.org/jira/browse/KUDU-2524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16566145#comment-16566145
 ] 

Adar Dembo commented on KUDU-2524:
----------------------------------

I pushed commit c5a93d030 to temporarily disable scalafmt in build-and-test.sh 
until we decide exactly how to best deal with this.


> scalafmt incompatible with jdk8 older than u25
> ----------------------------------------------
>
>                 Key: KUDU-2524
>                 URL: https://issues.apache.org/jira/browse/KUDU-2524
>             Project: Kudu
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.8.0
>            Reporter: Adar Dembo
>            Priority: Major
>
> We're seeing a fair number of Gradle build failures in scalafmt with the 
> following output:
> {noformat}
> 1: Task failed with an exception.
> -----------
> * What went wrong:
> Execution failed for task ':kudu-spark:scalafmt'.
> > Uninitialized object exists on backward branch 209
>   Exception Details:
>     Location:
>       
> scala/collection/immutable/HashMap$HashTrieMap.split()Lscala/collection/immutable/Seq;
>  @249: goto
>     Reason:
>       Error exists in the bytecode
>     Bytecode:
>       0000000: 2ab6 005b 04a0 001e b200 b3b2 00b8 04bd
>       0000010: 0002 5903 2a53 c000 bab6 00be b600 c2c0
>       0000020: 00c4 b02a b600 31b8 003b 3c1b 04a4 015e
>       0000030: 1b05 6c3d 2a1b 056c 2ab6 0031 b700 c63e
>       0000040: 2ab6 0031 021d 787e 3604 2ab6 0031 0210
>       0000050: 201d 647c 7e36 05bb 0014 59b2 00b8 2ab6
>       0000060: 0033 c000 bab6 00ca b700 cd1c b600 d13a
>       0000070: 0619 06c6 001a 1906 b600 d5c0 0081 3a07
>       0000080: 1906 b600 d8c0 0081 3a08 a700 0dbb 00da
>       0000090: 5919 06b7 00dd bf19 073a 0919 083a 0abb
>       00000a0: 0002 5915 0419 09bb 0014 59b2 00b8 1909
>       00000b0: c000 bab6 00ca b700 cd03 b800 e33a 0e3a
>       00000c0: 0d03 190d b900 e701 0019 0e3a 1136 1036
>       00000d0: 0f15 0f15 109f 0027 150f 0460 1510 190d
>       00000e0: 150f b900 ea02 00c0 0005 3a17 1911 1917
>       00000f0: b800 ee3a 1136 1036 0fa7 ffd8 1911 b800
>       0000100: f2b7 0060 3a0b bb00 0259 1505 190a bb00
>       0000110: 1459 b200 b819 0ac0 00ba b600 cab7 00cd
>       0000120: 03b8 00e3 3a13 3a12 0319 12b9 00e7 0100
>       0000130: 1913 3a16 3615 3614 1514 1515 9f00 2715
>       0000140: 1404 6015 1519 1215 14b9 00ea 0200 c000
>       0000150: 053a 1819 1619 18b8 00f5 3a16 3615 3614
>       0000160: a7ff d819 16b8 00f2 b700 603a 0cb2 00fa
>       0000170: b200 b805 bd00 0259 0319 0b53 5904 190c
>       0000180: 53c0 00ba b600 beb6 00fd b02a b600 3303
>       0000190: 32b6 00ff b0                           
>     Stackmap Table:
>       same_frame(@35)
>       
> full_frame(@141,{Object[#2],Integer,Integer,Integer,Integer,Integer,Object[#109]},{})
>       append_frame(@151,Object[#129],Object[#129])
>       
> full_frame(@209,{Object[#2],Integer,Integer,Integer,Integer,Integer,Object[#109],Object[#129],Object[#129],Object[#129],Object[#129],Top,Top,Object[#20],Object[#55],Integer,Integer,Object[#107]},{Uninitialized[#159],Uninitialized[#159],Integer,Object[#129]})
>       
> full_frame(@252,{Object[#2],Integer,Integer,Integer,Integer,Integer,Object[#109],Object[#129],Object[#129],Object[#129],Object[#129],Top,Top,Object[#20],Object[#55],Integer,Integer,Object[#107]},{Uninitialized[#159],Uninitialized[#159],Integer,Object[#129]})
>       
> full_frame(@312,{Object[#2],Integer,Integer,Integer,Integer,Integer,Object[#109],Object[#129],Object[#129],Object[#129],Object[#129],Object[#2],Top,Object[#20],Object[#55],Integer,Integer,Object[#107],Object[#20],Object[#55],Integer,Integer,Object[#107]},{Uninitialized[#262],Uninitialized[#262],Integer,Object[#129]})
>       
> full_frame(@355,{Object[#2],Integer,Integer,Integer,Integer,Integer,Object[#109],Object[#129],Object[#129],Object[#129],Object[#129],Object[#2],Top,Object[#20],Object[#55],Integer,Integer,Object[#107],Object[#20],Object[#55],Integer,Integer,Object[#107]},{Uninitialized[#262],Uninitialized[#262],Integer,Object[#129]})
>       full_frame(@395,{Object[#2],Integer},{}){noformat}
> This appears to be due to [this JDK 
> issue|https://stackoverflow.com/questions/24061672/verifyerror-uninitialized-object-exists-on-backward-branch-jvm-spec-4-10-2-4],
>  which was fixed in JDK 8u25.
> And sure enough, here's the JDK version for failing builds:
> {noformat}
> -- Found Java: /opt/toolchain/sun-jdk-64bit-1.8.0.05/bin/java (found suitable 
> version "1.8.0.05", minimum required is "1.7")
> {noformat}
> And here it is for successful builds:
> {noformat}
> 19:06:12 -- Found Java: /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java (found 
> suitable version "1.8.0.111", minimum required is "1.7") 
> {noformat}
> We either need to blacklist JDK8 versions older than u25, or we need to 
> condition the scalafmt step on the JDK version.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to