ptupitsyn edited a comment on pull request #8867:
URL: https://github.com/apache/ignite/pull/8867#issuecomment-801765328


   Summarizing our private discussion with @nizhikov :
   
   **Problem**
   Service arguments are deserialized "in the middle" when pass `Object[] args` 
around in `GridServiceProxy`:
   * This causes array element type info loss
   * This is totally unnecessary and reduces performance
   
   **Possible fix**
   Do not perform unnecessary argument des/ser, retain original binary 
representation along the call chain.
   E.g. for .NET -> .NET service call, the bytes are written on .NET side on 
one node will be received exactly as is on .NET side on another node.
   
   This can be achieved by wrapping the arguments in some way - `byte[]` or 
`BinaryObject`, and passing this around instead of `Object[]`. This way we can 
avoid thread local flags and new system types.


----------------------------------------------------------------
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.

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


Reply via email to