I'm guessing that you are not showing us the complete showdb output, but just the part that has you confused. I'm guessing that there was a prior entry about "page 128 used multiple times". Probably page 128 appears twice in the same btree, or in two separate btrees. Overflow entries on that page are thus used twice. Your patch appears to be a no-op. You are setting "`zPageUse[pgno] = 0;`" immediately prior to "`zPageUse[pgno] = zMsg;`". I would expect that an optimizing C compiler would recognize that the new statement does nothing and hence omit it from the generated code. Am I missing something?