[ 
https://issues.apache.org/jira/browse/TRAFODION-2827?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16281004#comment-16281004
 ] 

ASF GitHub Bot commented on TRAFODION-2827:
-------------------------------------------

GitHub user DaveBirdsall opened a pull request:

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

    [TRAFODION-2827] Turn update costing code on by default

    This pull request changes the default for CQD HBASE_UPDATE_COSTING to 'ON'.
    
    The former setting ('OFF') used stub code for update costing, which 
assigned a zero cost to all update operations. Among other effects, it would 
cause update statements to always get serial plans.
    
    The new setting uses a different set of stub code. That code is a copy of 
the delete costing code. I call it "stub" code because the theory of operation 
of update is somewhat different than that for delete. Nevertheless, this code 
should give much better plans than the former stub.
    
    Also included in this pull request are updated expected files for five 
regression tests. In all these cases, an update plan flipped from an update 
node to a tuple_flow(scan,update) plan. Except for unique row accesses, the 
latter plan should always be superior.

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

    $ git pull https://github.com/DaveBirdsall/incubator-trafodion Trafodion2827

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

    https://github.com/apache/incubator-trafodion/pull/1326.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 #1326
    
----

----


> Turn CQD HBASE_UPDATE_COSTING 'ON' by default
> ---------------------------------------------
>
>                 Key: TRAFODION-2827
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-2827
>             Project: Apache Trafodion
>          Issue Type: Improvement
>          Components: sql-cmp
>            Reporter: David Wayne Birdsall
>            Assignee: David Wayne Birdsall
>
> There are presently two sets of stubbed costing code for HBase updates in the 
> Optimizer. The original set simply gives a zero cost to any update node. This 
> is the original stub, and is the one executed by default. The second stub is 
> a copy of the delete costing code, and is executed if CQD 
> HBASE_UPDATE_COSTING is 'ON'. This is much better, because it at least 
> assigns non-zero costs to update nodes. One can get parallel plans for larger 
> update statements using this code, while all plans for the original stub are 
> serial. It isn't perfect, because the theory of operation for update is a bit 
> different than delete, but it should be much better for all but the most 
> trivial update statements.
> As we are beginning to see applications using Trafodion that have larger 
> update statements, it makes sense to change the default for CQD 
> HBASE_UPDATE_COSTING to 'ON' now.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to