[
https://jira.jboss.org/browse/ISPN-577?page=com.atlassian.jira.plugin.sys...
]
Galder Zamarreno commented on ISPN-577:
---------------------------------------
ReplicationQueue.flush() uses ResponseMode.ASYNCHRONOUS regardless of whether
asyncMarshalling is turned off or not, and that might be the cause for the ordering
problem. Basically, asyncMarshalling can be turned on if each cache operation works on
different keys. The moment you start having multiple ops on same key, with
asyncMarshalling=true, the order of these can be swapped before reaching transport.
ReplicationQueue disregards asyncMarshalling and directly pushes the call to a separate
thread, as if asyncMarshalling was turned on, leading to ordering problems.
State transfer and replication queue ordering issue
---------------------------------------------------
Key: ISPN-577
URL:
https://jira.jboss.org/browse/ISPN-577
Project: Infinispan
Issue Type: Bug
Components: State transfer
Affects Versions: 4.0.0.Final, 4.1.0.CR1
Reporter: Galder Zamarreno
Assignee: Galder Zamarreno
Priority: Critical
Fix For: 4.1.0.CR3, 4.1.0.Final
Attachments: StateTransferReplicationQueueTest.java
There's an ordering issue going on under the following circumstances where A and B
communicate asynchronously via replication queue:
- Start Node A
- Start Node B
- Begin Pushing Requests to A
- A and B are in Sync
- Restart B (While Pushing Requests to A)
- State Transfer from A to B
- A and B are NOT in Sync
There appears to be an ordering issue:
Master
2010-08-05 11:38:21,028 // Put Key: 342197608235468 (OrderCache)
2010-08-05 11:38:21,230 // Remove Key: 342197608235468 (OrderCache)
2010-08-05 11:38:23,784 // State Transfer Response (OrderCache)
Slave
2010-08-05 11:38:23,782 // State Transfer Request (OrderCache)
2010-08-05 11:38:34,529 // Remove Key: 342197608235468 (OrderCache) *Request 693*
2010-08-05 11:46:08,845 // Put Key: 342197608235468 (OrderCache) * Request 692*
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira