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

Anilkumar Gingade updated GEODE-8394:
-------------------------------------
    Description: 
When executing the command, java client sends the command in the form of 
message (Parts). If there is a failure during the send, it retries number of 
times based on the retry-attempt setting.
If there is a failure in the first attempt due to Exception (IOException, 
EOFException - read timeout); during the second attempt the client is sending 
partial data, instead of the complete data.

This could be reproduced by setting a small read-timeout and large object (Put).

Because of this, the put from client succeeds by creating partial data on the 
server cache. Since the data is stored in serialized form, there is no 
exception thrown during put() operation, giving an impression that put 
operation is successful. 

The workaround for now is to have large read-timeout setting; while trying to 
send a large object.



  was:
When executing the command, java client sends the command in the form of 
message (Parts). If there is a failure during the send, it retries number of 
times based on the retry-attempt setting.
If there is a failure in the first attempt due to Exception (IOException, 
EOFException - read timeout); during the second attempt the client is sending 
partial data, instead of the complete data.

This could be reproduced by setting a small read-timeout and large object (Put).

Because of this, the put from client succeeds by creating partial data on the 
server cache. Since the data is stored in serialized form, there is no 
exception thrown during put() operation, giving an impression that put 
operation is successful. 



> Client sends partial data during retry
> --------------------------------------
>
>                 Key: GEODE-8394
>                 URL: https://issues.apache.org/jira/browse/GEODE-8394
>             Project: Geode
>          Issue Type: Bug
>          Components: client/server
>    Affects Versions: 1.14.0
>            Reporter: Anilkumar Gingade
>            Priority: Major
>
> When executing the command, java client sends the command in the form of 
> message (Parts). If there is a failure during the send, it retries number of 
> times based on the retry-attempt setting.
> If there is a failure in the first attempt due to Exception (IOException, 
> EOFException - read timeout); during the second attempt the client is sending 
> partial data, instead of the complete data.
> This could be reproduced by setting a small read-timeout and large object 
> (Put).
> Because of this, the put from client succeeds by creating partial data on the 
> server cache. Since the data is stored in serialized form, there is no 
> exception thrown during put() operation, giving an impression that put 
> operation is successful. 
> The workaround for now is to have large read-timeout setting; while trying to 
> send a large object.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to