HPInc / jipp

A Java-compatible implementation of IPP
MIT License
144 stars 41 forks source link

EOF exception during load test #164

Closed tushar1402 closed 1 month ago

tushar1402 commented 8 months ago

Hi Jipp team,

We are running a load test for our print path service which is built on top of IPP. We are using jipp library for different operations, when we are doing packet conversion to binary, after some requests are sent to server, we are getting EOF exception.

We are using 0.6.21 version of jipp currently for our testing, and we are observing this issue. Could you please help us understand how can we handle this issue?

We are using Jmeter as our load testing tool and request body is byteArray after converting the IPP packet. In Jmeter we are handling the exception also but from server side we are seeing this error being thrown from the service when load is generated.

StackTrace:

java.io.EOFException at java.base/java.io.DataInputStream.readFully(DataInputStream.java:203) at java.base/java.io.DataInputStream.readFully(DataInputStream.java:172) at com.hp.jipp.encoding.IppInputStream.readValueBytes$jipp_core(IppInputStream.kt:41) at com.hp.jipp.encoding.IppInputStream.readString$jipp_core(IppInputStream.kt:61) at com.hp.jipp.encoding.AttributeGroup$Companion.readAnyAttribute(AttributeGroup.kt:175) at com.hp.jipp.encoding.AttributeGroup$Companion.readNextAttribute(AttributeGroup.kt:166) at com.hp.jipp.encoding.AttributeGroup$Companion$read$1.invoke(AttributeGroup.kt:156) at com.hp.jipp.encoding.AttributeGroup$Companion$read$1.invoke(AttributeGroup.kt:62) at com.hp.jipp.util.GenerateKt$iterateUntilNull$1.next(Generate.kt:22) at kotlin.sequences.SequencesKt_SequencesKt.toCollection(Sequences.kt:787) at kotlin.sequences.SequencesKtSequencesKt.toMutableList(_Sequences.kt:817) at kotlin.sequences.SequencesKt_SequencesKt.toList(Sequences.kt:808) at com.hp.jipp.encoding.AttributeGroup$Companion.read(AttributeGroup.kt:156) at com.hp.jipp.encoding.IppInputStream.readNextGroup(IppInputStream.kt:32) at com.hp.jipp.encoding.IppInputStream.access$readNextGroup(IppInputStream.kt:14) at com.hp.jipp.encoding.IppInputStream$readPacket$1.invoke(IppInputStream.kt:23) at com.hp.jipp.encoding.IppInputStream$readPacket$1.invoke(IppInputStream.kt:14) at com.hp.jipp.util.GenerateKt$iterateUntilNull$1.next(Generate.kt:22) at kotlin.sequences.SequencesKtSequencesKt.toCollection(_Sequences.kt:787) at kotlin.sequences.SequencesKt_SequencesKt.toMutableList(Sequences.kt:817) at kotlin.sequences.SequencesKtSequencesKt.toList(_Sequences.kt:808) at com.hp.jipp.encoding.IppInputStream.readPacket(IppInputStream.kt:23)