View Revisions: Issue #3972
Summary | 0003972: Tables become out of sync due incorrect conflict detection (and/or invalid conflict resolution) | ||
---|---|---|---|
Revision | 2019-05-20 12:20 by kraynopp | ||
Steps To Reproduce | I have two nodes - master and slave. In case of conflict master node has priority. 1. Make two installations of SymmetricDS on the same PC - master and slave. 2. copy files from attachement into conf and engines direcories (master - in master installation, slave - in slave installation). 3. Copy create_sample.xml and insert_sample.sql into bin directory of master installation. 4. In bin directory of master installation execute: ./dbimport --format XML --alter-case create_sample.xml ./symadmin create-sym-tables ./dbimport insert_sample.sql 5. start both SymmetricDS instances. 6. execute ./symadmin reload-node 001 from master bin directory. 7. wait. On both nodes table testtable must appear: ID | DATA1 | DATA2 1 | data | data 8. now execute statement update testtable set data1='master'; on master node and update testtable set data2='slave'; on slave node. After syncronization execute select * from testtable on both nodes. You will see on master node: ID | DATA1 | DATA2 1 | master | data and on slave node: ID | DATA1 | DATA2 1 | master | slave So the table testtable is out of sync now. In log file you will see conflict detection (however there is no conflict because of different fields is updated). |
||
Revision | 2020-03-12 12:59 by elong | ||
Steps To Reproduce | I have two nodes - master and slave. In case of conflict master node has priority. 1. Make two installations of SymmetricDS on the same PC - master and slave. 2. copy files from attachement into conf and engines direcories (master - in master installation, slave - in slave installation). 3. Copy create_sample.xml and insert_sample.sql into bin directory of master installation. 4. In bin directory of master installation execute: ./dbimport --format XML --alter-case create_sample.xml ./symadmin create-sym-tables ./dbimport insert_sample.sql 5. start both SymmetricDS instances. 6. execute ./symadmin reload-node 001 from master bin directory. 7. wait. On both nodes table testtable must appear: ID | DATA1 | DATA2 1 | data | data 8. now execute statement update testtable set data1='master'; on master node and update testtable set data2='slave'; on slave node. After syncronization execute select * from testtable on both nodes. You will see on master node: ID | DATA1 | DATA2 1 | master | data and on slave node: ID | DATA1 | DATA2 1 | master | slave So the table testtable is out of sync now. In log file you will see conflict detection (however there is no conflict because of different fields is updated). |
||
Revision | 2019-05-20 12:20 by kraynopp | ||
Additional Information | I have made some little investigation and discovered that this bug is introduced in version 3.9.5 of SymmetricDS. In versions 3.9.4 and earlier changes are merged successfully and statement select * from testtable returns the same result on both nodes: ID | DATA1 | DATA2 1 | master | slave |
||
Revision | 2020-03-12 12:59 by elong | ||
Additional Information | I have made some little investigation and discovered that this bug is introduced in version 3.9.5 of SymmetricDS. In versions 3.9.4 and earlier changes are merged successfully and statement select * from testtable returns the same result on both nodes: ID | DATA1 | DATA2 1 | master | slave |