You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafodion.apache.org by db...@apache.org on 2015/08/21 02:36:57 UTC
[1/3] incubator-trafodion git commit: [TRAFODION-1460] Enable EXPLAIN
IN RMS feature by default
Repository: incubator-trafodion
Updated Branches:
refs/heads/master 5f9c7b31f -> adcae2545
[TRAFODION-1460] Enable EXPLAIN IN RMS feature by default
EXPLAIN_IN_RMS is now enabled by default. The explain plan
can now be obtained from a different session using
explain for qid <qid>
explain options 'f' for qid <qid>
The explain fragment in packed format is retained in RMS shared
segment till the query is deallocated.
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/3b214579
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/3b214579
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/3b214579
Branch: refs/heads/master
Commit: 3b214579d8fca9aa59a4e1553da556582e96630e
Parents: 5f9c7b3
Author: selvaganesang <se...@esgyn.com>
Authored: Wed Aug 19 20:25:45 2015 +0000
Committer: selvaganesang <se...@esgyn.com>
Committed: Wed Aug 19 20:33:07 2015 +0000
----------------------------------------------------------------------
core/sql/cli/SessionDefaults.cpp | 3 ---
core/sql/cli/SessionDefaults.h | 9 ---------
core/sql/cli/Statement.cpp | 7 ++++---
core/sql/executor/ex_control.cpp | 7 -------
core/sql/sqlcomp/nadefaults.cpp | 2 +-
5 files changed, 5 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3b214579/core/sql/cli/SessionDefaults.cpp
----------------------------------------------------------------------
diff --git a/core/sql/cli/SessionDefaults.cpp b/core/sql/cli/SessionDefaults.cpp
index 2e2b94d..bc5bd13 100644
--- a/core/sql/cli/SessionDefaults.cpp
+++ b/core/sql/cli/SessionDefaults.cpp
@@ -139,7 +139,6 @@ SessionDefaults::SessionDefaults(CollHeap * heap)
cancelLogging_(TRUE),
suspendLogging_(TRUE),
aqrWarn_(0),
- explainInRMS_(FALSE),
redriveCTAS_(FALSE),
callEmbeddedArkcmp_(FALSE),
exsmTraceLevel_(0),
@@ -226,7 +225,6 @@ SessionDefaults::SessionDefaults(CollHeap * heap)
setParentQidSystem(NULL, 0);
setWmsProcess(FALSE);
aqrInfo_ = new(heap) AQRInfo(heap);
- setExplainInRMS(FALSE);
setRtsTimeout(rtsTimeout_);
setStatisticsViewType(SQLCLI_PERTABLE_STATS);
setReclaimTotalMemorySize(DEFAULT_RECLAIM_MEMORY_AFTER);
@@ -1689,7 +1687,6 @@ void SessionDefaults::beginSession()
setParentQid(NULL, 0);
setParentQidSystem(NULL, 0);
setWmsProcess(FALSE);
- setExplainInRMS(FALSE);
setStatisticsViewType(SQLCLI_PERTABLE_STATS);
setReclaimTotalMemorySize(DEFAULT_RECLAIM_MEMORY_AFTER);
setReclaimFreeMemoryRatio(DEFAULT_RECLAIM_FREE_MEMORY_RATIO);
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3b214579/core/sql/cli/SessionDefaults.h
----------------------------------------------------------------------
diff --git a/core/sql/cli/SessionDefaults.h b/core/sql/cli/SessionDefaults.h
index 7581cc9..2520165 100644
--- a/core/sql/cli/SessionDefaults.h
+++ b/core/sql/cli/SessionDefaults.h
@@ -571,13 +571,6 @@ public:
AQRInfo * aqrInfo() { return aqrInfo_; }
- void setExplainInRMS(NABoolean v = TRUE)
- {
- explainInRMS_ = v;
- }
-
- NABoolean isExplainInRMS() { return explainInRMS_; }
-
Lng32 getStatisticsViewType() { return statisticsViewType_; }
void setStatisticsViewType(Lng32 type)
{
@@ -766,8 +759,6 @@ private:
NABoolean suspendLogging_; // suspended's session
NABoolean callEmbeddedArkcmp_; // call the procedural interface and don't send a message to the arkcmp process.
AQRInfo * aqrInfo_;
- NABoolean explainInRMS_; // Flag to trigger copying of explain fragment to the RMS shared
- // segment
Lng32 statisticsViewType_; // Statistics view type which could be different from the collection statistics type
/*
Memory manager will start to reclaim space when the below conditions are met
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3b214579/core/sql/cli/Statement.cpp
----------------------------------------------------------------------
diff --git a/core/sql/cli/Statement.cpp b/core/sql/cli/Statement.cpp
index f9575c1..462e226 100644
--- a/core/sql/cli/Statement.cpp
+++ b/core/sql/cli/Statement.cpp
@@ -1973,11 +1973,12 @@ Lng32 Statement::unpackAndInit(ComDiagsArea &diagsArea,
SessionDefaults *sessionDefaults =
context_->getSessionDefaults();
if (statsGlobals != NULL && stmtStats_ != NULL && root_tdb != NULL
- && getUniqueStmtId() != NULL
- && sessionDefaults->isExplainInRMS())
+ && getUniqueStmtId() != NULL)
{
ex_root_tdb *rootTdb = getRootTdb();
- if (rootTdb->explainInRms() &&
+ //root_tdb is not unpacked for SHOWPLAN and
+ // explain fragment can't be obtained for such prepared queries
+ if (!rootTdb->isPacked() && rootTdb->explainInRms() &&
rootTdb->getFragDir()->getExplainFragDirEntry
(fragOffset, fragLen, topNodeOffset) == 0)
{
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3b214579/core/sql/executor/ex_control.cpp
----------------------------------------------------------------------
diff --git a/core/sql/executor/ex_control.cpp b/core/sql/executor/ex_control.cpp
index 357ecfd..d8e62b0 100644
--- a/core/sql/executor/ex_control.cpp
+++ b/core/sql/executor/ex_control.cpp
@@ -366,13 +366,6 @@ short ExControlTcb::work()
currContext->getSessionDefaults()->setStatisticsViewType(SQLCLI_PERTABLE_STATS);
}
}
- else if (strcmp(value[1], "EXPLAIN_IN_RMS") == 0)
- {
- NABoolean explainInRMS = TRUE;
- if (strcmp(value[2], "OFF") == 0)
- explainInRMS = FALSE;
- currContext->getSessionDefaults()->setExplainInRMS(explainInRMS);
- }
else if (strcmp(value[1], "MARIAQUEST_PROCESS") == 0)
{
if (strcmp(value[2], "ON") == 0)
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/3b214579/core/sql/sqlcomp/nadefaults.cpp
----------------------------------------------------------------------
diff --git a/core/sql/sqlcomp/nadefaults.cpp b/core/sql/sqlcomp/nadefaults.cpp
index ab55264..2520d6c 100644
--- a/core/sql/sqlcomp/nadefaults.cpp
+++ b/core/sql/sqlcomp/nadefaults.cpp
@@ -1374,7 +1374,7 @@ SDDkwd__(EXE_DIAGNOSTIC_EVENTS, "OFF"),
DDkwd__(EXPLAIN_DISPLAY_FORMAT, "EXTERNAL"),
- DDkwd__(EXPLAIN_IN_RMS, "OFF"),
+ DDkwd__(EXPLAIN_IN_RMS, "ON"),
DDui___(EXPLAIN_OUTPUT_ROW_SIZE, "80"),
[3/3] incubator-trafodion git commit: Merge [TRAFODION-1460] PR 61
Enable EXPLAIN IN RMS by default
Posted by db...@apache.org.
Merge [TRAFODION-1460] PR 61 Enable EXPLAIN IN RMS by default
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/adcae254
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/adcae254
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/adcae254
Branch: refs/heads/master
Commit: adcae2545c08286d4c018bb427fe66c0e0d77f3d
Parents: 5f9c7b3 daa0a47
Author: Dave Birdsall <db...@apache.org>
Authored: Fri Aug 21 00:35:53 2015 +0000
Committer: Dave Birdsall <db...@apache.org>
Committed: Fri Aug 21 00:35:53 2015 +0000
----------------------------------------------------------------------
core/sql/cli/SessionDefaults.cpp | 3 ---
core/sql/cli/SessionDefaults.h | 9 ---------
core/sql/cli/Statement.cpp | 7 ++++---
core/sql/executor/ExExplain.cpp | 9 +++++++++
core/sql/executor/ex_control.cpp | 7 -------
core/sql/sqlcomp/nadefaults.cpp | 2 +-
6 files changed, 14 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
[2/3] incubator-trafodion git commit: [TRAFODION-1460] - Allowing
'CURRENT' for qid
Posted by db...@apache.org.
[TRAFODION-1460] - Allowing 'CURRENT' for qid
Within the same session, you can use
explain option 'f' for qid current
to display the explain plan of the recently compiled or executed statement.
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/daa0a478
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/daa0a478
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/daa0a478
Branch: refs/heads/master
Commit: daa0a478b57672c9855bbb3f3fa6c62da0b7a507
Parents: 3b21457
Author: selvaganesang <se...@esgyn.com>
Authored: Wed Aug 19 22:10:03 2015 +0000
Committer: selvaganesang <se...@esgyn.com>
Committed: Wed Aug 19 22:10:03 2015 +0000
----------------------------------------------------------------------
core/sql/executor/ExExplain.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/daa0a478/core/sql/executor/ExExplain.cpp
----------------------------------------------------------------------
diff --git a/core/sql/executor/ExExplain.cpp b/core/sql/executor/ExExplain.cpp
index 8a271e6..28c64ce 100644
--- a/core/sql/executor/ExExplain.cpp
+++ b/core/sql/executor/ExExplain.cpp
@@ -1503,6 +1503,7 @@ RtsExplainFrag *ExExplainTcb::sendToSsmp()
RtsExplainReq *explainReq;
CliGlobals *cliGlobals = getGlobals()->castToExExeStmtGlobals()->
castToExMasterStmtGlobals()->getCliGlobals();
+ ContextCli *context = cliGlobals->currContext();
if (cliGlobals->getStatsGlobals() == NULL)
{
// Runtime Stats not running.
@@ -1512,6 +1513,14 @@ RtsExplainFrag *ExExplainTcb::sendToSsmp()
return NULL;
}
+ ExMasterStats *masterStats;
+
+ if (strcasecmp(qid_, "CURRENT") == 0) {
+ if (context->getStats() != NULL && (masterStats = context->getStats()->getMasterStats()) != NULL) {
+ setQid(masterStats->getQueryId(), masterStats->getQueryIdLen());
+ }
+ }
+
// Verify that we have valid parameters for each kind of request. If not, fill in the diagsArea
// and return NULL.
ExSsmpManager *ssmpManager = cliGlobals->getSsmpManager();