嵌入式 SymmetricDS 3.8 的 MCV 示例?

MCV example of SymmetricDS 3.8 embedded?

SymmetricDS 很有帮助地提供了 snippet of code 到 运行 来自 Java 的基本节点。但是,没有提供上下文,并且在他们的 github 存储库中没有可编译的示例。

这个 更接近一点,但我在 getcEngine().openRegistration(...) 中仍然失败,但有例外:

java.lang.IllegalStateException: This node has not been configured.Could not find a row in the identity table

您是否成功 运行 了 3.8 版的嵌入式客户端?您能否提供一个通过设置阶段的最小示例?

链接示例确实有效,但嵌入式客户端没有为您设置节点数据库。至少,您需要为此客户提供 sym_node 和 sym_node_identity 行。下面的 SQL 适合我。

此外,here's a minimum compilable example for IntelliJ Idea 带有 symmetricDS 3.8.16 的脚本演示。

CREATE TABLE "sym_node"(
    "node_id" VARCHAR NOT NULL PRIMARY KEY ,
    "node_group_id" VARCHAR NOT NULL,
    "external_id" VARCHAR NOT NULL,
    "sync_enabled" INTEGER DEFAULT 0,
    "sync_url" VARCHAR,
    "schema_version" VARCHAR,
    "symmetric_version" VARCHAR,
    "database_type" VARCHAR,
    "database_version" VARCHAR,
    "heartbeat_time" TIMESTAMP,
    "timezone_offset" VARCHAR,
    "batch_to_send_count" INTEGER DEFAULT 0,
    "batch_in_error_count" INTEGER DEFAULT 0,
    "created_at_node_id" VARCHAR,
    "deployment_type" VARCHAR
);

CREATE TABLE "sym_node_identity"(
    "node_id" VARCHAR NOT NULL PRIMARY KEY ,
    FOREIGN KEY ("node_id") REFERENCES "sym_node" ("node_id")
);

insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) 
 values ('003','store','003',1,null,null,null,null,null,current_timestamp,null,0,0,'000');

INSERT INTO "sym_node_identity" VALUES('003');