While doing an ALTER, I remembered that some DDL commands are non deterministic, and can lead to data difference between the nodes of the same cluster.
Scenario:
Assuming there is a table with existing data
When adding a column with a non-deterministic default value (ex: @@hostname or UUID())
Then the rows will be populated on each Galera node with different (local) data
When the new column is configured as part of the primary key
Then running an update on any row of the table will lead to only one node remaining in the cluster
To reproduce:
1) Install and Configure Galera with at least 2 nodes (minimal settings).2) Create a table and insert a row:
Hello Codership Team,
While doing an ALTER, I remembered that some DDL commands are non deterministic, and can lead to data difference between the nodes of the same cluster.
Scenario:
To reproduce: 1) Install and Configure Galera with at least 2 nodes (minimal settings). 2) Create a table and insert a row:
3) Perform non-deterministic DDL:
4) Verify data difference between nodes:
5) Update existing row and observe behavior:
Notes:
Thanks for looking into it Regards, Joffrey