You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geode.apache.org by Kirk Lund <ki...@gmail.com> on 2015/07/11 02:07:03 UTC
Review Request 36409: Use cglib jar instead of cglib-nodep jar runtime
dependency for tests
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36409/
-----------------------------------------------------------
Review request for geode.
Bugs: GEODE-97
https://issues.apache.org/jira/browse/GEODE-97
Repository: geode
Description
-------
The cglib-nodep jar contains an "asm" package while the cglib jar does not. This causes the build to use asm 5.0.3 as defined in the dependencies.
When the unit tests are executed under JDK 8, tests using jmock fail with this stack trace due to finding wrong version of asm in the cglib-nodep jar:
{{{
com.gemstone.gemfire.internal.cache.DiskInitFileJUnitTest > testCanonicalIds FAILED
java.lang.IllegalArgumentException
at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
at net.sf.cglib.proxy.BridgeMethodResolver.resolveAll(BridgeMethodResolver.java:61)
at net.sf.cglib.proxy.Enhancer.emitMethods(Enhancer.java:911)
at net.sf.cglib.proxy.Enhancer.generateClass(Enhancer.java:498)
at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)
at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:216)
at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377)
at net.sf.cglib.proxy.Enhancer.createClass(Enhancer.java:317)
at org.jmock.lib.legacy.ClassImposteriser.proxyClass(ClassImposteriser.java:121)
at org.jmock.lib.legacy.ClassImposteriser.imposterise(ClassImposteriser.java:66)
at org.jmock.internal.ReturnDefaultValueAction.invoke(ReturnDefaultValueAction.java:82)
at org.jmock.internal.InvocationExpectation.invoke(InvocationExpectation.java:165)
at org.jmock.internal.InvocationDispatcher.dispatch(InvocationDispatcher.java:81)
at org.jmock.Mockery.dispatch(Mockery.java:244)
at org.jmock.Mockery.access$100(Mockery.java:29)
at org.jmock.Mockery$MockObject.invoke(Mockery.java:284)
at org.jmock.internal.InvocationDiverter.invoke(InvocationDiverter.java:27)
at org.jmock.internal.FakeObjectMethods.invoke(FakeObjectMethods.java:38)
at org.jmock.internal.SingleThreadedPolicy$1.invoke(SingleThreadedPolicy.java:21)
at org.jmock.lib.legacy.ClassImposteriser$4.invoke(ClassImposteriser.java:136)
at com.gemstone.gemfire.internal.cache.persistence.DiskRegionView$$EnhancerByCGLIB$$dc027cdd.getFlags(<generated>)
at com.gemstone.gemfire.internal.cache.DiskInitFile.writeRegionConfig(DiskInitFile.java:1796)
at com.gemstone.gemfire.internal.cache.DiskInitFile.createRegion(DiskInitFile.java:2081)
at com.gemstone.gemfire.internal.cache.DiskInitFileJUnitTest.testCanonicalIds(DiskInitFileJUnitTest.java:81)
}}}
The fix uses the cglib jar which does not contain the old version of asm. The newer version of asm is already specified in the gradle dependencies.
Diffs
-----
build.gradle 3bad39c
Diff: https://reviews.apache.org/r/36409/diff/
Testing
-------
build and test targets on linux and windows
Thanks,
Kirk Lund
Re: Review Request 36409: Use cglib jar instead of cglib-nodep jar
runtime dependency for tests
Posted by Dan Smith <ds...@pivotal.io>.
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/36409/#review91379
-----------------------------------------------------------
Ship it!
Ship It!
- Dan Smith
On July 11, 2015, 12:07 a.m., Kirk Lund wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/36409/
> -----------------------------------------------------------
>
> (Updated July 11, 2015, 12:07 a.m.)
>
>
> Review request for geode.
>
>
> Bugs: GEODE-97
> https://issues.apache.org/jira/browse/GEODE-97
>
>
> Repository: geode
>
>
> Description
> -------
>
> The cglib-nodep jar contains an "asm" package while the cglib jar does not. This causes the build to use asm 5.0.3 as defined in the dependencies.
>
> When the unit tests are executed under JDK 8, tests using jmock fail with this stack trace due to finding wrong version of asm in the cglib-nodep jar:
> {{{
> com.gemstone.gemfire.internal.cache.DiskInitFileJUnitTest > testCanonicalIds FAILED
> java.lang.IllegalArgumentException
> at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
> at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
> at net.sf.cglib.asm.ClassReader.<init>(Unknown Source)
> at net.sf.cglib.proxy.BridgeMethodResolver.resolveAll(BridgeMethodResolver.java:61)
> at net.sf.cglib.proxy.Enhancer.emitMethods(Enhancer.java:911)
> at net.sf.cglib.proxy.Enhancer.generateClass(Enhancer.java:498)
> at net.sf.cglib.core.DefaultGeneratorStrategy.generate(DefaultGeneratorStrategy.java:25)
> at net.sf.cglib.core.AbstractClassGenerator.create(AbstractClassGenerator.java:216)
> at net.sf.cglib.proxy.Enhancer.createHelper(Enhancer.java:377)
> at net.sf.cglib.proxy.Enhancer.createClass(Enhancer.java:317)
> at org.jmock.lib.legacy.ClassImposteriser.proxyClass(ClassImposteriser.java:121)
> at org.jmock.lib.legacy.ClassImposteriser.imposterise(ClassImposteriser.java:66)
> at org.jmock.internal.ReturnDefaultValueAction.invoke(ReturnDefaultValueAction.java:82)
> at org.jmock.internal.InvocationExpectation.invoke(InvocationExpectation.java:165)
> at org.jmock.internal.InvocationDispatcher.dispatch(InvocationDispatcher.java:81)
> at org.jmock.Mockery.dispatch(Mockery.java:244)
> at org.jmock.Mockery.access$100(Mockery.java:29)
> at org.jmock.Mockery$MockObject.invoke(Mockery.java:284)
> at org.jmock.internal.InvocationDiverter.invoke(InvocationDiverter.java:27)
> at org.jmock.internal.FakeObjectMethods.invoke(FakeObjectMethods.java:38)
> at org.jmock.internal.SingleThreadedPolicy$1.invoke(SingleThreadedPolicy.java:21)
> at org.jmock.lib.legacy.ClassImposteriser$4.invoke(ClassImposteriser.java:136)
> at com.gemstone.gemfire.internal.cache.persistence.DiskRegionView$$EnhancerByCGLIB$$dc027cdd.getFlags(<generated>)
> at com.gemstone.gemfire.internal.cache.DiskInitFile.writeRegionConfig(DiskInitFile.java:1796)
> at com.gemstone.gemfire.internal.cache.DiskInitFile.createRegion(DiskInitFile.java:2081)
> at com.gemstone.gemfire.internal.cache.DiskInitFileJUnitTest.testCanonicalIds(DiskInitFileJUnitTest.java:81)
> }}}
> The fix uses the cglib jar which does not contain the old version of asm. The newer version of asm is already specified in the gradle dependencies.
>
>
> Diffs
> -----
>
> build.gradle 3bad39c
>
> Diff: https://reviews.apache.org/r/36409/diff/
>
>
> Testing
> -------
>
> build and test targets on linux and windows
>
>
> Thanks,
>
> Kirk Lund
>
>