元数据不一致类问题 select relname,relhasindex from pgclass where oid34458; relname relhasindex + testvarchar2 f (1 row) 2)pgclass.relnatts与表/索引的实际字段不一致,例如下面截图是索引testvarchar2ididx实际字段和pgclass.relnatts记录不一致的问题: 检查办法: a、根据检查结果,拼出SQL如下,得到pgclass记录索引testvarhcar2ididex有1个字段; teledb select relname,relnatts from pgclass where oid34461; relname relnatts + testvarchar2ididx 1 (1 row) b、根据检查结果,拼出SQL如下,得到pgattribute没有索引testvarhcar2ididex的记录,即count(attrelid)0; teledb select count(attrelid) from pgattribute where attrelid34461; count 0 (1 row) 2. 解决办法: 1)pgclass.relhasindex与表的实际索引情况不一致: 解决办法:更新pgclass.relhasindex,如: update pgclass set relhasindextrue where relname'testvarchar2'; 2)pgclass.relnatts与表/索引的实际字段不一致: 解决办法:缺失字段,通常需要手动补全记录,可从其它有完整字段的节点上导出记录。修改attrelid值(每个节点创建对象时生成的oid值不同),然后导入缺少的节点中。 注意 元数据一致问题修复需要操作CN节点、DN节点,应在TeleDB运维专家/开发人员的指导下进行,避免因操作失误造成更大损失。