KPL errors encountered after upgrading Spring Cloud Stream Binder for Kinesis to 4.0.2

After upgrading from org.springframework.cloud:spring-cloud-stream-binder-kinesis:4.0.0 to 4.0.2, we are encountering errors as seen in the following stack trace:

2024-01-08 | 13:51:05.700 | kpl-daemon-0003  | ERROR | c.a.s.k.producer.LogInputStreamReader    | Trace:                                  | Span:                  | [ERROR]
---BEGIN ERROR----
Signal: SIGSEGV Code: (1) Address: 18446744073709551608
Description: Segmentation fault
---BEGIN STACK TRACE---
SYMBOLS:(17/800)
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x481209]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x480dff]
/lib/x86_64-linux-gnu/libc.so.6(+0x3bcf0)[0x7f3f79103cf0]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0xa6d7eb]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x4337b9]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x42107e]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x49de71]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x431ef7]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x421519]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x422b2b]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x422d39]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x424929]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x48aa65]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0x48ac74]
/tmp/amazon-kinesis-producer-native-binaries/kinesis_producer_41844663F5C27C0951BAD79EF669ACBFE9FC8C00[0xa6ad6f]
/lib/x86_64-linux-gnu/libc.so.6(+0x90402)[0x7f3f79158402]
/lib/x86_64-linux-gnu/libc.so.6(+0x11f590)[0x7f3f791e7590]

---END STACK TRACE---
---END ERROR---

2024-01-08 | 13:51:06.720 | kpl-daemon-0005  | ERROR | c.a.s.kinesis.producer.KinesisProducer   | Trace:                                  | Span:                  | Error in child process
java.lang.RuntimeException: EOF reached during read
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:532)
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:508)
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:504)
        at com.amazonaws.services.kinesis.producer.Daemon.readSome(Daemon.java:553)
        at com.amazonaws.services.kinesis.producer.Daemon.receiveMessage(Daemon.java:243)
        at com.amazonaws.services.kinesis.producer.Daemon.access$500(Daemon.java:61)
        at com.amazonaws.services.kinesis.producer.Daemon$3.run(Daemon.java:298)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
2024-01-08 | 13:51:06.725 | kpl-daemon-0005  | INFO  | c.a.s.kinesis.producer.KinesisProducer   | Trace:                                  | Span:                  | Restarting native producer process.
2024-01-08 | 13:51:06.731 | -pool-1-thread-0 | ERROR | o.s.integration.handler.LoggingHandler   | Trace:                                  | Span:                  | org.springframework.integration.aws.support.AwsRequestFailureException, failedMessage=GenericMessage [payload=byte[27], headers={id=e6e3c654-7891-a324-4bae-7d752bbeabcd, contentType=application/vnd.personevent.v1+avro, traceparent=00-30bde9500a02907adb0df6457b32c458-b72ce9bd53604036-00, timestamp=1704739865658}] [request=PutRecordRequest(StreamName=people-reply, Data=SdkBytes(bytes=******), PartitionKey=1775136254)]
        at org.springframework.integration.aws.outbound.AbstractAwsMessageHandler.handleResponse(AbstractAwsMessageHandler.java:148)
        at org.springframework.integration.aws.outbound.AbstractAwsMessageHandler.lambda$handleMessageInternal$0(AbstractAwsMessageHandler.java:117)
        at java.base/java.util.concurrent.CompletableFuture.uniHandle(Unknown Source)
        at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(Unknown Source)
        at java.base/java.util.concurrent.CompletableFuture.postComplete(Unknown Source)
        at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(Unknown Source)
        at org.springframework.integration.aws.outbound.KplMessageHandler$2.onFailure(KplMessageHandler.java:488)
        at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1119)
        at com.google.common.util.concurrent.DirectExecutor.execute(DirectExecutor.java:31)
        at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:1286)
        at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:1055)
        at com.google.common.util.concurrent.AbstractFuture.setException(AbstractFuture.java:807)
        at com.google.common.util.concurrent.SettableFuture.setException(SettableFuture.java:55)
        at com.amazonaws.services.kinesis.producer.KinesisProducer$MessageHandler$2.run(KinesisProducer.java:200)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.util.concurrent.CompletionException: java.lang.RuntimeException: EOF reached during read
        at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(Unknown Source)
        at java.base/java.util.concurrent.CompletableFuture.completeThrowable(Unknown Source)
        at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown Source)
        ... 13 more
Caused by: java.lang.RuntimeException: EOF reached during read
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:532)
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:508)
        at com.amazonaws.services.kinesis.producer.Daemon.fatalError(Daemon.java:504)
        at com.amazonaws.services.kinesis.producer.Daemon.readSome(Daemon.java:553)
        at com.amazonaws.services.kinesis.producer.Daemon.receiveMessage(Daemon.java:243)
        at com.amazonaws.services.kinesis.producer.Daemon.access$500(Daemon.java:61)
        at com.amazonaws.services.kinesis.producer.Daemon$3.run(Daemon.java:298)
        ... 3 more

Is anyone else encountering this or similar errors? I do see that com.amazonaws:amazon-kinesis-producer:0.15.10 has been created to address a bug, but I’m not sure if that bug is related to what we are encountering. Also, 0.15.10 has not been released to Maven Central yet.

Leave a Comment