Thank you, Jeff, now it works for me and I can reproduce a schema disagreement. The testing logic is like: On node 1: start the node 1 create table shutdown the node 1
Node node 2: start the node 1 create table shutdown the node 2 Then startup the two nodes and check the schema version Id Now it seems that with the deterministic table id, the schema versions on the two nodes were different initially, even though table ids are the same, and they reached an agreement at some point. Is it as expected? I am just wondering, is there any other way to re-sync the shema versions without restarting the node, cause I feel that shutdown/start is quite expensive and flaky since the schema migration is a background task? Thanks Cheng On Tue, Aug 9, 2022 at 12:12 PM Jeff Jirsa <jji...@gmail.com> wrote: > Stop node 1 before you start node 2, essentially mocking a full network > partition. > > > > On Tue, Aug 9, 2022 at 11:57 AM Cheng Wang via dev < > dev@cassandra.apache.org> wrote: > >> Thank you, Aleksey, >> Yes, I have tried this approach, the problem is there is a timing window >> that node 1 runs the CREATE TABLE while node 2 is down, and then we bring >> up the node 2 and it may receive the gossip from node 1 at startup, and the >> CREATE TABLE will fail on node 2 since the table already exists? >> >> >> >> On Tue, Aug 9, 2022 at 4:48 AM Aleksey Yeshchenko <alek...@apple.com> >> wrote: >> >>> The absolute easiest way would be to down one of the two nodes first, >>> run CREATE TABLE on the live node, shut it down, get the other one up, >>> and run the same CREATE TABLE there, the bring up the down node. >>> >>> > On 9 Aug 2022, at 07:48, Konstantin Osipov via dev < >>> dev@cassandra.apache.org> wrote: >>> > >>> > * Cheng Wang via dev <dev@cassandra.apache.org> [22/08/09 09:43]: >>> > >>> >> I am working on improving the schema disagreement issue. I need some >>> dtests >>> >> which can reproduce the schema disagreement. Anyone know if there >>> are any >>> >> existing tests for that? Or something similar? >>> > >>> > cassandra-10250 is a good start. >>> > >>> > -- >>> > Konstantin Osipov, Moscow, Russia >>> >>>