You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by "JinyuChen97 (via GitHub)" <gi...@apache.org> on 2026/09/10 10:19:45 UTC

[PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

JinyuChen97 opened a new pull request, #26259:
URL: https://github.com/apache/camel/pull/26259

   # Description
   
   Pipelined MLLP messages (multiple HL7 messages sent in a single TCP write) were silently dropped because the buffer only tracked the first envelope. Extract a processBufferedMessages() loop that preserves trailing data across reset/ACK cycles, and add isCompleteEnvelopeAt() to distinguish real pipelined messages from junk containing SOB bytes.
   
   # Target
   
   - [X] I checked that the commit is targeting the correct branch (Camel 4 uses the `main` branch)
   
   # Tracking
   - [X] If this is a large change, bug fix, or code improvement, I checked there is a [JIRA issue](https://issues.apache.org/jira/browse/CAMEL) filed for the change (usually before you start working on it).
   
   <!--
   # *Note*: trivial changes like, typos, minor documentation fixes and other small items do not require a JIRA issue. In this case your pull request should address just this issue, without pulling in other changes.
   -->
   
   # Apache Camel coding standards and style
   
   - [X] I checked that each commit in the pull request has a meaningful subject line and body.
   
   <!--
   If you're unsure, you can format the pull request title like `[CAMEL-XXX] Fixes bug in camel-file component`, where you replace `CAMEL-XXX` with the appropriate JIRA issue.
   -->
   
   - [X] I have run `mvn clean install -DskipTests` locally from root folder and I have committed all auto-generated changes.
   
   <!--
   You can run the aforementioned command in your module so that the build auto-formats your code. This will also be verified as part of the checks and your PR may be rejected if if there are uncommited changes after running `mvn clean install -DskipTests`.
   
   You can learn more about the contribution guidelines at https://github.com/apache/camel/blob/main/CONTRIBUTING.md
   -->
   
   # AI-assisted contributions
   
   - [X] If this PR includes AI-generated code, commits have proper co-authorship attribution (e.g., `Co-authored-by` trailers) and the PR description identifies the AI tool used.
   
   _Co-Authored-By: Federico Mariani                                                                                                                             
   Co-Authored-By: Claude Opus 4.6 <no...@anthropic.com>_  


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "davsclaus (via GitHub)" <gi...@apache.org>.
davsclaus merged PR #26259:
URL: https://github.com/apache/camel/pull/26259


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "Croway (via GitHub)" <gi...@apache.org>.
Croway commented on code in PR #26259:
URL: https://github.com/apache/camel/pull/26259#discussion_r3978274124


##########
components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/TcpSocketConsumerRunnable.java:
##########
@@ -217,6 +200,77 @@ public void run() {
         }
     }
 
+    /**
+     * Process all complete MLLP envelopes currently in the buffer.
+     * <p>
+     * The buffer is reused to generate and send the acknowledgement. Preserve a trailing framed message before
+     * processing the current one and restore it afterwards, so pipelined messages are not lost when the buffer is reset
+     * for the acknowledgement.
+     */
+    private void processBufferedMessages() {
+        do {
+            byte[] hl7MessageBytes = mllpBuffer.toMllpPayload();
+            if (log.isDebugEnabled()) {
+                log.debug("Received {} byte message {}", hl7MessageBytes.length,
+                        hl7Util.convertToLoggableString(hl7MessageBytes));
+            }
+            if (mllpBuffer.hasLeadingOutOfBandData()) {
+                log.warn("Ignoring leading out-of-band data: {}",
+                        hl7Util.convertToLoggableString(mllpBuffer.getLeadingOutOfBandData()));
+            }
+
+            byte[] trailingMessageData = extractTrailingMessageData();
+            mllpBuffer.reset();
+            consumer.processMessage(hl7MessageBytes, this);
+
+            if (trailingMessageData != null) {
+                mllpBuffer.reset();
+                mllpBuffer.write(trailingMessageData);
+            }
+        } while (isSocketOpen() && mllpBuffer.hasCompleteEnvelope());
+
+        if (!mllpBuffer.isEmpty() && !isSocketOpen()) {
+            log.warn("Abandoning {} bytes of unprocessed pipelined data because the connection is closed",
+                    mllpBuffer.size());
+        }
+    }
+
+    /**
+     * Return trailing data beginning with the next START_OF_BLOCK, if present. Data preceding it, and trailing data
+     * with no START_OF_BLOCK, is out-of-band data.
+     */
+    private byte[] extractTrailingMessageData() {
+        if (!mllpBuffer.hasTrailingOutOfBandData()) {
+            return null;
+        }
+
+        byte[] trailingData = mllpBuffer.getTrailingOutOfBandData();
+        int trailingDataOffset = mllpBuffer.size() - trailingData.length;
+        for (int i = 0; i < trailingData.length; i++) {
+            if (trailingData[i] == MllpProtocolConstants.START_OF_BLOCK) {
+                if (i == 0 || mllpBuffer.isCompleteEnvelopeAt(trailingDataOffset + i)) {

Review Comment:
   **Pipelined message still lost when an `<LF>` follows `<FS><CR>`**
   
   When out-of-band bytes come before the next `<VT>` and that message isn't fully buffered yet, this condition is false, so the `<VT>` is skipped and the partial message is discarded. The rest of the message then arrives with no `<VT>` and `readSocketInputStream` drops it too, so it is never routed or ACKed.
   
   This can happen in practice with senders that end frames with `<FS><CR><LF>` (for example, files queued with a trailing newline, see nextgenhealthcare/connect#510) when they pipeline a message larger than what is left of the read (default `minBufferSize=2048`). The server logs `Ignoring trailing out-of-band data`, followed by two `ignoring N bytes received before START_OF_BLOCK` warnings.
   
   Suggestion: skip leading `CR`/`LF` bytes before applying the `i == 0` rule. The partial message is then kept, and junk that contains a `<VT>` keeps the current behaviour.
   
   <details><summary>Reproducer: <code>lfTrailerSecondMessageSpansReads</code> fails on this PR's head (SocketTimeoutException waiting for ACK 2), the control passes</summary>
   
   ```java
   package org.apache.camel.component.mllp;
   
   import java.io.ByteArrayOutputStream;
   import java.io.InputStream;
   import java.io.OutputStream;
   import java.net.Socket;
   import java.nio.charset.StandardCharsets;
   import java.util.concurrent.TimeUnit;
   
   import org.apache.camel.EndpointInject;
   import org.apache.camel.builder.RouteBuilder;
   import org.apache.camel.component.mock.MockEndpoint;
   import org.apache.camel.test.AvailablePortFinder;
   import org.apache.camel.test.junit6.CamelTestSupport;
   import org.apache.camel.test.mllp.Hl7TestMessageGenerator;
   import org.junit.jupiter.api.Test;
   
   import static org.junit.jupiter.api.Assertions.assertTrue;
   
   public class MllpPipelinedTrailingLineFeedTest extends CamelTestSupport {
       final int port = AvailablePortFinder.getNextAvailable();
   
       @EndpointInject("mock://result")
       MockEndpoint result;
   
       @Override
       protected RouteBuilder createRouteBuilder() {
           return new RouteBuilder() {
               @Override
               public void configure() {
                   fromF("mllp://localhost:%d", port).to(result);
               }
           };
       }
   
       // Fails: message 2 is logged as "Ignoring trailing out-of-band data" and never ACKed
       @Test
       public void lfTrailerSecondMessageSpansReads() throws Exception {
           runPipelined(new byte[] { 0x1c, 0x0d, 0x0a });
       }
   
       // Passes: same traffic without the LF
       @Test
       public void noLfTrailerSecondMessageSpansReads() throws Exception {
           runPipelined(new byte[] { 0x1c, 0x0d });
       }
   
       private void runPipelined(byte[] trailer) throws Exception {
           String first = Hl7TestMessageGenerator.generateMessage(1);
           StringBuilder second = new StringBuilder(Hl7TestMessageGenerator.generateMessage(2));
           for (int i = 1; second.length() < 16 * 1024; i++) {
               // larger than what is left of the default 2048-byte first read
               second.append("OBX|").append(i).append("|TX|NOTE^Note||Lorem ipsum dolor sit amet||||||F\r");
           }
           result.expectedBodiesReceived(first, second.toString());
   
           ByteArrayOutputStream wire = new ByteArrayOutputStream();
           for (String hl7 : new String[] { first, second.toString() }) {
               wire.write(0x0b);
               wire.writeBytes(hl7.getBytes(StandardCharsets.ISO_8859_1));
               wire.writeBytes(trailer);
           }
   
           try (Socket socket = new Socket("localhost", port)) {
               socket.setSoTimeout(10000);
               OutputStream out = socket.getOutputStream();
               out.write(wire.toByteArray()); // single write: pipelined
               out.flush();
   
               InputStream in = socket.getInputStream();
               assertTrue(readFrame(in).contains("MSA|AA|00001"));
               assertTrue(readFrame(in).contains("MSA|AA|00002")); // SocketTimeoutException with the LF trailer
           }
           MockEndpoint.assertIsSatisfied(context, 10, TimeUnit.SECONDS);
       }
   
       private static String readFrame(InputStream in) throws Exception {
           ByteArrayOutputStream bytes = new ByteArrayOutputStream();
           int b;
           while ((b = in.read()) != 0x1c) {
               if (b == -1) {
                   throw new IllegalStateException("connection closed");
               }
               bytes.write(b);
           }
           in.read(); // <CR>
           return bytes.toString(StandardCharsets.ISO_8859_1);
       }
   }
   ```
   
   </details>
   
   _Claude Code on behalf of Croway_
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "gnodet-bot (via GitHub)" <gi...@apache.org>.
gnodet-bot commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5620202050

   <!-- camel-backport-bot -->
   
   ### 🔄 Backport Bot
   
   This bugfix targets `main` and may need porting to:
   - `camel-4.22.x`
   - `camel-4.18.x`
   
   Labels `port/<branch>` have been added. Remove a label to opt out of porting to that branch.
   
   Port PRs will be created automatically when this PR is merged. Comment `/port` to create them now.
   
   â„šī¸ If you push additional commits after `/port`, use `/port` again to update the port PRs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "gnodet-bot (via GitHub)" <gi...@apache.org>.
gnodet-bot commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5620386123

   <!-- camel-backport-bot -->
   
   ### 🔄 Backport Bot
   
   **Conflicts (🤖 agent dispatched to resolve):**
   - âš ī¸ `camel-4.22.x` — Command '['git', 'fetch', 'origin', 'd89b367daedecf5b0a7e3bbac55fa2a2da4d57f6']' timed out after 60 seconds
   - âš ī¸ `camel-4.18.x` — Command '['git', 'fetch', 'origin', 'd89b367daedecf5b0a7e3bbac55fa2a2da4d57f6']' timed out after 60 seconds
   
   â„šī¸ If you push additional commits after `/port`, use `/port` again to update the port PRs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "gnodet-bot (via GitHub)" <gi...@apache.org>.
gnodet-bot commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5632180254

   <!-- camel-backport-bot -->
   
   ### 🔄 Backport Bot
   
   **Conflicts (🤖 agent dispatched to resolve):**
   - âš ī¸ `camel-4.22.x` — Command failed: git remote add fork https://github.com/gnodet-bot/camel.git
   error: remote fork already exists.
   
   - âš ī¸ `camel-4.18.x` — Command failed: git remote add fork https://github.com/gnodet-bot/camel.git
   error: remote fork already exists.
   
   
   â„šī¸ If you push additional commits after `/port`, use `/port` again to update the port PRs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "gnodet-bot (via GitHub)" <gi...@apache.org>.
gnodet-bot commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5632231911

   <!-- camel-backport-bot -->
   
   ### 🔄 Backport Bot
   
   **Conflicts (🤖 agent dispatched to resolve):**
   - âš ī¸ `camel-4.22.x` — No changes after cherry-pick (already applied?)
   - âš ī¸ `camel-4.18.x` — Cherry-pick conflict in: components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/MllpSocketBuffer.java, components/camel-mllp/src/test/java/org/apache/camel/component/mllp/MllpTcpServerConsumerPipelinedMessagesTest.java
   
   â„šī¸ If you push additional commits after `/port`, use `/port` again to update the port PRs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5617155539

   :star2: Thank you for your contribution to the Apache Camel project! :star2:
     :robot: CI automation will test this PR automatically.
   
     :camel: 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](https://camel.apache.org/community/team/#committers) have access to the summary.
     
     :warning: Be careful when sharing logs. Review their contents before sharing them publicly.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5617598983

   <!-- ci-tested-modules -->
   :test_tube: **CI tested the following changed modules:**
   
   - `components/camel-mllp`
   
   ---
   
   <details><summary>:microscope: Scalpel shadow comparison — Scalpel: 9 tested, 27 compile-only — current: 9 all tested</summary>
   
   [Maveniverse Scalpel](https://github.com/maveniverse/scalpel) detected **36 affected modules** (current approach: 9).
   
   <details><summary>:warning: Modules only in Scalpel (27)</summary>
   
   - `apache-camel`
   - `camel-allcomponents`
   - `camel-catalog`
   - `camel-catalog-console`
   - `camel-catalog-maven`
   - `camel-catalog-suggest`
   - `camel-componentdsl`
   - `camel-endpointdsl`
   - `camel-endpointdsl-support`
   - `camel-itest`
   - `camel-jbang-core`
   - `camel-jbang-it`
   - `camel-jbang-main`
   - `camel-jbang-plugin-edit`
   - `camel-jbang-plugin-generate`
   - `camel-jbang-plugin-kubernetes`
   - `camel-jbang-plugin-test`
   - `camel-kamelet-main`
   - `camel-launcher`
   - `camel-report-maven-plugin`
   - `camel-route-parser`
   - `camel-yaml-dsl`
   - `camel-yaml-dsl-deserializers`
   - `camel-yaml-dsl-maven-plugin`
   - `coverage`
   - `docs`
   - `dummy-component`
   
   </details>
   
   **Skip-tests mode would test 9 modules** (1 direct + 8 downstream), **skip tests for 27** (generated code, meta-modules)
   
   <details><summary>Modules Scalpel would test (9)</summary>
   
   - `camel-jbang-mcp`
   - `camel-jbang-plugin-mcp`
   - `camel-jbang-plugin-route-parser`
   - `camel-jbang-plugin-tui`
   - `camel-jbang-plugin-validate`
   - `camel-launcher-container`
   - `camel-mllp`
   - `camel-yaml-dsl-validator`
   - `camel-yaml-dsl-validator-maven-plugin`
   
   </details>
   
   <details><summary>Modules with tests skipped (27)</summary>
   
   - `apache-camel`
   - `camel-allcomponents`
   - `camel-catalog`
   - `camel-catalog-console`
   - `camel-catalog-maven`
   - `camel-catalog-suggest`
   - `camel-componentdsl`
   - `camel-endpointdsl`
   - `camel-endpointdsl-support`
   - `camel-itest`
   - `camel-jbang-core`
   - `camel-jbang-it`
   - `camel-jbang-main`
   - `camel-jbang-plugin-edit`
   - `camel-jbang-plugin-generate`
   - `camel-jbang-plugin-kubernetes`
   - `camel-jbang-plugin-test`
   - `camel-kamelet-main`
   - `camel-launcher`
   - `camel-report-maven-plugin`
   - `camel-route-parser`
   - `camel-yaml-dsl`
   - `camel-yaml-dsl-deserializers`
   - `camel-yaml-dsl-maven-plugin`
   - `coverage`
   - `docs`
   - `dummy-component`
   
   </details>
   
   > :information_source: Shadow mode — Scalpel observes but does not affect test execution. [Learn more](https://github.com/maveniverse/scalpel)
   
   </details>
   
   :warning: **Some tests are disabled on GitHub Actions** (`@DisabledIfSystemProperty(named = "ci.env.name")`) and require manual verification:
   
   - `components/camel-mllp`: 1 test(s) disabled on GitHub Actions
   
   <details><summary>All tested modules (36 modules, 4m 32s total)</summary>
   
   **Total reactor time:** 4m 32s
   
   | Module | Duration | Status |
   | --- | --- | --- |
   | Camel :: YAML DSL | 58.3s | SUCCESS |
   | Camel :: Launcher | 42.6s | SUCCESS |
   | Camel :: JBang :: MCP | 31.2s | SUCCESS |
   | Camel :: JBang :: Plugin :: TUI | 19.7s | SUCCESS |
   | Camel :: Component DSL | 15.9s | SUCCESS |
   | Camel :: Catalog :: Camel Catalog | 14.8s | SUCCESS |
   | Camel :: JBang :: Plugin :: Kubernetes | 13.1s | SUCCESS |
   | Camel :: Docs | 9.8s | SUCCESS |
   | Camel :: Catalog :: Camel Report Maven Plugin | 7.8s | SUCCESS |
   | Camel :: JBang :: Plugin :: Testing | 7.1s | SUCCESS |
   | Camel :: Catalog :: Camel Route Parser | 7.1s | SUCCESS |
   | Camel :: Kamelet Main | 6.3s | SUCCESS |
   | Camel :: All Components Sync point | 5.0s | SUCCESS |
   | Camel :: YAML DSL :: Deserializers | 4.8s | SUCCESS |
   | Camel :: YAML DSL :: Validator | 4.7s | SUCCESS |
   | Camel :: YAML DSL :: Maven Plugins | 3.1s | SUCCESS |
   | Camel :: YAML DSL :: Validator Maven Plugin | 2.6s | SUCCESS |
   | Camel :: Catalog :: Maven | 2.5s | SUCCESS |
   | Camel :: Coverage | 2.4s | SUCCESS |
   | Camel :: Catalog :: Suggest (deprecated) | 2.2s | SUCCESS |
   | Camel :: Assembly | 1.5s | SUCCESS |
   | Camel :: JBang :: Plugin :: Edit | 1.5s | SUCCESS |
   | Camel :: JBang :: Plugin :: Generate | 1.2s | SUCCESS |
   | Camel :: Catalog :: Dummy Component | 1.1s | SUCCESS |
   | Camel :: JBang :: Plugin :: Validate | 1.0s | SUCCESS |
   | Camel :: JBang :: Main | 0.9s | SUCCESS |
   | Camel :: Catalog :: Console | 0.9s | SUCCESS |
   | Camel :: JBang :: Integration tests | 0.8s | SUCCESS |
   | Camel :: Endpoint DSL :: Support | 0.8s | SUCCESS |
   | Camel :: Launcher :: Container | 0.6s | SUCCESS |
   | Camel :: JBang :: Plugin :: Route Parser | 0.6s | SUCCESS |
   | Camel :: JBang :: Plugin :: MCP | 0.5s | SUCCESS |
   | Camel :: Endpoint DSL | n/a |  |
   | Camel :: Integration Tests | n/a |  |
   | Camel :: JBang :: Core | n/a |  |
   | Camel :: MLLP | n/a |  |
   
   **Top 20 slowest modules:**
   - `Camel :: YAML DSL` (58.3s)
   - `Camel :: Launcher` (42.6s)
   - `Camel :: JBang :: MCP` (31.2s)
   - `Camel :: JBang :: Plugin :: TUI` (19.7s)
   - `Camel :: Component DSL` (15.9s)
   - `Camel :: Catalog :: Camel Catalog` (14.8s)
   - `Camel :: JBang :: Plugin :: Kubernetes` (13.1s)
   - `Camel :: Docs` (9.8s)
   - `Camel :: Catalog :: Camel Report Maven Plugin` (7.8s)
   - `Camel :: JBang :: Plugin :: Testing` (7.1s)
   - `Camel :: Catalog :: Camel Route Parser` (7.1s)
   - `Camel :: Kamelet Main` (6.3s)
   - `Camel :: All Components Sync point` (5.0s)
   - `Camel :: YAML DSL :: Deserializers` (4.8s)
   - `Camel :: YAML DSL :: Validator` (4.7s)
   - `Camel :: YAML DSL :: Maven Plugins` (3.1s)
   - `Camel :: YAML DSL :: Validator Maven Plugin` (2.6s)
   - `Camel :: Catalog :: Maven` (2.5s)
   - `Camel :: Coverage` (2.4s)
   - `Camel :: Catalog :: Suggest (deprecated)` (2.2s)
   
   </details>
   
   ---
   :gear: [View full build and test results](https://github.com/apache/camel/actions/runs/34465476698)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] CAMEL-24668 - Fix Camel MLLP consumer discards pipelined HL7 messages that arrive in a single TCP read [camel]

Posted by "gnodet-bot (via GitHub)" <gi...@apache.org>.
gnodet-bot commented on PR #26259:
URL: https://github.com/apache/camel/pull/26259#issuecomment-5631766320

   <!-- camel-backport-bot -->
   
   ### 🔄 Backport Bot
   
   **Conflicts (🤖 agent dispatched to resolve):**
   - âš ī¸ `camel-4.22.x` — No changes after cherry-pick (already applied?)
   - âš ī¸ `camel-4.18.x` — Cherry-pick conflict in: components/camel-mllp/src/main/java/org/apache/camel/component/mllp/internal/MllpSocketBuffer.java, components/camel-mllp/src/test/java/org/apache/camel/component/mllp/MllpTcpServerConsumerPipelinedMessagesTest.java
   
   â„šī¸ If you push additional commits after `/port`, use `/port` again to update the port PRs.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@camel.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org