Andres Freund <and...@anarazel.de> writes: > No, I don't think that's a solution. I think it's wrong to have > something like olderrinfo in the first place. Using a struct with ~25 > members to store the current state of three variables just doesn't make > sense. Why isn't this just a LVSavedPosition struct or something like > that?
That seems like rather pointless micro-optimization really; the struct's not *that* large. But I have a different complaint now that I look at this code: is it safe at all? I see that the indname field is a pointer to who-knows-where. If it's possible in the first place for that to change while this code runs, then what guarantees that we won't be restoring a dangling pointer to freed memory? regards, tom lane