diff --git a/data-prepper-plugins/otel-proto-common/build.gradle b/data-prepper-plugins/otel-proto-common/build.gradle index 7c27e0fbd0..40636b049c 100644 --- a/data-prepper-plugins/otel-proto-common/build.gradle +++ b/data-prepper-plugins/otel-proto-common/build.gradle @@ -8,7 +8,7 @@ plugins { } test { - jvmArgs '-Xmx4g' + jvmArgs '-Xmx512m' } dependencies { diff --git a/data-prepper-plugins/otel-proto-common/src/main/java/org/opensearch/dataprepper/plugins/otel/codec/OTelLogsProtoBufDecoder.java b/data-prepper-plugins/otel-proto-common/src/main/java/org/opensearch/dataprepper/plugins/otel/codec/OTelLogsProtoBufDecoder.java index 30195b02da..0bd691b994 100644 --- a/data-prepper-plugins/otel-proto-common/src/main/java/org/opensearch/dataprepper/plugins/otel/codec/OTelLogsProtoBufDecoder.java +++ b/data-prepper-plugins/otel-proto-common/src/main/java/org/opensearch/dataprepper/plugins/otel/codec/OTelLogsProtoBufDecoder.java @@ -50,8 +50,9 @@ public void parse(InputStream inputStream, Instant timeReceivedMs, Consumer MAX_REQUEST_LEN) { - throw new IOException("buffer length exceeds max allowed buffer length of "+ MAX_REQUEST_LEN); + int available = inputStream.available(); + if (available > MAX_REQUEST_LEN) { + throw new IOException("buffer length " + available + " exceeds max allowed buffer length of "+ MAX_REQUEST_LEN); } byte[] buffer = inputStream.readAllBytes(); parseRequest(buffer, timeReceivedMs, eventConsumer); @@ -65,7 +66,7 @@ public void parse(InputStream inputStream, Instant timeReceivedMs, Consumer MAX_REQUEST_LEN) { - throw new IOException("buffer length exceeds max allowed buffer length of "+ MAX_REQUEST_LEN); + throw new IOException("buffer length " + len + " exceeds max allowed buffer length of "+ MAX_REQUEST_LEN); } byte[] buffer = new byte[len]; if (inputStream.read(buffer, 0, len) != len) {