On Fri, Oct 1, 2021 at 6:56 AM Amit Langote <amitlangot...@gmail.com> wrote:

> Hi,
>
> On Mon, Sep 13, 2021 at 7:17 PM Rajkumar Raghuwanshi
> <rajkumar.raghuwan...@enterprisedb.com> wrote:
> > On PG head + Nitin's v3 patch + Amit's Delta patch.  Make check is
> failing with below errors.
>
> Thanks Rajkumar for testing.
>
> > --inherit.sql is failing with error :"ERROR:  negative bitmapset member
> not allowed"
> > update mlparted_tab mlp set c = 'xxx'
> > from
> >   (select a from some_tab union all select a+1 from some_tab) ss (a)
> > where (mlp.a = ss.a and mlp.b = 'b') or mlp.a = 3;
> > ERROR:  negative bitmapset member not allowed
> >
> > --partition_join.sql is crashing with enable_partitionwise_join set to
> true.
>
> Here's a v2 of the delta patch that should fix both of these test
> failures.  As I mentioned in my last reply, my delta patch fixed what
> I think were problems in Nitin's v3 patch but were not complete by
> themselves.  Especially, I hadn't bothered to investigate various /*
> TODO: handle multi-column list partitioning */ sites to deal with my
> own changes.
>
> In the attached updated version, I've dealt with some of those such
> that at least the existing cases exercising partition pruning and
> partition wise joins now pass.
>
> I thought about sending a v4 of the main patch with my proposed
> changes so far integrated, but decided to just post a delta_v2 for
> now.
>
> --
> Amit Langote
> EDB: http://www.enterprisedb.com

Hi,

+           for (i = 0; i < partnatts; i++)
+           {
+               if (outer_isnull[i])
+                   outer_has_null = true;

We can come out of the loop once outer_has_null is assigned.
Similar comment for the loop inside if (inner_isnull).

+            * For the multi-column case, we must make an BoolExpr that

an BoolExpr -> a BoolExpr

Cheers

Reply via email to