Skip to content
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

Error filtering class org.apache.commons.compress.harmony.pack200.Segment, it will be ignored java.lang.IncompatibleClassChangeError: class org.apache.commons.compress.harmony.pack200.Segment can not implement org.objectweb.asm.ClassVisitor, because it is not an interface (org.objectweb.asm.ClassVisitor is in unnamed module of loader org.apache.jmeter.DynamicClassLoader @65ab7765)[Issue]: #438

Closed
2 tasks done
chandrusanthosh01 opened this issue Apr 16, 2024 · 6 comments
Assignees
Labels
bug Something isn't working

Comments

@chandrusanthosh01
Copy link

What happened?

Hi Team,
For pushing avro messages to kafka,
im using Jmeter 5.6.3 ,Java 17 and kloadgen 5.6.7
apicurio is up and running in my local.

followed steps:
Setp 1: Added kloadgen 5.6.7 to jmeter lib/ext folder
Setp 2: after adding kloadgen opening jmeter
getting below error in logs

KloadGen Version

KLoadGen 5.6.7

Relevant log output

2024-04-16 21:07:55,920 ERROR o.a.j.r.ClassFinder: Error filtering class org.apache.commons.compress.harmony.pack200.Segment, it will be ignored

java.lang.IncompatibleClassChangeError: class org.apache.commons.compress.harmony.pack200.Segment can not implement org.objectweb.asm.ClassVisitor, because it is not an interface (org.objectweb.asm.ClassVisitor is in unnamed module of loader org.apache.jmeter.DynamicClassLoader @65ab7765)

    at java.base/java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]

    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013) ~[?:?]

    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) ~[?:?]

    at java.base/java.net.URLClassLoader.defineClass(URLClassLoader.java:524) ~[?:?]

    at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:427) ~[?:?]

    at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:421) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:712) ~[?:?]

    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:420) ~[?:?]

    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[?:?]

    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]

    at java.base/java.lang.Class.forName0(Native Method) ~[?:?]

    at java.base/java.lang.Class.forName(Class.java:495) ~[?:?]

    at java.base/java.lang.Class.forName(Class.java:474) ~[?:?]

    at org.apache.jorphan.reflect.ClassFinder$ExtendsClassFilter.isChildOf(ClassFinder.java:198) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder$ExtendsClassFilter.accept(ClassFinder.java:184) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.applyFiltering(ClassFinder.java:541) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.lambda$findClassesInOnePath$2(ClassFinder.java:501) ~[jorphan.jar:5.6.3]

    at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?]

    at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?]

    at java.base/java.util.zip.ZipFile$EntrySpliterator.tryAdvance(ZipFile.java:559) ~[?:?]

    at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

    at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

    at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

    at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

    at org.apache.jorphan.reflect.ClassFinder.findClassesInOnePath(ClassFinder.java:499) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClasses(ClassFinder.java:443) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:413) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:336) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:315) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:282) ~[jorphan.jar:5.6.3]

    at org.apache.jmeter.gui.util.MenuFactory.initializeMenus(MenuFactory.java:136) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.util.MenuFactory.<clinit>(MenuFactory.java:108) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.control.gui.TestPlanGui.createPopupMenu(TestPlanGui.java:109) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.tree.JMeterTreeNode.createPopupMenu(JMeterTreeNode.java:184) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.EditCommand.doAction(EditCommand.java:49) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:83) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.ActionRouter.lambda$actionPerformed$0(ActionRouter.java:65) ~[ApacheJMeter_core.jar:5.6.3]

    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) [?:?]

    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) [?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) [?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) [?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) ~[?:?]

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) ~[?:?]

    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318) [?:?]

    at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234) ~[?:?]

    at java.desktop/java.awt.Dialog.show(Dialog.java:1080) ~[?:?]

    at java.desktop/java.awt.Component.show(Component.java:1728) ~[?:?]

    at java.desktop/java.awt.Component.setVisible(Component.java:1675) ~[?:?]

    at java.desktop/java.awt.Window.setVisible(Window.java:1036) ~[?:?]

    at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016) ~[?:?]

    at org.apache.jmeter.SplashScreen.lambda$showScreen$0(SplashScreen.java:95) ~[ApacheJMeter_core.jar:5.6.3]

    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) ~[?:?]

    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) ~[?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) ~[?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) [?:?]

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) [?:?]

    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [?:?]

    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) [?:?]

2024-04-16 21:07:55,968 ERROR o.a.j.r.ClassFinder: Error filtering class kotlinx.datetime.InstantTimeMark, it will be ignored

java.lang.IncompatibleClassChangeError: class kotlinx.datetime.InstantTimeMark has interface kotlin.time.TimeMark as super class

    at java.base/java.lang.ClassLoader.defineClass1(Native Method) ~[?:?]

    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013) ~[?:?]

    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150) ~[?:?]

    at java.base/java.net.URLClassLoader.defineClass(URLClassLoader.java:524) ~[?:?]

    at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:427) ~[?:?]

    at java.base/java.net.URLClassLoader$1.run(URLClassLoader.java:421) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:712) ~[?:?]

    at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:420) ~[?:?]

    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588) ~[?:?]

    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521) ~[?:?]

    at java.base/java.lang.Class.forName0(Native Method) ~[?:?]

    at java.base/java.lang.Class.forName(Class.java:495) ~[?:?]

    at java.base/java.lang.Class.forName(Class.java:474) ~[?:?]

    at org.apache.jorphan.reflect.ClassFinder$ExtendsClassFilter.isChildOf(ClassFinder.java:198) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder$ExtendsClassFilter.accept(ClassFinder.java:184) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.applyFiltering(ClassFinder.java:541) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.lambda$findClassesInOnePath$2(ClassFinder.java:501) ~[jorphan.jar:5.6.3]

    at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183) ~[?:?]

    at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) ~[?:?]

    at java.base/java.util.zip.ZipFile$EntrySpliterator.tryAdvance(ZipFile.java:559) ~[?:?]

    at java.base/java.util.Spliterator.forEachRemaining(Spliterator.java:332) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]

    at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:150) ~[?:?]

    at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173) ~[?:?]

    at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]

    at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) ~[?:?]

    at org.apache.jorphan.reflect.ClassFinder.findClassesInOnePath(ClassFinder.java:499) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClasses(ClassFinder.java:443) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:413) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:336) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:315) ~[jorphan.jar:5.6.3]

    at org.apache.jorphan.reflect.ClassFinder.findClassesThatExtend(ClassFinder.java:282) ~[jorphan.jar:5.6.3]

    at org.apache.jmeter.gui.util.MenuFactory.initializeMenus(MenuFactory.java:136) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.util.MenuFactory.<clinit>(MenuFactory.java:108) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.control.gui.TestPlanGui.createPopupMenu(TestPlanGui.java:109) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.tree.JMeterTreeNode.createPopupMenu(JMeterTreeNode.java:184) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.EditCommand.doAction(EditCommand.java:49) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.ActionRouter.performAction(ActionRouter.java:83) ~[ApacheJMeter_core.jar:5.6.3]

    at org.apache.jmeter.gui.action.ActionRouter.lambda$actionPerformed$0(ActionRouter.java:65) ~[ApacheJMeter_core.jar:5.6.3]

    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) [?:?]

    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) [?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) [?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) [?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) ~[?:?]

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) ~[?:?]

    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) ~[?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:117) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:191) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:236) ~[?:?]

    at java.desktop/java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:234) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:318) [?:?]

    at java.desktop/java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:234) ~[?:?]

    at java.desktop/java.awt.Dialog.show(Dialog.java:1080) ~[?:?]

    at java.desktop/java.awt.Component.show(Component.java:1728) ~[?:?]

    at java.desktop/java.awt.Component.setVisible(Component.java:1675) ~[?:?]

    at java.desktop/java.awt.Window.setVisible(Window.java:1036) ~[?:?]

    at java.desktop/java.awt.Dialog.setVisible(Dialog.java:1016) ~[?:?]

    at org.apache.jmeter.SplashScreen.lambda$showScreen$0(SplashScreen.java:95) ~[ApacheJMeter_core.jar:5.6.3]

    at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318) ~[?:?]

    at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773) ~[?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) ~[?:?]

    at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) ~[?:?]

    at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) [?:?]

    at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) [?:?]

    at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) [?:?]

    at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) [?:?]

    at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) [?:?]

Have you added your JMX Testplan or a replica?

  • I have added a JMX testplan

Have you added your Schema or a replica?

  • I have added the Schema
Copy link

Thank you for collaborating with the project by giving us feedback! In case it applies, it would be helpful if you could attach an example AVRO and an example test plan for us to reproduce the error. Cheers!

@chandrusanthosh01
Copy link
Author

Schema:

{
"type": "record",
"name": "FirstSchemaStreamingPOCTest",
"namespace": "test",
"fields": [
{
"name": "randomNumber",
"type": [
"null",
"string"
],
"default": null
},
{
"name": "randomCode",
"type": [
"null",
"string"
],
"default": null
}
]
}
WorkingProducer_SchemaSerializer.jmx.zip

Attached schema and jmx file. It was working fine few days back but now totally im stuck with it.

@chandrusanthosh01
Copy link
Author

Hi Team,
Any update on this??

@janDuinRod
Copy link
Contributor

Hi!
Sorry for the delayed response.
Trying this with the last version of KLoadGen(5.6.12) and JMeter 5.6.2 it seems to be working for me.
Can you please test to see if the issue is fixed on this last version?

@janDuinRod janDuinRod added the bug Something isn't working label Apr 30, 2024
@janDuinRod
Copy link
Contributor

Hi! Have you been able to try that configuration?

@janDuinRod
Copy link
Contributor

I will close this issue, as I assume it is now working. If there are any problems still do not doubt contacting us again.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants