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

YAKS tests failing #1862

Open
christophd opened this issue Jan 31, 2024 · 5 comments
Open

YAKS tests failing #1862

christophd opened this issue Jan 31, 2024 · 5 comments
Labels
bug Something isn't working

Comments

@christophd
Copy link
Contributor

YAKS tests in CI jobs are failing for some time.

@christophd christophd added the bug Something isn't working label Jan 31, 2024
@christophd
Copy link
Contributor Author

Tests are also failing locally. In one of the Pipes running I can see the following error:

Exception in thread "Camel (camel-1) thread #4 - timer://tick" java.lang.NoSuchMethodError: 'void com.fasterxml.jackson.core.base.GeneratorBase.<init>(int, com.fasterxml.jackson.core.ObjectCodec, com.fasterxml.jackson.core.io.IOContext)'
	at com.fasterxml.jackson.dataformat.avro.AvroGenerator.<init>(AvroGenerator.java:157)
	at com.fasterxml.jackson.dataformat.avro.AvroFactory._createGenerator(AvroFactory.java:474)
	at com.fasterxml.jackson.dataformat.avro.AvroFactory.createGenerator(AvroFactory.java:406)
	at com.fasterxml.jackson.dataformat.avro.AvroFactory.createGenerator(AvroFactory.java:394)
	at com.fasterxml.jackson.dataformat.avro.AvroFactory.createGenerator(AvroFactory.java:21)
	at com.fasterxml.jackson.databind.ObjectWriter.createGenerator(ObjectWriter.java:738)
	at com.fasterxml.jackson.databind.ObjectWriter.writeValue(ObjectWriter.java:1098)
	at org.apache.camel.component.jackson.AbstractJacksonDataFormat.marshal(AbstractJacksonDataFormat.java:155)
	at org.apache.camel.support.processor.MarshalProcessor.process(MarshalProcessor.java:64)
	at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.handleFirst(RedeliveryErrorHandler.java:462)
	at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:438)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.doRun(DefaultReactiveExecutor.java:199)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.executeReactiveWork(DefaultReactiveExecutor.java:189)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.tryExecuteReactiveWork(DefaultReactiveExecutor.java:166)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:148)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
	at org.apache.camel.processor.Pipeline.process(Pipeline.java:163)
	at org.apache.camel.impl.engine.CamelInternalProcessor.processNonTransacted(CamelInternalProcessor.java:354)
	at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:330)
	at org.apache.camel.component.timer.TimerConsumer.sendTimerExchange(TimerConsumer.java:293)
	at org.apache.camel.component.timer.TimerConsumer$1.doRun(TimerConsumer.java:164)
	at org.apache.camel.component.timer.TimerConsumer$1.run(TimerConsumer.java:136)
	at java.base/java.util.TimerThread.mainLoop(Timer.java:566)
	at java.base/java.util.TimerThread.run(Timer.java:516)

@oscerd does this ring a bell?

@christophd
Copy link
Contributor Author

This is the Pipe that hits the error when running with Apache Camel 4.3.0
https://github.com/apache/camel-kamelets/blob/main/tests/camel-kamelets-itest/src/test/resources/avro-deserialize-pipe.yaml

@oscerd
Copy link
Contributor

oscerd commented Jan 31, 2024

We updated Jackson to 2.16.1 in 4.4.0 and the signature of GeneratorBase constructor has been changed, so I think we need to check what is happening at dependency tree level. It seems we have mixed versions.

@oscerd
Copy link
Contributor

oscerd commented Jan 31, 2024

@christophd I guess is yaks jackson version: https://github.com/citrusframework/yaks/blob/main/java/pom.xml#L105

I verified that camel-jackson-avro use the correct jackson-databind version, same for webhook and the other components involved, so I think yaks-jbang is bringing in the dependency.

@christophd
Copy link
Contributor Author

The Apache Camel version used in yaks-jbang is controlled by the property in https://github.com/apache/camel-kamelets/blob/main/tests/camel-kamelets-itest/src/test/resources/citrus-application.properties#L11

We need to keep this in sync with the Apache Camel version used in the Maven POM in camel-kamelets repository. Then the Pipe runtime should be using the correct Apache Camel version.

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

2 participants