Anthony Mallgren <[email protected]> writes:
> I'm getting a lot of messages like this:
> [warn] skipped a 3-word n-gram: table tid from new index tuple (2524,87)
> cannot find insert offset between offsets 2 and 16 of block 36 in index
> "congress_103_3_word_word1_idx"
I don't know about the first part of that, maybe it's from your
application? But the "table tid ..." part matches this:
/*
* postingoff should never be set more than once per leaf page
* binary search. That would mean that there are duplicate table
* TIDs in the index, which is never okay. Check for that here.
*/
if (insertstate->postingoff != 0)
ereport(ERROR,
(errcode(ERRCODE_INDEX_CORRUPTED),
errmsg_internal("table tid from new index tuple
(%u,%u) cannot find insert offset between offsets %u and %u of block %u in
index \"%s\"",
ItemPointerGetBlockNumber(key->scantid),
ItemPointerGetOffsetNumber(key->scantid),
low, stricthigh,
BufferGetBlockNumber(insertstate->buf),
RelationGetRelationName(rel))));
So this code thinks your index is corrupt. REINDEX should help.
regards, tom lane