You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by sa...@apache.org on 2015/08/14 21:01:18 UTC
[1/2] incubator-trafodion git commit: [TRAFODION - 1456] Rowset
upsert into table with index asserts
Repository: incubator-trafodion
Updated Branches:
refs/heads/master d35f77e1c -> 52608078d
[TRAFODION - 1456] Rowset upsert into table with index asserts
A fix which consists of how characteristic inputs are assigned in the binder
is included here for merging.
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/d0920db5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/d0920db5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/d0920db5
Branch: refs/heads/master
Commit: d0920db51934a9784855f9db671c392bdd51321d
Parents: f486d33
Author: Suresh Subbiah <su...@apache.org>
Authored: Fri Aug 14 14:42:28 2015 +0000
Committer: Suresh Subbiah <su...@apache.org>
Committed: Fri Aug 14 14:42:28 2015 +0000
----------------------------------------------------------------------
core/sql/optimizer/BindRelExpr.cpp | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/d0920db5/core/sql/optimizer/BindRelExpr.cpp
----------------------------------------------------------------------
diff --git a/core/sql/optimizer/BindRelExpr.cpp b/core/sql/optimizer/BindRelExpr.cpp
index 0dfa3ba..63329b1 100644
--- a/core/sql/optimizer/BindRelExpr.cpp
+++ b/core/sql/optimizer/BindRelExpr.cpp
@@ -10126,13 +10126,14 @@ NABoolean Insert::isUpsertThatNeedsMerge() const
RelExpr* Insert::xformUpsertToMerge(BindWA *bindWA)
{
- if (getTableDesc()->getNATable()->hasSerializedColumn())
+ if (getTableDesc()->getNATable()->hasSerializedColumn())
{
*CmpCommon::diags() << DgSqlCode(-3241)
<< DgString0(" upsert on a serialzed table with indexes is not allowed.");
bindWA->setErrStatus();
return NULL;
- }
+ }
+
const ValueIdList &tableCols = updateToSelectMap().getTopValues();
const ValueIdList &sourceVals = updateToSelectMap().getBottomValues();
@@ -10222,13 +10223,18 @@ RelExpr* Insert::xformUpsertToMerge(BindWA *bindWA)
ValueIdSet debugSet;
if (child(0) && (child(0)->getOperatorType() != REL_TUPLE))
{
+ RelExpr * mu = re;
+
re = new(bindWA->wHeap()) Join
(child(0), re, REL_TSJ_FLOW, NULL);
((Join*)re)->doNotTransformToTSJ();
((Join*)re)->setTSJForMerge(TRUE);
((Join*)re)->setTSJForMergeWithInsert(TRUE);
((Join*)re)->setTSJForWrite(TRUE);
- re->getGroupAttr()->addCharacteristicInputs(myOuterRefs);
+ if (bindWA->hasDynamicRowsetsInQuery())
+ mu->getGroupAttr()->addCharacteristicInputs(myOuterRefs);
+ else
+ re->getGroupAttr()->addCharacteristicInputs(myOuterRefs);
}
re = re->bindNode(bindWA);
[2/2] incubator-trafodion git commit: Merge remote branch
'origin/pr/57/head' into merge_trafodion57
Posted by sa...@apache.org.
Merge remote branch 'origin/pr/57/head' into merge_trafodion57
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/52608078
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/52608078
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/52608078
Branch: refs/heads/master
Commit: 52608078d103c6a038037ef35c5fc871c901272d
Parents: d35f77e d0920db
Author: Sandhya Sundaresan <sa...@apache.org>
Authored: Fri Aug 14 19:00:57 2015 +0000
Committer: Sandhya Sundaresan <sa...@apache.org>
Committed: Fri Aug 14 19:00:57 2015 +0000
----------------------------------------------------------------------
core/sql/optimizer/BindRelExpr.cpp | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
----------------------------------------------------------------------