On Thu, Mar 7, 2019 at 8:20 PM amul sul <sula...@gmail.com> wrote: > > > On Thu, Mar 7, 2019 at 1:02 PM amul sul <sula...@gmail.com> wrote: > >> Thanks Rajkumar, >> >> I am looking into this. >> >> > The crash happens when none of the if-else branch of > handle_missing_partition() > evaluates and returns merged_index unassigned. > > Let me explain, in Rajkumar 's test case, the join type is JOIN_INNER. > When > only outer rel has null partition, merge_null_partitions() function calls > handle_missing_partition() with missing_side_inner = false and > missing_side_outer = false >
Both missing_side_ variables being false when the NULL partition is missing on the inner side looks suspicious. I guess from the variable names that the missing_side_inner should be true in this case. > argument value which fails to set merged_index. > > In the attached patch, I tried to fix this case by setting merged_index > explicitly which fixes the reported crash. > I expect handle_missing_partition() to set the merged_index always. In your patches, I don't see that function in your patches is setting it explicitly. If we are setting merged_index explicitly somewhere else, other places may miss that explicit assignment. So it's better to move it inside this function. -- Best Wishes, Ashutosh Bapat