programing

MariaDB Galera 클러스터 고유 키를 신뢰할 수 있습니까?

iphone6s 2023. 9. 24. 12:33
반응형

MariaDB Galera 클러스터 고유 키를 신뢰할 수 있습니까?

MariaDB Galera 클러스터의 테이블 구조는 다음과 같습니다.

CREATE TABLE test (
  `name` varchar(100) NOT NULL,
  `master` tinyint(1) DEFAULT NULL,
  PRIMARY KEY (`name`),
  UNIQUE KEY `master` (`master`)
) ENGINE=InnoDB;

노드가 여러 개 있는 클러스터에서 실행 중인 경우 병렬로 다음 작업을 수행합니다.

INSERT INTO test (name, master) VALUES('node1', 1);

다른 노드에

INSERT INTO test (name, master) VALUES('node2', 1);

하나의 쿼리가 다른 쿼리를 대체하지 않는다는 것을 믿을 수 있습니까?

두 쿼리가 동시에 정확히 실행되는 경우에도 두 쿼리 중 하나가 오류와 함께 반환됩니까?

쿼리가 오류를 반환하지 않는 경우 다른 INSERT가 해당 행을 다른 이름으로 대체할 수 없다고 믿을 수 있습니까?

고유 제약 조건이 적용됩니다.Galera는 낙관적인 잠금을 사용하며 클러스터 초에 도달하는 쿼리가 정상적인 중복 입력 오류를 반환하는지 트랜잭션 충돌에 대한 다른 오류를 반환하는지 정확히 알 수 없지만 하나만 삽입됩니다.

언급URL : https://stackoverflow.com/questions/22221762/can-i-trust-mariadb-galera-cluster-unique-key

반응형