trafodion-codereview mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From zellerh <...@git.apache.org>
Subject [GitHub] incubator-trafodion pull request #518: [TRAFODION-2021] Internal error on up...
Date Thu, 02 Jun 2016 21:44:32 GMT
GitHub user zellerh opened a pull request:

    https://github.com/apache/incubator-trafodion/pull/518

    [TRAFODION-2021] Internal error on upsert with index

    In this particular case, the extra nodes added by index maintenance
    and the WHERE clause interacted in a way that caused some missing
    characteristic inputs, leading to the generator error.  The fix is to
    add the required inputs not directly to the nodes, but as "outer
    references" to the BindScope, so that they get added automatically to
    any nodes created in that BindScope. Since the predicates get created
    by a method called at a higher level, I also needed to add a "remote
    control" feature for the BindScope of a MergeUpdate node.
    
    Also: [TRAFODION-2026] Upsert fails on table with nullable key column.
    
    When creating the predicate that links the target clustering key with
    the corresponding source values, use "special nulls" semantics for
    nullable key columns, so a comparesion NULL = NULL is allowed and
    yields TRUE.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/zellerh/incubator-trafodion bug/1910

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/incubator-trafodion/pull/518.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #518
    
----
commit 2459135a3ed27d68acc2350b0da4d64132f249a2
Author: Hans Zeller <hzeller@apache.org>
Date:   2016-06-02T21:28:44Z

    [TRAFODION-2021] Internal error on upsert with index
    
    In this particular case, the extra nodes added by index maintenance
    and the WHERE clause interacted in a way that caused some missing
    characteristic inputs, leading to the generator error.  The fix is to
    add the required inputs not directly to the nodes, but as "outer
    references" to the BindScope, so that they get added automatically to
    any nodes created in that BindScope. Since the predicates get created
    by a method called at a higher level, I also needed to add a "remote
    control" feature for the BindScope of a MergeUpdate node.
    
    Also: [TRAFODION-2026] Upsert fails on table with nullable key column.
    
    When creating the predicate that links the target clustering key with
    the corresponding source values, use "special nulls" semantics for
    nullable key columns, so a comparesion NULL = NULL is allowed and
    yields TRUE.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

Mime
View raw message