在适配中国移动磐维数据库时,提示不支持 conflict_target 自动推断:
Nightingale支持pg,在信创环境下,对一些国产数据库的支持应该也是可以的,在实践中,对接中国移动的磐维数据库2.0时,有一些不兼容的地方
比如不支持
INSERT ...
ON CONFLICT DO NOTHING;
但是支持
INSERT ...
ON CONFLICT (target_ident, group_id)
DO NOTHING
磐维是基于opengauss做的二次开发,底层是PostgreSQL 9.2.4,pg的自动推断能力应该不支持。
报错异常如下:
2026-06-08 22:26:14.909917 ERROR ormx/ormx.go:68 /home/runner/work/nightingale/nightingale/models/target_busi_group.go:90 ERROR: Conflict without target is not yet supported within INSERT ON CONFLICT KEY DO UPDATE statement. (SQLSTATE 0A000)
[31.635ms] [rows:0] INSERT INTO "target_busi_group" ("target_ident","group_id","update_at") VALUES ('Y1-B1K-66-250',1,1780928774) ON CONFLICT DO NOTHING RETURNING "id"
在适配中国移动磐维数据库时,提示不支持 conflict_target 自动推断:
Nightingale支持pg,在信创环境下,对一些国产数据库的支持应该也是可以的,在实践中,对接中国移动的磐维数据库2.0时,有一些不兼容的地方
比如不支持
INSERT ...
ON CONFLICT DO NOTHING;
但是支持
INSERT ...
ON CONFLICT (target_ident, group_id)
DO NOTHING
磐维是基于opengauss做的二次开发,底层是PostgreSQL 9.2.4,pg的自动推断能力应该不支持。
报错异常如下:
2026-06-08 22:26:14.909917 ERROR ormx/ormx.go:68 /home/runner/work/nightingale/nightingale/models/target_busi_group.go:90 ERROR: Conflict without target is not yet supported within INSERT ON CONFLICT KEY DO UPDATE statement. (SQLSTATE 0A000)
[31.635ms] [rows:0] INSERT INTO "target_busi_group" ("target_ident","group_id","update_at") VALUES ('Y1-B1K-66-250',1,1780928774) ON CONFLICT DO NOTHING RETURNING "id"