Il lun 12 feb 2018, 17:39 Sijie Guo <guosi...@gmail.com> ha scritto: > On Tue, Feb 13, 2018 at 12:17 AM, Enrico Olivelli <eolive...@gmail.com> > wrote: > > > 2018-02-12 17:15 GMT+01:00 Sijie Guo <guosi...@gmail.com>: > > > > > On Mon, Feb 12, 2018 at 11:34 PM, Enrico Olivelli <eolive...@gmail.com > > > > > wrote: > > > > > > > (moving to dev). > > > > > > > > I am going to change only BookKeeper and not DL, in order to ccherry > > pick > > > > easily the commit, I think we should change DL only if needed and > > > problems > > > > are reported by users > > > > > > > > > > I am not sure I understand what you are saying here. > > > > > > If you change the `maven-shade-plugin` in the root pom file, it will > > > automatically apply to all the modules under `shaded` module, no? > > > > > > Also since "dlog" is already merged as part of bookkeeper, we shouldn't > > > have two different modules using two different type of maven shade > > plugin. > > > > > > > see here > > > > https://github.com/apache/bookkeeper/blob/e2b93f28813556c1971a04c1ffe4b6 > > 5cbe40c427/stream/distributedlog/pom.xml#L76 > > > I haven't cleaned up the dlog root pom file. > > but please check here, this shaded pom file inherits from `shaded` pom > file, which inherits the variable from root pom. >
Okay Enrico > > > https://github.com/apache/bookkeeper/blob/e2b93f28813556c1971a04c1ffe4b65cbe40c427/shaded/distributedlog-core-shaded/pom.xml > > > > > > > > > > > > Enrico > > > > > > > > > > > > - Sijie > > > > > > > > > > > > > > Enrico > > > > > > > > 2018-02-12 16:32 GMT+01:00 Ivan Kelly <iv...@apache.org>: > > > > > > > > > +1 > > > > > > > > > > Go for it. > > > > > > > > > > On Mon, Feb 12, 2018 at 4:26 PM, Enrico Olivelli < > > eolive...@gmail.com> > > > > > wrote: > > > > > > Self explained, it is a bug in Maven Shade Plugin, need to > upgrade > > to > > > > > 3.1.0 > > > > > > > > > > > > This is the patch > > > > > > > > > > > > https://github.com/apache/bookkeeper/pull/1144 > > > > > > > > > > > > I volunteer for releasing 4.6.2, this is a bad bug over Java 9 > > > > compliance > > > > > > for me (it is blocking some downstream projects in my company) > > > > > > > > > > > > Enrico > > > > > > > > > > > > > > > > > > 2018-02-12 16:10 GMT+01:00 Enrico Olivelli <eolive...@gmail.com > >: > > > > > >> > > > > > >> Hi guys, > > > > > >> did you ever see this error ? > > > > > >> It is very strange, I am investigating. > > > > > >> I am using 4.6.1 bookkeeper-server-shaded, I get this only in > some > > > > unit > > > > > >> tests, not in "real" environments on Java 9 > > > > > >> > > > > > >> > > > > > >> java.lang.RuntimeException: java.lang. > > IncompatibleClassChangeError: > > > > > >> Inconsistent constant > > > > > >> pool data in classfile for class org/apache/bookkeeper/ > > > > > versioning/Version. > > > > > >> Method > > > > > >> lambda$static$0(Lorg/apache/bookkeeper/versioning/Version; > > > > > )Lorg/apache/bookkeeper/versioning/Version$Occurred; > > > > > >> at index 51 is CONSTANT_MethodRef and should be > > > > > CONSTANT_InterfaceMethodRef > > > > > >> at xxxxx.tasklog.TaskLoggerTest.test(TaskLoggerTest.java:75) > > > > > >> at > > > > > >> java.base/jdk.internal.reflect.NativeMethodAccessorImpl. > > > > invoke0(Native > > > > > >> Method) > > > > > >> at > > > > > >> java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( > > > > > NativeMethodAccessorImpl.java:62) > > > > > >> at > > > > > >> java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl. > > invoke( > > > > > DelegatingMethodAccessorImpl.java:43) > > > > > >> at > java.base/java.lang.reflect.Method.invoke(Method.java:564) > > > > > >> at > > > > > >> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall( > > > > > FrameworkMethod.java:47) > > > > > >> at > > > > > >> org.junit.internal.runners.model.ReflectiveCallable.run( > > > > > ReflectiveCallable.java:12) > > > > > >> at > > > > > >> org.junit.runners.model.FrameworkMethod.invokeExplosively( > > > > > FrameworkMethod.java:44) > > > > > >> at > > > > > >> org.junit.internal.runners.statements.InvokeMethod. > > > > > evaluate(InvokeMethod.java:17) > > > > > >> at > > > > > >> org.junit.rules.ExternalResource$1.evaluate( > > > ExternalResource.java:48) > > > > > >> at org.junit.rules.RunRules.evaluate(RunRules.java:20) > > > > > >> at org.junit.runners.ParentRunner.runLeaf( > > > ParentRunner.java:271) > > > > > >> at > > > > > >> org.junit.runners.BlockJUnit4ClassRunner.runChild( > > > > > BlockJUnit4ClassRunner.java:70) > > > > > >> at > > > > > >> org.junit.runners.BlockJUnit4ClassRunner.runChild( > > > > > BlockJUnit4ClassRunner.java:50) > > > > > >> at org.junit.runners.ParentRunner$3.run( > > ParentRunner.java:238) > > > > > >> at org.junit.runners.ParentRunner$1.schedule( > > > > ParentRunner.java:63) > > > > > >> at org.junit.runners.ParentRunner.runChildren( > > > > > ParentRunner.java:236) > > > > > >> at org.junit.runners.ParentRunner.access$000( > > > > ParentRunner.java:53) > > > > > >> at org.junit.runners.ParentRunner$2.evaluate( > > > > ParentRunner.java:229) > > > > > >> at > > > > > >> org.junit.internal.runners.statements.RunBefores. > > > > > evaluate(RunBefores.java:26) > > > > > >> at org.junit.runners.ParentRunner.run(ParentRunner.java:309) > > > > > >> at > > > > > >> org.apache.maven.surefire.junit4.JUnit4Provider.execute( > > > > > JUnit4Provider.java:369) > > > > > >> at > > > > > >> > org.apache.maven.surefire.junit4.JUnit4Provider.executeWithRerun( > > > > > JUnit4Provider.java:275) > > > > > >> at > > > > > >> org.apache.maven.surefire.junit4.JUnit4Provider. > > > > > executeTestSet(JUnit4Provider.java:239) > > > > > >> at > > > > > >> org.apache.maven.surefire.junit4.JUnit4Provider.invoke( > > > > > JUnit4Provider.java:160) > > > > > >> at > > > > > >> org.apache.maven.surefire.booter.ForkedBooter. > > > > > invokeProviderInSameClassLoader(ForkedBooter.java:373) > > > > > >> at > > > > > >> > org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess( > > > > > ForkedBooter.java:334) > > > > > >> at > > > > > >> org.apache.maven.surefire.booter.ForkedBooter.execute( > > > > > ForkedBooter.java:119) > > > > > >> at > > > > > >> org.apache.maven.surefire.booter.ForkedBooter.main( > > > > > ForkedBooter.java:407) > > > > > >> Caused by: java.lang.IncompatibleClassChangeError: Inconsistent > > > > > constant > > > > > >> pool data in classfile for class org/apache/bookkeeper/ > > > > > versioning/Version. > > > > > >> Method > > > > > >> lambda$static$0(Lorg/apache/bookkeeper/versioning/Version; > > > > > )Lorg/apache/bookkeeper/versioning/Version$Occurred; > > > > > >> at index 51 is CONSTANT_MethodRef and should be > > > > > CONSTANT_InterfaceMethodRef > > > > > >> at org.apache.bookkeeper.versioning.Version.<clinit>( > > > > > Version.java:47) > > > > > >> at > > > > > >> org.apache.bookkeeper.discover.ZKRegistrationClient$ > > > WatchTask.<init>( > > > > > ZKRegistrationClient.java:79) > > > > > >> at > > > > > >> org.apache.bookkeeper.discover.ZKRegistrationClient. > > > > > watchWritableBookies(ZKRegistrationClient.java:287) > > > > > >> at > > > > > >> org.apache.bookkeeper.client.BookieWatcher. > > > initialBlockingBookieRead( > > > > > BookieWatcher.java:152) > > > > > >> at > org.apache.bookkeeper.client.BookKeeper.<init>(BookKeeper. > > > > > java:506) > > > > > >> at > org.apache.bookkeeper.client.BookKeeper.<init>(BookKeeper. > > > > > java:365) > > > > > >> at > > > > > >> org.apache.bookkeeper.client.BookKeeperAdmin.format( > > > > > BookKeeperAdmin.java:1181) > > > > > >> at ...... > > > > > >> > > > > > >> Enrico > > > > > > > > > > > > > > > > > > > > > > > > > > > -- -- Enrico Olivelli