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 2016/07/18 16:20:36 UTC
[11/16] incubator-trafodion git commit: Upgrade repository code
changes
Upgrade repository code changes
Project: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/commit/ff89586c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/tree/ff89586c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafodion/diff/ff89586c
Branch: refs/heads/master
Commit: ff89586c6ce2f4a769f56f439950a735c2556823
Parents: 548f729
Author: Dave Birdsall <db...@apache.org>
Authored: Tue Jun 28 20:36:25 2016 +0000
Committer: Dave Birdsall <db...@apache.org>
Committed: Tue Jun 28 20:36:25 2016 +0000
----------------------------------------------------------------------
core/sql/common/ComSmallDefs.h | 3 +
core/sql/regress/compGeneral/EXPECTED042 | 32 +-
core/sql/sqlcomp/CmpSeabaseDDLmd.h | 4 +-
core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp | 56 ++-
core/sql/sqlcomp/CmpSeabaseDDLrepos.h | 483 ++++++++++++++++++++++++--
5 files changed, 524 insertions(+), 54 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/ff89586c/core/sql/common/ComSmallDefs.h
----------------------------------------------------------------------
diff --git a/core/sql/common/ComSmallDefs.h b/core/sql/common/ComSmallDefs.h
index 5aa5d57..3b10b16 100644
--- a/core/sql/common/ComSmallDefs.h
+++ b/core/sql/common/ComSmallDefs.h
@@ -188,6 +188,9 @@ typedef NABoolean ComBoolean;
// length of explain_plan column in metric_query_table.
// explain_plan greater than this length are chunked and store in multiple
// rows in metric_text_table
+// Note: This symbol is used in the DDL for the Repository tables.
+// If you change it, consider whether the Repository tables will need
+// an upgrade. See file sqlcomp/CmpSeabaseDDLrepos.h.
#define REPOS_MAX_EXPLAIN_PLAN_LEN 1000000
#define REPOS_MAX_EXPLAIN_PLAN_LEN_STR "1000000"
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/ff89586c/core/sql/regress/compGeneral/EXPECTED042
----------------------------------------------------------------------
diff --git a/core/sql/regress/compGeneral/EXPECTED042 b/core/sql/regress/compGeneral/EXPECTED042
index 55fb89e..f8eebdd 100644
--- a/core/sql/regress/compGeneral/EXPECTED042
+++ b/core/sql/regress/compGeneral/EXPECTED042
@@ -1,9 +1,9 @@
>>showstats for table t042_orderline on ol_o_id detail;
Detailed Histogram data for Table TRAFODION.ORDERENTRY.T042_ORDERLINE
-Table ID: 2761910211648663657
+Table ID: 7880838154057526438
-Hist ID: 1309682661
+Hist ID: 1934502880
Column(s): OL_O_ID
Total Rows: 10
Total UEC: 4
@@ -1788,15 +1788,19 @@ HQC key=SELECT T . VARCHAR0_UNIQ AS T_VARCHAR0_UNIQ , T . CHAR2_2 AS T_CHAR2_2 ,
>>
>>-- test compile time
>>
+>>sh more /proc/loadavg | cut -d' ' -f 1-3 | sed -e 's/^/System load: /' >> LOG042;
+System load: 0.87 0.49 0.33
+>>sh grep "model name" /proc/cpuinfo | head -1 | cut -d '@' -f 2 | sed -e 's/^/CPU frequency: /' >> LOG042;
+CPU frequency: model name : Intel Core Processor (Haswell)
>>set statistics on;
>>prepare xx from select * from t042_orderline where ol_o_id = 1 ;
--- SQL command prepared.
-Start Time 2015/09/24 16:38:19.189001
-End Time 2015/09/24 16:38:19.191810
-Elapsed Time 00:00:00.002809
-Compile Time 00:00:00.002809
+Start Time 2016/06/28 15:43:44.041291
+End Time 2016/06/28 15:43:44.043414
+Elapsed Time 00:00:00.002123
+Compile Time 00:00:00.002123
Execution Time 00:00:00.000000
@@ -1827,10 +1831,10 @@ HQC key=SELECT * FROM T042_ORDERLINE WHERE OL_O_ID = #NP# ;
--- SQL command prepared.
-Start Time 2015/09/24 16:38:19.332484
-End Time 2015/09/24 16:38:19.335346
-Elapsed Time 00:00:00.002862
-Compile Time 00:00:00.002862
+Start Time 2016/06/28 15:43:44.260898
+End Time 2016/06/28 15:43:44.263812
+Elapsed Time 00:00:00.002914
+Compile Time 00:00:00.002914
Execution Time 00:00:00.000000
@@ -2218,9 +2222,9 @@ NUM_HKEYS NUM_SKEYS NUM_MAX_VALUES_PER_KEY NUM_HASH_TABLE_BUCKETS
---------- ---------- ------------- --------------
134 0 1 0
- 134 0 1 0
- 134 1 1 0
134 1 1 0
+ 142 0 1 0
+ 142 1 1 0
150 2 3 0
150 3 3 0
187 0 4 0
@@ -2312,9 +2316,9 @@ NUM_HKEYS NUM_SKEYS NUM_MAX_VALUES_PER_KEY NUM_HASH_TABLE_BUCKETS
90 0 0 3
98 1 1 0
134 0 1 0
- 134 0 1 0
- 134 1 1 0
134 1 1 0
+ 142 0 1 0
+ 142 1 1 0
150 2 3 0
150 3 3 0
187 0 4 0
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/ff89586c/core/sql/sqlcomp/CmpSeabaseDDLmd.h
----------------------------------------------------------------------
diff --git a/core/sql/sqlcomp/CmpSeabaseDDLmd.h b/core/sql/sqlcomp/CmpSeabaseDDLmd.h
index 41a1499..83d72c5 100644
--- a/core/sql/sqlcomp/CmpSeabaseDDLmd.h
+++ b/core/sql/sqlcomp/CmpSeabaseDDLmd.h
@@ -65,8 +65,8 @@ public:
///////////////////////////////////////////////////////////////////////////////
// *** Current Definition ***
//
-// Current metadata tables definition for Metadata Version 2.3
-// (Major version = 2, Minor version = 3)
+// Current metadata tables definition for Metadata Version 2.1
+// (Major version = 2, Minor version = 1)
///////////////////////////////////////////////////////////////////////////////
static const QString seabaseAuthsDDL[] =
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/ff89586c/core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp
----------------------------------------------------------------------
diff --git a/core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp b/core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp
index 89b2f8c..bc39c8d 100644
--- a/core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp
+++ b/core/sql/sqlcomp/CmpSeabaseDDLrepos.cpp
@@ -140,7 +140,7 @@ short CmpSeabaseDDL::dropRepos(ExeCliInterface * cliInterface,
NABoolean dropSchema)
{
Lng32 cliRC = 0;
-
+ NABoolean xnWasStartedHere = FALSE;
char queryBuf[1000];
for (Int32 i = 0; i < sizeof(allReposUpgradeInfo)/sizeof(MDUpgradeInfo); i++)
@@ -153,18 +153,34 @@ short CmpSeabaseDDL::dropRepos(ExeCliInterface * cliInterface,
str_sprintf(queryBuf, "drop table %s.\"%s\".%s cascade; ",
getSystemCatalog(), SEABASE_REPOS_SCHEMA,
(oldRepos ? rti.oldName : rti.newName));
-
+
+ if (beginXnIfNotInProgress(cliInterface, xnWasStartedHere))
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ return -1;
+ }
+
cliRC = cliInterface->executeImmediate(queryBuf);
- if (cliRC == -1389) // table doesnt exist
+ if (cliRC == -1389) // table doesn't exist
{
// ignore the error.
- // CmpCommon::diags()->clear();
+ cliRC = 0;
}
else if (cliRC < 0)
- {
- cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
- return -1;
- }
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ }
+
+ if (endXnIfStartedHere(cliInterface, xnWasStartedHere, cliRC) < 0)
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ return -1;
+ }
+
+ if (cliRC < 0)
+ {
+ return -1;
+ }
}
@@ -173,16 +189,34 @@ short CmpSeabaseDDL::dropRepos(ExeCliInterface * cliInterface,
// Drop the _REPOS_ schema
str_sprintf(queryBuf, "drop schema %s.\"%s\" cascade; ",
getSystemCatalog(),SEABASE_REPOS_SCHEMA);
+
+ if (beginXnIfNotInProgress(cliInterface, xnWasStartedHere))
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ return -1;
+ }
+
cliRC = cliInterface->executeImmediate(queryBuf);
if (cliRC == -1003) // schema doesnt exist
{
// ignore the error.
+ cliRC = 0;
}
else if (cliRC < 0)
{
cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ }
+
+ if (endXnIfStartedHere(cliInterface, xnWasStartedHere, cliRC) < 0)
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
return -1;
}
+
+ if (cliRC < 0)
+ {
+ return -1;
+ }
}
return 0;
@@ -306,10 +340,10 @@ short CmpSeabaseDDL::copyOldReposToNew(ExeCliInterface * cliInterface)
cliRC = cliInterface->executeImmediate(queryBuf);
if (cliRC < 0)
- {
- cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
+ {
+ cliInterface->retrieveSQLDiagnostics(CmpCommon::diags());
return -1;
- }
+ }
} // for
http://git-wip-us.apache.org/repos/asf/incubator-trafodion/blob/ff89586c/core/sql/sqlcomp/CmpSeabaseDDLrepos.h
----------------------------------------------------------------------
diff --git a/core/sql/sqlcomp/CmpSeabaseDDLrepos.h b/core/sql/sqlcomp/CmpSeabaseDDLrepos.h
index f546f2c..a7df12f 100644
--- a/core/sql/sqlcomp/CmpSeabaseDDLrepos.h
+++ b/core/sql/sqlcomp/CmpSeabaseDDLrepos.h
@@ -33,6 +33,13 @@
#define TRAF_METRIC_QUERY_VIEW "METRIC_QUERY_VIEW"
+///////////////////////////////////////////////////////////////////////////////
+// *** Current Definition ***
+//
+// Current repository tables definition for Metadata Version 2.1
+// (Major version = 2, Minor version = 1)
+///////////////////////////////////////////////////////////////////////////////
+
//----------------------------------------------------------------
//-- METRIC_QUERY_TABLE
//----------------------------------------------------------------
@@ -326,11 +333,332 @@ static const QString createMetricTextTable[] =
{" ; "}
};
+
+/////////////////////////////////////////////////////////////////////
+//
+// Information about changed old metadata tables from which upgrade
+// is being done to the current version.
+// These definitions have changed in the current version of code.
+//
+// Old definitions have the form (for ex for METRIC_QUERY_TABLE table):
+// createOldTrafv??MetricQueryTable[]
+// v?? is the old version.
+//
+// When definitions change, make new entries between
+// START_OLD_MD_v?? and END_OLD_MD_v??.
+// Do not remove older entries. We want to keep them around for
+// historical purpose.
+//
+// Change entries in allReposUpgradeInfo[] struct in this file
+// to reflect the 'old' repository tables.
+//
+//////////////////////////////////////////////////////////////////////
+
#define TRAF_METRIC_QUERY_TABLE_OLD_REPOS REPOS_METRIC_QUERY_TABLE"_OLD_REPOS"
#define TRAF_METRIC_SESSION_TABLE_OLD_REPOS REPOS_METRIC_SESSION_TABLE"_OLD_REPOS"
#define TRAF_METRIC_QUERY_AGGR_TABLE_OLD_REPOS REPOS_METRIC_QUERY_AGGR_TABLE"_OLD_REPOS"
-static const QString createOldReposMetricQueryTable[] =
+//----------------------------------------------------------------
+//-- METRIC_QUERY_TABLE
+//----------------------------------------------------------------
+static const QString createOldTrafv11MetricQueryTable[] =
+{
+{" create table %s.\"%s\"."TRAF_METRIC_QUERY_TABLE_OLD_REPOS" "},
+ {" ( "},
+ {" instance_id integer unsigned no default not null not droppable serialized, "},
+ {" tenant_id integer unsigned no default not null not droppable serialized, "},
+ {" component_id integer unsigned default null serialized, "},
+ {" process_id integer default null serialized, "},
+ {" thread_id integer unsigned default null serialized, "},
+ {" node_id integer unsigned default null serialized, "},
+ {" pnid_id integer unsigned default null serialized, "},
+ {" host_id integer unsigned no default not null not droppable serialized, "},
+ {" ip_address_id char(32) character set iso88591 casespecific default null serialized, "},
+ {" sequence_number integer unsigned default null serialized, "},
+ {" process_name char(32) character set iso88591 casespecific default null serialized, "},
+ {" exec_start_utc_ts timestamp(6) no default not null not droppable not serialized, "},
+ {" query_id char("MAX_QUERY_ID_LEN_STR") character set iso88591 casespecific no default not null not droppable serialized, "},
+ {" user_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" role_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" start_priority integer unsigned default null serialized, "},
+ {" master_process_id char(64) character set iso88591 casespecific default null serialized, "},
+ {" session_id char(108) character set iso88591 casespecific default null serialized, "},
+ {" client_name varchar(1024) character set iso88591 casespecific default null serialized, "},
+ {" application_name char(130) character set iso88591 casespecific default null serialized, "},
+ {" statement_id char("MAX_QUERY_ID_LEN_STR") character set iso88591 casespecific default null serialized, "},
+ {" statement_type char(36) character set iso88591 casespecific default null serialized, "},
+ {" statement_subtype char(36) character set iso88591 casespecific default null serialized, "},
+ {" submit_utc_ts timestamp(6) default null not serialized, "},
+ {" compile_start_utc_ts timestamp(6) default null not serialized, "},
+ {" compile_end_utc_ts timestamp(6) default null not serialized, "},
+ {" compile_elapsed_time largeint default null serialized, "},
+ {" cmp_affinity_num largeint default null serialized, "},
+ {" cmp_dop largeint default null serialized, "},
+ {" cmp_txn_needed largeint default null serialized, "},
+ {" cmp_mandatory_x_prod largeint default null serialized, "},
+ {" cmp_missing_stats largeint default null serialized, "},
+ {" cmp_num_joins largeint default null serialized, "},
+ {" cmp_full_scan_on_table largeint default null serialized, "},
+ {" cmp_rows_accessed_full_scan double precision default null not serialized, "},
+ {" est_accessed_rows double precision default null not serialized, "},
+ {" est_used_rows double precision default null not serialized, "},
+ {" cmp_compiler_id char(28) character set iso88591 casespecific default null serialized, "},
+ {" cmp_cpu_path_length largeint default null serialized, "},
+ {" cmp_cpu_binder largeint default null serialized, "},
+ {" cmp_cpu_normalizer largeint default null serialized, "},
+ {" cmp_cpu_analyzer largeint default null serialized, "},
+ {" cmp_cpu_optimizer largeint default null serialized, "},
+ {" cmp_cpu_generator largeint default null serialized, "},
+ {" cmp_metadata_cache_hits largeint default null serialized, "},
+ {" cmp_metadata_cache_lookups largeint default null serialized, "},
+ {" cmp_query_cache_status largeint default null serialized, "},
+ {" cmp_histogram_cache_hits largeint default null serialized, "},
+ {" cmp_histogram_cache_lookups largeint default null serialized, "},
+ {" cmp_stmt_heap_size largeint default null serialized, "},
+ {" cmp_context_heap_size largeint default null serialized, "},
+ {" cmp_optimization_tasks largeint default null serialized, "},
+ {" cmp_optimization_contexts largeint default null serialized, "},
+ {" cmp_is_recompile smallint default null serialized, "},
+ {" est_num_seq_ios double precision default null not serialized, "},
+ {" est_num_rand_ios double precision default null not serialized, "},
+ {" est_cost double precision default null not serialized, "},
+ {" est_cardinality double precision default null not serialized, "},
+ {" est_io_time double precision default null not serialized, "},
+ {" est_msg_time double precision default null not serialized, "},
+ {" est_idle_time double precision default null not serialized, "},
+ {" est_cpu_time double precision default null not serialized, "},
+ {" est_total_time double precision default null not serialized, "},
+ {" est_total_mem double precision default null not serialized, "},
+ {" est_resource_usage largeint default null serialized, "},
+ {" aggregate_option char(3) character set iso88591 casespecific default null serialized, "},
+ {" cmp_number_of_bmos integer default null serialized, "},
+ {" cmp_overflow_mode char(10) character set iso88591 casespecific default null serialized, "},
+ {" cmp_overflow_size largeint default null serialized, "},
+ {" aggregate_total largeint default null serialized, "},
+ {" stats_error_code integer default null serialized, "},
+ {" query_elapsed_time largeint default null serialized, "},
+ {" sql_process_busy_time largeint default null serialized, "},
+ {" disk_process_busy_time largeint default null serialized, "},
+ {" disk_ios largeint default null serialized, "},
+ {" num_sql_processes largeint default null serialized, "},
+ {" sql_space_allocated largeint default null serialized, "},
+ {" sql_space_used largeint default null serialized, "},
+ {" sql_heap_allocated largeint default null serialized, "},
+ {" sql_heap_used largeint default null serialized, "},
+ {" total_mem_alloc largeint default null serialized, "},
+ {" max_mem_used largeint default null serialized, "},
+ {" transaction_id char(25) character set iso88591 casespecific default null serialized, "},
+ {" num_request_msgs largeint default null serialized, "},
+ {" num_request_msg_bytes largeint default null serialized, "},
+ {" num_reply_msgs largeint default null serialized, "},
+ {" num_reply_msg_bytes largeint default null serialized, "},
+ {" first_result_return_utc_ts timestamp(6) default null not serialized, "},
+ {" rows_returned_to_master largeint default null serialized, "},
+ {" parent_query_id char("MAX_QUERY_ID_LEN_STR") character set iso88591 casespecific default null serialized, "},
+ {" parent_system_name char(128) character set iso88591 casespecific default null serialized, "},
+ {" exec_end_utc_ts timestamp(6) default null not serialized, "},
+ {" master_execution_time largeint default null serialized, "},
+ {" master_elapsed_time largeint default null serialized, "},
+{" query_status char(21) character set utf8 casespecific default null serialized, "},
+ {" query_sub_status char(30) character set utf8 casespecific default null serialized, "},
+ {" error_code integer default null serialized, "},
+ {" sql_error_code integer default null serialized, "},
+ {" error_text varchar(2000) character set utf8 casespecific default null serialized, "},
+ {" query_text varchar(50000) character set utf8 casespecific default null serialized, "},
+ {" explain_plan varchar(200000) character set iso88591 casespecific default null serialized, "},
+ {" last_error_before_aqr integer default null serialized, "},
+ {" delay_time_before_aqr_sec largeint default null serialized, "},
+ {" total_num_aqr_retries largeint default null serialized, "},
+ {" msg_bytes_to_disk largeint default null serialized, "},
+ {" msgs_to_disk largeint default null serialized, "},
+ {" rows_accessed largeint default null serialized, "},
+ {" rows_retrieved largeint default null serialized, "},
+ {" num_rows_iud largeint default null serialized, "},
+ {" processes_created largeint default null serialized, "},
+ {" process_create_busy_time largeint default null serialized, "},
+ {" ovf_file_count largeint default null serialized, "},
+ {" ovf_space_allocated largeint default null serialized, "},
+ {" ovf_space_used largeint default null serialized, "},
+ {" ovf_block_size largeint default null serialized, "},
+ {" ovf_write_read_count largeint default null serialized, "},
+ {" ovf_write_count largeint default null serialized, "},
+ {" ovf_buffer_blocks_written largeint default null serialized, "},
+ {" ovf_buffer_bytes_written largeint default null serialized, "},
+ {" ovf_read_count largeint default null serialized, "},
+ {" ovf_buffer_blocks_read largeint default null serialized, "},
+ {" ovf_buffer_bytes_read largeint default null serialized, "},
+ {" num_nodes largeint default null serialized, "},
+ {" udr_process_busy_time largeint default null serialized, "},
+ {" pertable_stats integer default null serialized "},
+ {" "},
+ {" ) "},
+ {" primary key ( exec_start_utc_ts, query_id ) salt using 8 partitions on ( query_id ) "},
+ {" hbase_options ( DATA_BLOCK_ENCODING = 'FAST_DIFF', COMPRESSION = 'GZ' ) "},
+ {" ; "}
+ };
+
+//----------------------------------------------------------------
+// -- METRIC_SESSION_TABLE
+// ----------------------------------------------------------------
+static const QString createOldTrafv11MetricSessionTable[] =
+{
+ {" create table %s.\"%s\"."TRAF_METRIC_SESSION_TABLE_OLD_REPOS" "},
+ {" ( "},
+ {" instance_id integer unsigned no default not null not droppable serialized, "},
+ {" tenant_id integer unsigned no default not null not droppable serialized, "},
+ {" component_id integer unsigned default null serialized, "},
+ {" process_id integer default null serialized, "},
+ {" thread_id integer unsigned default null serialized, "},
+ {" node_id integer unsigned default null serialized, "},
+ {" pnid_id integer unsigned default null serialized, "},
+ {" host_id integer unsigned no default not null not droppable serialized, "},
+ {" ip_address_id char(32) character set iso88591 casespecific default null serialized, "},
+ {" sequence_number integer unsigned default null serialized, "},
+ {" process_name char(32) character set iso88591 casespecific default null serialized, "},
+ {" session_id char(108) character set iso88591 casespecific no default not null not droppable serialized, "},
+ {" session_status char(5) character set iso88591 casespecific default null serialized, "},
+ {" session_start_utc_ts timestamp(6) no default not null not droppable not serialized, "},
+ {" session_end_utc_ts timestamp(6) default null not serialized, "},
+ {" user_id largeint default null serialized, "},
+ {" user_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" role_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" client_name varchar(256) character set utf8 casespecific default null serialized, "},
+ {" client_user_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" application_name char(130) character set iso88591 casespecific default null serialized, "},
+ {" total_execution_time largeint default null serialized, "},
+ {" total_elapsed_time largeint default null serialized, "},
+ {" total_insert_stmts_executed largeint default null serialized, "},
+ {" total_delete_stmts_executed largeint default null serialized, "},
+ {" total_update_stmts_executed largeint default null serialized, "},
+ {" total_select_stmts_executed largeint default null serialized, "},
+ {" total_catalog_stmts largeint default null serialized, "},
+ {" total_prepares largeint default null serialized, "},
+ {" total_executes largeint default null serialized, "},
+ {" total_fetches largeint default null serialized, "},
+ {" total_closes largeint default null serialized, "},
+ {" total_execdirects largeint default null serialized, "},
+ {" total_errors largeint default null serialized, "},
+ {" total_warnings largeint default null serialized, "},
+ {" total_login_elapsed_time_mcsec largeint default null serialized, "},
+ {" ldap_login_elapsed_time_mcsec largeint default null serialized, "},
+ {" sql_user_elapsed_time_mcsec largeint default null serialized, "},
+ {" search_connection_elapsed_time_mcsec largeint default null serialized, "},
+ {" search_elapsed_time_mcsec largeint default null serialized, "},
+ {" authentication_connection_elapsed_time_mcsec largeint default null serialized, "},
+ {" authentication_elapsed_time_mcsec largeint default null serialized "},
+ {" ) "},
+{" primary key (session_start_utc_ts, session_id ) salt using 8 partitions on ( session_id ) "},
+ {" hbase_options ( DATA_BLOCK_ENCODING = 'FAST_DIFF', COMPRESSION = 'GZ' ) "},
+ {" ; "},
+ };
+
+ //----------------------------------------------------------------
+ //- METRIC_QUERY_AGGREGATION_TABLE
+ //----------------------------------------------------------------
+static const QString createOldTrafv11MetricQueryAggrTable[] =
+{
+ {" create table %s.\"%s\"."TRAF_METRIC_QUERY_AGGR_TABLE_OLD_REPOS" "},
+ {" ( "},
+ {" instance_id integer unsigned no default not null not droppable serialized, "},
+ {" tenant_id integer unsigned no default not null not droppable serialized, "},
+ {" component_id integer unsigned default null serialized, "},
+ {" process_id integer default null serialized, "},
+ {" thread_id integer unsigned default null serialized, "},
+ {" node_id integer unsigned default null serialized, "},
+ {" pnid_id integer unsigned default null serialized, "},
+ {" host_id integer unsigned no default not null not droppable serialized, "},
+ {" ip_address_id char(32) character set iso88591 casespecific default null serialized, "},
+ {" sequence_number integer unsigned default null serialized, "},
+ {" process_name char(32) character set iso88591 casespecific default null serialized, "},
+ {" session_id char(108) character set iso88591 casespecific no default not null not droppable serialized, "},
+ {" session_start_utc_ts timestamp(6) no default not null not droppable not serialized, "},
+ {" aggregation_last_update_utc_ts timestamp(6) default null not serialized, "},
+ {" aggregation_last_elapsed_time largeint default null serialized, "},
+ {" user_id largeint default null serialized, "},
+ {" user_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" role_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" client_name varchar(256) character set utf8 casespecific default null serialized, "},
+ {" client_user_name char(256 bytes) character set utf8 casespecific default null serialized, "},
+ {" application_name char(130) character set iso88591 casespecific default null serialized, "},
+ {" total_est_rows_accessed largeint default null serialized, "},
+ {" total_est_rows_used largeint default null serialized, "},
+ {" total_rows_retrieved largeint default null serialized, "},
+ {" total_num_rows_iud largeint default null serialized, "},
+ {" total_selects largeint default null serialized, "},
+ {" total_inserts largeint default null serialized, "},
+ {" total_updates largeint default null serialized, "},
+ {" total_deletes largeint default null serialized, "},
+
+ {" total_ddl_stmts largeint default null serialized, "},
+ {" total_util_stmts largeint default null serialized, "},
+ {" total_catalog_stmts largeint default null serialized, "},
+ {" total_other_stmts largeint default null serialized, "},
+
+ {" total_insert_errors largeint default null serialized, "},
+ {" total_delete_errors largeint default null serialized, "},
+ {" total_update_errors largeint default null serialized, "},
+ {" total_select_errors largeint default null serialized, "},
+
+ {" total_ddl_errors largeint default null serialized, "},
+ {" total_util_errors largeint default null serialized, "},
+ {" total_catalog_errors largeint default null serialized, "},
+ {" total_other_errors largeint default null serialized, "},
+
+ {" delta_estimated_rows_accessed largeint default null serialized, "},
+ {" delta_estimated_rows_used largeint default null serialized, "},
+ {" delta_rows_accessed largeint default null serialized, "},
+ {" delta_rows_retrieved largeint default null serialized, "},
+ {" delta_num_rows_iud largeint default null serialized, "},
+
+ {" delta_selects largeint default null serialized, "},
+ {" delta_inserts largeint default null serialized, "},
+ {" delta_updates largeint default null serialized, "},
+ {" delta_deletes largeint default null serialized, "},
+
+ {" delta_ddl_stmts largeint default null serialized, "},
+ {" delta_util_stmts largeint default null serialized, "},
+ {" delta_catalog_stmts largeint default null serialized, "},
+ {" delta_other_stmts largeint default null serialized, "},
+
+ {" delta_insert_errors largeint default null serialized, "},
+ {" delta_delete_errors largeint default null serialized, "},
+ {" delta_update_errors largeint default null serialized, "},
+ {" delta_select_errors largeint default null serialized, "},
+
+ {" delta_ddl_errors largeint default null serialized, "},
+ {" delta_util_errors largeint default null serialized, "},
+ {" delta_catalog_errors largeint default null serialized, "},
+ {" delta_other_errors largeint default null serialized "},
+
+ {" ) "},
+ {" primary key ( session_start_utc_ts, session_id ) salt using 8 partitions on ( session_id ) "},
+ {" hbase_options ( DATA_BLOCK_ENCODING = 'FAST_DIFF', COMPRESSION = 'GZ' ) "},
+ {" ; "}
+};
+
+//----------------------------------------------------------------
+//-- METRIC_TEXT_TABLE
+//----------------------------------------------------------------
+static const QString createOldTrafv11MetricTextTable[] =
+ {
+ {" create table %s.\"%s\"."REPOS_METRIC_TEXT_TABLE" "}, // table didn't change when moving from 1.1 to 2.1
+ {" ( "},
+ {" query_id char("MAX_QUERY_ID_LEN_STR") character set iso88591 casespecific no default not null not droppable serialized, "},
+ {" text_type int not null serialized, "},
+ {" sub_id int not null serialized, "},
+ {" seq_num int not null serialized, "},
+ {" flags largeint not null serialized, "},
+ {" text varchar(50000 bytes) character set iso88591 not null serialized "},
+ {" ) "},
+ {" primary key (query_id, text_type, sub_id, seq_num) "},
+ {" ; "}
+ };
+
+// The following are the repository definitions for Metadata version 2.3 (before we
+// reset the numbering for Trafodion; 2.3 preceeds Trafodion 1.1). These are
+// kept solely for historical purposes.
+
+static const QString createOldv23ReposMetricQueryTable[] =
{
{" create table %s.\"%s\"."TRAF_METRIC_QUERY_TABLE_OLD_REPOS" "},
{" ( "},
@@ -463,7 +791,7 @@ static const QString createOldReposMetricQueryTable[] =
{" ; "}
};
-static const QString createOldReposMetricSessionTable[] =
+static const QString createOldv23ReposMetricSessionTable[] =
{
{" create table %s.\"%s\"."TRAF_METRIC_SESSION_TABLE_OLD_REPOS" "},
{" ( "},
@@ -517,7 +845,7 @@ static const QString createOldReposMetricSessionTable[] =
//----------------------------------------------------------------
//- Old METRIC_QUERY_AGGREGATION_TABLE
//----------------------------------------------------------------
-static const QString createOldReposMetricQueryAggrTable[] =
+static const QString createOldv23ReposMetricQueryAggrTable[] =
{
{" create table %s.\"%s\"."TRAF_METRIC_QUERY_AGGR_TABLE_OLD_REPOS" "},
{" ( "},
@@ -568,10 +896,11 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
// TRAF_METRIC_QUERY_TABLE
{ REPOS_METRIC_QUERY_TABLE, TRAF_METRIC_QUERY_TABLE_OLD_REPOS,
createMetricQueryTable, sizeof(createMetricQueryTable),
- createOldReposMetricQueryTable, sizeof(createOldReposMetricQueryTable),
+ createOldTrafv11MetricQueryTable, sizeof(createOldTrafv11MetricQueryTable),
NULL, 0,
- FALSE,
+ TRUE,
+ // new table columns
"instance_id,"
"tenant_id,"
"component_id,"
@@ -585,6 +914,7 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"process_name,"
"exec_start_utc_ts,"
"query_id,"
+ "query_signature_id,"
"user_name,"
"role_name,"
"start_priority,"
@@ -696,8 +1026,10 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"ovf_buffer_bytes_read,"
"num_nodes,"
"udr_process_busy_time,"
- "pertable_stats",
+ "pertable_stats,"
+ "last_updated_time",
+ // values from old table to be inserted into new
"instance_id,"
"tenant_id,"
"component_id,"
@@ -711,6 +1043,7 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"process_name,"
"exec_start_utc_ts,"
"query_id,"
+ "NULL,"
"user_name,"
"role_name,"
"start_priority,"
@@ -792,8 +1125,8 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"exec_end_utc_ts,"
"master_execution_time,"
"master_elapsed_time,"
- "'COMPLETED',"
- "'COMPLETED',"
+ "query_status,"
+ "query_sub_status,"
"error_code,"
"sql_error_code,"
"error_text,"
@@ -822,25 +1155,118 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"ovf_buffer_bytes_read,"
"num_nodes,"
"udr_process_busy_time,"
- "pertable_stats",
+ "pertable_stats,"
+ "NULL",
NULL, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE},
// REPOS_METRIC_SESSION_TABLE
{ REPOS_METRIC_SESSION_TABLE, TRAF_METRIC_SESSION_TABLE_OLD_REPOS,
createMetricSessionTable, sizeof(createMetricSessionTable),
- createOldReposMetricSessionTable, sizeof(createOldReposMetricSessionTable),
+ createOldTrafv11MetricSessionTable, sizeof(createOldTrafv11MetricSessionTable),
NULL, 0,
- FALSE, NULL, NULL, NULL, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE},
+ TRUE,
+
+ // new table columns
+ "instance_id,"
+ "tenant_id,"
+ "component_id,"
+ "process_id,"
+ "thread_id,"
+ "node_id,"
+ "pnid_id,"
+ "host_id,"
+ "ip_address_id,"
+ "sequence_number,"
+ "process_name,"
+ "session_id,"
+ "session_status,"
+ "session_start_utc_ts,"
+ "session_end_utc_ts,"
+ "user_id,"
+ "user_name,"
+ "role_name,"
+ "client_name,"
+ "client_user_name,"
+ "application_name,"
+ "profile_name,"
+ "sla_name,"
+ "total_execution_time,"
+ "total_elapsed_time,"
+ "total_insert_stmts_executed,"
+ "total_delete_stmts_executed,"
+ "total_update_stmts_executed,"
+ "total_select_stmts_executed,"
+ "total_catalog_stmts,"
+ "total_executes,"
+ "total_fetches,"
+ "total_closes,"
+ "total_execdirects,"
+ "total_errors,"
+ "total_warnings,"
+ "total_login_elapsed_time_mcsec,"
+ "ldap_login_elapsed_time_mcsec,"
+ "sql_user_elapsed_time_mcsec,"
+ "search_connection_elapsed_time_mcsec,"
+ "search_elapsed_time_mcsec,"
+ "authentication_connection_elapsed_time_mcsec,"
+ "authentication_elapsed_time_mcsec",
+
+ // values from old table to be inserted into new
+ "instance_id,"
+ "tenant_id,"
+ "component_id,"
+ "process_id,"
+ "thread_id,"
+ "node_id,"
+ "pnid_id,"
+ "host_id,"
+ "ip_address_id,"
+ "sequence_number,"
+ "process_name,"
+ "session_id,"
+ "session_status,"
+ "session_start_utc_ts,"
+ "session_end_utc_ts,"
+ "user_id,"
+ "user_name,"
+ "role_name,"
+ "client_name,"
+ "client_user_name,"
+ "application_name,"
+ "NULL,"
+ "NULL,"
+ "total_execution_time,"
+ "total_elapsed_time,"
+ "total_insert_stmts_executed,"
+ "total_delete_stmts_executed,"
+ "total_update_stmts_executed,"
+ "total_select_stmts_executed,"
+ "total_catalog_stmts,"
+ "total_executes,"
+ "total_fetches,"
+ "total_closes,"
+ "total_execdirects,"
+ "total_errors,"
+ "total_warnings,"
+ "total_login_elapsed_time_mcsec,"
+ "ldap_login_elapsed_time_mcsec,"
+ "sql_user_elapsed_time_mcsec,"
+ "search_connection_elapsed_time_mcsec,"
+ "search_elapsed_time_mcsec,"
+ "authentication_connection_elapsed_time_mcsec,"
+ "authentication_elapsed_time_mcsec",
+
+ NULL, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE},
// REPOS_METRIC_QUERY_AGGR_TABLE
{ REPOS_METRIC_QUERY_AGGR_TABLE, TRAF_METRIC_QUERY_AGGR_TABLE_OLD_REPOS,
createMetricQueryAggrTable, sizeof(createMetricQueryAggrTable),
- createOldReposMetricQueryAggrTable, sizeof(createOldReposMetricQueryAggrTable),
+ createOldTrafv11MetricQueryAggrTable, sizeof(createOldTrafv11MetricQueryAggrTable),
NULL, 0,
- FALSE,
+ TRUE,
- // INSERTED columns
+ // new table columns
"instance_id, tenant_id, component_id, process_id, thread_id, node_id, pnid_id, host_id,"
"ip_address_id, sequence_number, process_name, session_id, "
"session_start_utc_ts, aggregation_last_update_utc_ts, aggregation_last_elapsed_time,"
@@ -858,28 +1284,31 @@ static const MDUpgradeInfo allReposUpgradeInfo[] = {
"delta_ddl_stmts, delta_util_stmts, delta_catalog_stmts, delta_other_stmts, "
"delta_insert_errors, delta_delete_errors, delta_update_errors, delta_select_errors, "
- "delta_ddl_errors, delta_util_errors, delta_catalog_errors, delta_other_errors ",
+ "delta_ddl_errors, delta_util_errors, delta_catalog_errors, delta_other_errors, "
+
+ "average_response_time, throughput_per_second ",
- // SELECTED columns
+ // values from old table to be inserted into new
"instance_id, tenant_id, component_id, process_id, thread_id, node_id, pnid_id, host_id,"
"ip_address_id, sequence_number, process_name, session_id, "
- " current_timestamp, aggregation_start_utc_ts, cast((aggregation_end_utc_ts - aggregation_start_utc_ts) as largeint),"
+ "session_start_utc_ts, aggregation_last_update_utc_ts, aggregation_last_elapsed_time,"
"user_id, user_name, role_name, client_name, client_user_name,"
"application_name, total_est_rows_accessed, total_est_rows_used, total_rows_retrieved,"
+ "total_num_rows_iud, total_selects, total_inserts, total_updates, total_deletes,"
- "total_num_rows_iud, total_selects, total_inserts, total_updates, total_deletes, "
-
- "0, 0, 0, 0, "
- "0, 0, 0, 0, "
- "0, 0, 0, 0, "
+ "total_ddl_stmts, total_util_stmts, total_catalog_stmts, total_other_stmts, "
+ "total_insert_errors, total_delete_errors, total_update_errors, total_select_errors, "
+ "total_ddl_errors, total_util_errors, total_catalog_errors, total_other_errors, "
"delta_estimated_rows_accessed, delta_estimated_rows_used, delta_rows_accessed,"
- "delta_rows_retrieved, delta_num_rows_uid, delta_total_selects, delta_total_inserts,"
- "delta_total_updates, delta_total_deletes, "
+ "delta_rows_retrieved, delta_num_rows_iud, "
+ "delta_selects, delta_inserts, delta_updates, delta_deletes,"
+
+ "delta_ddl_stmts, delta_util_stmts, delta_catalog_stmts, delta_other_stmts, "
+ "delta_insert_errors, delta_delete_errors, delta_update_errors, delta_select_errors, "
+ "delta_ddl_errors, delta_util_errors, delta_catalog_errors, delta_other_errors, "
- "0, 0, 0, 0, "
- "0, 0, 0, 0, "
- "0, 0, 0, 0",
+ "NULL, NULL",
NULL, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE},