On Sun, Jan 22, 2023 at 10:19 AM Himanshu Upadhyaya
<upadhyaya.himan...@gmail.com> wrote:
> I was trying to use lp_valid as I need to identify the root of the HOT chain 
> and we are doing validation on the root of the HOT chain when we loop over 
> the predecessor array.
> Was resetting lp_valid in the last patch because we don't add data to 
> predecessor[] and while looping over the predecessor array we need to isolate 
> (and identify) all cases of missing data in the predecessor array to exactly 
> identify the root of HOT chain.
> One solution is to always add data to predecessor array while looping over 
> successor array and then while looping over predecessor array we can continue 
> for other validation "if (lp_valid [predecessor[currentoffnum]] && 
> lp_valid[currentoffnum]" is true but in this case also our third loop will 
> also look at lp_valid[].

I don't mind if the third loop looks at lp_valid if it has a reason to
do that, but I don't think we should be resetting values from true to
false. Once we know a line pointer to be valid, it doesn't stop being
valid later because we found out some other thing about something
else.

-- 
Robert Haas
EDB: http://www.enterprisedb.com


Reply via email to