[ 
https://issues.apache.org/jira/browse/IGNITE-28817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Nikolay Izhikov updated IGNITE-28817:
-------------------------------------
    Labels: ise  (was: )

> Get rid of ThinClient get copy to BinaryObjectImpl
> --------------------------------------------------
>
>                 Key: IGNITE-28817
>                 URL: https://issues.apache.org/jira/browse/IGNITE-28817
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Nikolay Izhikov
>            Assignee: Nikolay Izhikov
>            Priority: Major
>              Labels: ise
>
> Currently, from memory copy point of view `ClientCache#get` request process 
> looks like:
>   # Copy value from page memory (offheap) to BinaryObjectImpl (heap).
>   # Copy value from BinaryObjectImpl (heap) to BinaryWriterEx (heap).
>   # (?) Copy value from BinaryWriteEx to nio server buffers.
> In case Ignite serving `ClientCache#get` request it possible to reduce 
> copying and copy from page memory directly in BinaryWriter.
> Possible algorithm looks like:
>   # If data is local: local node owns requested key.,
>   # if data fit in one page (simple scenariou can be widen to multipage case 
> in next tickets)
>   # then make page memory call with the callback that recieve: page pointer, 
> value offset, value length.
>   # and copy received data to writer
>   # page read lock must be held while copying data from page to writer.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to