johannschenkl opened a new issue, #1558:
URL: https://github.com/apache/fory/issues/1558

   ### Search before asking
   
   - [X] I had searched in the 
[issues](https://github.com/apache/incubator-fury/issues) and found no similar 
issues.
   
   
   ### Version
   
   0.4.1
   
   ### Component(s)
   
   Java
   
   ### Minimal reproduce step
   
   We are using fury as a replacement for jdk serialization in a java rpc 
application. If on the server side an exception is thrown, this exception in 
serialized and sent to the client.
   In some cases we seen and exception when the serialization is done.
   Thanks for your help and for that great project!
   
   Fury setup:
   
   `var fury = Fury.builder()
   .withLanguage(Language.JAVA)
   .withRefTracking(true)
   .requireClassRegistration(false)
   .withAsyncCompilation(true).build();`
   
   Relevant parts of logs:
   
   > io.fury.serializer.LambdaSerializer.read(LambdaSerializer.java:88)
   >  io.fury.Fury.readRef(Fury.java:828)
   >  io.fury.resolver.FieldResolver.skipDataBy4(FieldResolver.java:433)
   >  
com.mycompany.SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.readAndSetFields(SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.java:258)
   >  
com.mycompany.SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.read(SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.java:324)
   >  
com.mycompany.RemoteInvocationResultFuryRefCodec_1_815033865_718325701.readFields$(RemoteInvocationResultFuryRefCodec_1_815033865_718325701.java:111)
   >  
com.mycompany.RemoteInvocationResultFuryRefCodec_1_815033865_718325701.read(RemoteInvocationResultFuryRefCodec_1_815033865_718325701.java:127)
   >  io.fury.Fury.readDataInternal(Fury.java:899)
   >  io.fury.Fury.readRef(Fury.java:801)
   >  io.fury.Fury.deserializeJavaObjectAndClass(Fury.java:1135)
   >  io.fury.Fury.deserializeJavaObjectAndClass(Fury.java:1121)
   >  com.mycompany.Serializer.deserialize(Serializer.java:35)
   > 
   > ...
   > 
   > 
   > Caused by: 
   > Index -1 out of bounds for length 512
   > java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for 
length 512
   > io.fury.collection.IntArray.pop(IntArray.java:51)
   >  io.fury.resolver.MapRefResolver.reference(MapRefResolver.java:194)
   >  
io.fury.builder.SerializedLambdaFuryRefCodec_1_1361449601.read(SerializedLambdaFuryRefCodec_1_1361449601.java:193)
   >  io.fury.serializer.LambdaSerializer.read(LambdaSerializer.java:85)
   >  io.fury.Fury.readRef(Fury.java:828)
   >  io.fury.resolver.FieldResolver.skipDataBy4(FieldResolver.java:433)
   >  
com.mycompany.SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.readAndSetFields(SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.java:258)
   >  
com.mycompany.SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.read(SomeExceptionFuryRefCompatibleCodec_1_815033865_986095905.java:324)
   >  
com.mycompany.RemoteInvocationResultFuryRefCodec_1_815033865_718325701.readFields$(RemoteInvocationResultFuryRefCodec_1_815033865_718325701.java:111)
   >  
com.mycompany.RemoteInvocationResultFuryRefCodec_1_815033865_718325701.read(RemoteInvocationResultFuryRefCodec_1_815033865_718325701.java:127)
   >  io.fury.Fury.readDataInternal(Fury.java:899)
   >  io.fury.Fury.readRef(Fury.java:801)
   >  io.fury.Fury.deserializeJavaObjectAndClass(Fury.java:1135)
   >  io.fury.Fury.deserializeJavaObjectAndClass(Fury.java:1121)
   >  com.mycompany.Serializer.deserialize(Serializer.java:35)
   
   ### What did you expect to see?
   
   The deserialized payload.
   
   ### What did you see instead?
   
   An ArrayIndexOutOfBoundsException.
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit a PR?
   
   - [ ] I'm willing to submit a PR!


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to