Skip to content

Enable ppc64le support for camel-docling#22756

Open
Harithanagothu2 wants to merge 1 commit intoapache:mainfrom
Harithanagothu2:ppc64le_
Open

Enable ppc64le support for camel-docling#22756
Harithanagothu2 wants to merge 1 commit intoapache:mainfrom
Harithanagothu2:ppc64le_

Conversation

@Harithanagothu2
Copy link
Copy Markdown

Description

x86_build_log.txt
x86_Infra_log.txt
ppc64le_build_log.txt
ppc64le_infra_log.txt

Target

  • I checked that the commit is targeting the correct branch (Camel 4 uses the main branch)

Tracking

  • If this is a large change, bug fix, or code improvement, I checked there is a JIRA issue filed for the change (usually before you start working on it).

Apache Camel coding standards and style

  • I checked that each commit in the pull request has a meaningful subject line and body.
  • I have run mvn clean install -DskipTests locally from root folder and I have committed all auto-generated changes.

@Harithanagothu2 Harithanagothu2 marked this pull request as ready for review April 24, 2026 08:30
@github-actions
Copy link
Copy Markdown
Contributor

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

Copy link
Copy Markdown
Contributor

@apupier apupier left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

based on the provided logs (which is really great to provide them). On ppc64le, the tests are failing

[ERROR] Tests run: 16, Failures: 0, Errors: 5, Skipped: 0, Time elapsed: 232.4 s <<< FAILURE! -- in org.apache.camel.component.docling.integration.DoclingServeProducerIT
[ERROR] org.apache.camel.component.docling.integration.DoclingServeProducerIT.testMarkdownConversionWithDoclingServe -- Time elapsed: 0.153 s <<< ERROR!
org.apache.camel.CamelExecutionException: Exception occurred during execution on the exchange: Exchange[D41D54BAB0BFDB3-0000000000000000]
	at org.apache.camel.CamelExecutionException.wrapCamelExecutionException(CamelExecutionException.java:45)
	at org.apache.camel.support.ExchangeHelper.extractResultBody(ExchangeHelper.java:701)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.extractResultBody(DefaultProducerTemplate.java:594)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.extractResultBody(DefaultProducerTemplate.java:590)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.requestBodyAndHeader(DefaultProducerTemplate.java:432)
	at org.apache.camel.component.docling.integration.DoclingServeProducerIT.testMarkdownConversionWithDoclingServe(DoclingServeProducerIT.java:59)
Caused by: java.io.IOException: Failed to convert document: HTTP/1.1 header parser received no bytes
	at org.apache.camel.component.docling.DoclingProducer.convertDocumentSync(DoclingProducer.java:1360)
	at org.apache.camel.component.docling.DoclingProducer.convertUsingDoclingServe(DoclingProducer.java:1083)
	at org.apache.camel.component.docling.DoclingProducer.processConvertToMarkdown(DoclingProducer.java:295)
	at org.apache.camel.component.docling.DoclingProducer.process(DoclingProducer.java:234)
	at org.apache.camel.support.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:65)
	at org.apache.camel.processor.SendProcessor.sendUsingProducer(SendProcessor.java:253)
	at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:158)
	at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.handleFirst(RedeliveryErrorHandler.java:442)
	at org.apache.camel.processor.errorhandler.RedeliveryErrorHandler$SimpleTask.run(RedeliveryErrorHandler.java:418)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.doRun(DefaultReactiveExecutor.java:202)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.executeReactiveWork(DefaultReactiveExecutor.java:192)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.tryExecuteReactiveWork(DefaultReactiveExecutor.java:169)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor$Worker.schedule(DefaultReactiveExecutor.java:143)
	at org.apache.camel.impl.engine.DefaultReactiveExecutor.scheduleMain(DefaultReactiveExecutor.java:59)
	at org.apache.camel.processor.Pipeline.process(Pipeline.java:162)
	at org.apache.camel.impl.engine.CamelInternalProcessor.processNonTransacted(CamelInternalProcessor.java:385)
	at org.apache.camel.impl.engine.CamelInternalProcessor.process(CamelInternalProcessor.java:361)
	at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:103)
	at org.apache.camel.impl.engine.SharedCamelInternalProcessor.processNonTransacted(SharedCamelInternalProcessor.java:156)
	at org.apache.camel.impl.engine.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:133)
	at org.apache.camel.impl.engine.SharedCamelInternalProcessor$1.process(SharedCamelInternalProcessor.java:89)
	at org.apache.camel.impl.engine.DefaultAsyncProcessorAwaitManager.process(DefaultAsyncProcessorAwaitManager.java:81)
	at org.apache.camel.impl.engine.SharedCamelInternalProcessor.process(SharedCamelInternalProcessor.java:86)
	at org.apache.camel.support.cache.DefaultProducerCache.send(DefaultProducerCache.java:180)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.send(DefaultProducerTemplate.java:175)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.send(DefaultProducerTemplate.java:171)
	at org.apache.camel.impl.engine.DefaultProducerTemplate.requestBodyAndHeader(DefaultProducerTemplate.java:430)
	... 1 more
Caused by: ai.docling.serve.client.DoclingServeClientException: HTTP/1.1 header parser received no bytes
	at ai.docling.serve.client.DoclingServeClient.execute(DoclingServeClient.java:229)
	at ai.docling.serve.client.DoclingServeClient.executePost(DoclingServeClient.java:244)
	at ai.docling.serve.client.operations.ConvertOperations.convertSource(ConvertOperations.java:66)
	at ai.docling.serve.client.DoclingServeClient.convertSource(DoclingServeClient.java:344)
	at org.apache.camel.component.docling.DoclingProducer.convertDocumentSync(DoclingProducer.java:1357)
	... 27 more
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes
	at java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:970)
	at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:133)
	at ai.docling.serve.client.DoclingServeClient.execute(DoclingServeClient.java:224)
	... 31 more
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytes
	at java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:412)
	at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:590)
	at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)
	at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:182)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:207)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
	at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.io.IOException: Broken pipe
	at java.base/sun.nio.ch.SocketDispatcher.writev0(Native Method)
	at java.base/sun.nio.ch.SocketDispatcher.writev(SocketDispatcher.java:70)
	at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:227)
	at java.base/sun.nio.ch.IOUtil.write(IOUtil.java:158)
	at java.base/sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:574)
	at java.base/java.nio.channels.SocketChannel.write(SocketChannel.java:660)
	at java.net.http/jdk.internal.net.http.SocketTube.writeAvailable(SocketTube.java:1244)
	at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.tryFlushCurrent(SocketTube.java:354)
	at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.onNext(SocketTube.java:317)
	at java.net.http/jdk.internal.net.http.SocketTube.onNext(SocketTube.java:135)
	at java.net.http/jdk.internal.net.http.SocketTube.onNext(SocketTube.java:58)
	at java.net.http/jdk.internal.net.http.Http1Exchange$Http1Publisher$WriteTask.run(Http1Exchange.java:846)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:182)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:207)
	at java.net.http/jdk.internal.net.http.HttpClientImpl$DelegatingExecutor.execute(HttpClientImpl.java:177)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:282)
	at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:251)
	at java.net.http/jdk.internal.net.http.Http1Exchange$Http1Publisher$Http1WriteSubscription.request(Http1Exchange.java:862)
	at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber$WriteSubscription.requestMore(SocketTube.java:519)
	at java.net.http/jdk.internal.net.http.SocketTube$InternalWriteSubscriber.requestMore(SocketTube.java:404)
	... 3 more

@github-actions
Copy link
Copy Markdown
Contributor

🧪 CI tested the following changed modules:

  • components/camel-ai/camel-docling
  • test-infra/camel-test-infra-docling

POM dependency changes: targeted tests included

Modules affected by dependency changes (2)
  • :camel-docling
  • :camel-test-infra-docling

⚠️ Some tests are disabled on GitHub Actions (@DisabledIfSystemProperty(named = "ci.env.name")) and require manual verification:

  • components/camel-ai/camel-docling: 6 test(s) disabled on GitHub Actions
All tested modules (10 modules)
  • Camel :: AI :: Docling
  • Camel :: JBang :: MCP
  • Camel :: JBang :: Plugin :: Route Parser
  • Camel :: JBang :: Plugin :: TUI
  • Camel :: JBang :: Plugin :: Validate
  • Camel :: Launcher :: Container
  • Camel :: Test Infra :: All test services
  • Camel :: Test Infra :: Docling
  • Camel :: YAML DSL :: Validator
  • Camel :: YAML DSL :: Validator Maven Plugin

⚙️ View full build and test results

@Harithanagothu2
Copy link
Copy Markdown
Author

Hi @apupier,
We were not able to test the integration test failures on ppc64le, as these tests are currently skipped on x86.

@apupier
Copy link
Copy Markdown
Contributor

apupier commented Apr 24, 2026

We were not able to test the integration test failures on ppc64le, as these tests are currently skipped on x86.

they are skipped only on our CIs.

In the log that you provided for x86, the tests are passing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants