Pivotal Knowledge Base

Follow

"ERROR: right sibling's left-link doesn't match"

Environment

Product Version
Pivotal Greenplum (GPDB) All versions

Symptom

ERROR: right sibling's left-link doesn't match: block 163 links to 627 instead of expected 2513 in index "pg_depend_reference_index" (nbtinsert.c:1019) (seg57 sdw5:50009 pid=27178) (cdbdisp.c:1499)
ERROR: could not temporarily connect to one or more segments (cdbgang.c:1630)

Cause

If there is an on-disk file corruption, it is possible for the indexes on a given segment becomes unreadable. However, a full RCA should be performed to ensure that the issue does not reoccur.

Resolution

The fix is to connect directly to the segment mentioned under maintenance mode (see GPDB Admin Guide) and to re-index the affected table (in this example above that would be pg_depend). 

Often this re-index operation fails. In that case, you can try setting the GUC "zero_damaged_pages" and then performing the reindex. For example;

shell# PGOPTIONS='-c gp_session_role=utility' psql -h sdw5 -p 50009 db_dev
db_dev=# set zero_damaged_pages=on ;
SET
db_dev=# reindex table pg_depend; REINDEX

Warning

Setting the GUC "zero_damaged_pages" is destructive. It will change any errors related to damaged pages to warnings and then it set that page to zero resulting in data loss. In this situation, however, as we are rebuilding the index, the loss of a page is of little consequence.

Comments

Powered by Zendesk