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.

- 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
> > >
> > >
> >
>

Reply via email to