Dear Camel group,

Maybe I missed something.
But in my testcase/environment the JMS Endpoint does not stream and throws
an Java Heap Exception:

I have used a simple Apache Camel 3.22.0 Spring boot Route:
My JMS is a current: Red Hat AMQ Broker 7.11.0 (locally setup as cluster)
The FTP is local org.apache.ftpserver

In the example below it throws an Java Heap error. If I replace JMS with
direct it works.

Any help would be appreciated.

public void configure() {

    
//from("ftp:admin:admin@localhost:9999?filename=SmallFile.data&noop=true&streamDownload=true&stepwise=false")
    
from("ftp:admin:admin@localhost:9999?filename=BigFile.data&noop=true&streamDownload=true&stepwise=false")
            .routeId("Sending")
            .doTry()
                .to("jms:testjms_q?streamMessageTypeEnabled=true")
            .doCatch(Throwable.class)
            .process(exchange -> {
                System.err.println("ERROR:" + exceptionMessage());
            })
            //.to("direct:process")
            .log("Successfully finished exchange");

    from("jms:testjms_q")
    //from("direct:process")
            .routeId("Receiving Route")
            .split().tokenize(",").streaming()
            .process(exchange -> {
                Long lineNumber =
exchange.getProperty("CamelSplitIndex", Long.class);
                if ((lineNumber + 1) % 1000000 == 0) {
                    exchange.getIn().getBody(String.class);
                    log.info("streamed Line {}: {}", lineNumber + 1,
exchange.getIn().getBody(String.class));
                }
            })
            .end()
            .log("Finished");




}

Reply via email to