Clone Tools
Constraints: committers
Constraints: files
Constraints: dates
Change HSTableDef to recognize volatile tables

The redefinition of the isVolatile() virtual function for

some subclasses of HSTableDef originally returned FALSE, and

had not been updated since the addition of volatile tables.

Now the function always determines whether the table is volatile

based on the name of the containing schema.

The symptom of the bug was a core file produced for certain

operations on a virtual table, such as bulk load.

Change-Id: I1d592935d4922e8ce8202bf7429f929275ebae0f

Closes-Bug: #1388207

Added new HBase configurations and Bug Fix 1391962

New HBase configuration settings added.

Bug fix 1391962: A check has been added that makes sure that Trafodion

is installed on the same nodes that the Hadoop distro is installed on.

If they do not match trafodion_mods will exit and ask user to reinstall

using a correct list of nodes.

Change-Id: I0d5a2bca7636f3e7b3c4baa66c93b7e6c9c2d27b

Merge "fixes for bulk unload issues"

Enabling runtime stats for hbase tables and operators

This is the third set of changes to collect the runtime stats info. Part

is to address the comments and suggestions from last review.

1) Instead of passing the hbase access stats entry to every htable

calls, set the pointer in the EXP hbase interface layer with first init

call in the tcb work methods (not the task work methods), then

eventually to the htable JNI layer from getHTableClient()


2) Rewrite the way to construct the hbase operator names from one

methord and use it for display both tdb contents and tcb stats.

3) Populate the hbase I/O bytes counter for both read and insert


4) Fix the problem that parsing stats variable text string could go

beyond the end of the string (getSubstrInfo() in


Change-Id: I62618b57894039bc1ca5bc0f3c9b89efec5cc42e

    • -69
    • +178
    • -47
    • +54
    • -79
    • +107
Merge "Identity column and sequence numbers support."

    • -41
    • +442
Merge "Enable RMS monitoring"

Merge "Fixed Query Invalidation for DROP CONSTRAINT for RI"

Identity column and sequence numbers support.

Added support for IDENTITY columns.

Finished sequence numbers functionality.

Bug fixes and perf enhancements in those areas.

This code has been pre-reviewed by Joanie C.

Change-Id: I0445bc9765b60becb9adf8c053c05344395aecaa

    • -8
    • +0
    • -325
    • +0
    • -538
    • +0
    • -0
    • +115
    • -4
    • +21
  1. … 80 more files in changeset.
Fixed Query Invalidation for DROP CONSTRAINT for RI

This checkin fixes a problem previously shown in the DIFF122.KNOWN

testware file: dropping an RI constraint did not clear out cache

for the referenced table.

Change-Id: I5ab75a0e3914b2795a317b07fa69f2623e6f66af

fixes for bulk unload issues

- fix for bug 1391641. (unload WITH DELIMITER 255 returns ERROR[15001]).

- fix for bug 1387377. (unload with [delimiter | record_separator] 0 should err).

- fix bug 1389857. (trafci unload reports incorrect number of rows unloaded).

Change-Id: I3599728426464e81178c5904563b68aa78502a0b

Fix bug 1392522 - mxosrvr core dumped doing showplan (with N.E. enabled)

The basic problem was that PCodeCfg::generateShowPlan() called

PCodeCfg::layoutNativeCode() when the PCODE that had been generated

was unoptimized PCODE. PCodeCfg::layoutNativeCode() expects to be

called with optimized PCODE and is not able to handle some strange

qualities about unoptimized PCODE.

This fix changes PCodeCfg::generateShowPlan() to put out a simple

message saying the a Native Expression exists but will not be

displayed as part of the showplan output. In the future, we should

be able to implement a complete fix and display the Native Expression,

but in the meantime, we do not want to produce core dumps.

Since showplan is not documented for customer usage, this temporary

fix will not affect customers. Also, if developers want to obtain

the assembler language for the Native Expression, we can obtain that

by turning on the CQDs that are used to debug the Native Expressions


Ran standard Trafodion developer regression tests.

Change-Id: I891a9c0bfbe680667a56f9b0ad4674ed0a0b1cbf

mxosrvr exit when heapsize become large, dcs part dcs-default.xml updated

Change-Id: I4537e89861f89de1b08cf64f1a96193d7581006e

Query Invalidation triggered by DDL, phase 2

This checkin adds test cases to the developer regression tests

to demonstrate DDL QI affects other user's compiler cache as a

result of the following operations:

alter table add column

alter table add check constraint

alter table add unique constraint

alter table add primary key

alter table add foreign key (RI)

create index

drop column

drop check constraint

drop unique constraint

drop primary key

drop foreign key (RI)

drop index

Change-Id: Ic6b705622b24e250e10e3bd5782ca04e580255d8

Implements: blueprint ddl-query-invalidation

    • -0
    • +3
    • -7
    • +451
Merge "Query Invalidation triggered by DDL, phase 1"

Merge "Improved commitRequest metrics"

Merge "support fully qualified domain name in hostnames."

Improved commitRequest metrics

Change-Id: I71b8f80d7d2962721ab8fe7cc0f2a11e0d11f6ec

Query Invalidation triggered by DDL, phase 1

This first check-in implements most of the framework which will

be used to complete the QI DDL feature. It redefines the old

security invalidation key (SQL_SIKEY) to handle DDL operations in

addition to REVOKE. In a limited number of DDL operations, the object

UIDs of affected Seabase objects are propagated to all nodes for

use by the compiler to invalidate NATable cache entries, as

well as a limited number of types of cached queries. Later this

month, the framework will be complete by allowing prepared queries

that have already been returned from the compiler to be invalidated.

Then the next step for the framework will be support for invalidating

the HTable cache. Finally an effort will be made to cover all of

the necessary DDL operations and all types of cached queries.

The check-in include a new regression test (executor/TEST122) that

demonstrates the cases that are covered. Specifically, a table will

be dropped and recreated with the same name but different definition

in one sqlci session. In another session, which has already populated

NATable cache and query cache for INSERT, UPDATE, DELETE, SELECT,

SELECT COUNT(*), INVOKE and SHOWDDL statements, those some types

of statements will be resubmitted and correctly compiled.

Change-Id: Ie61ce751089b57ce1894f1764c338e9400bb7b8a

Closes-Bug: #1329358

Implements: blueprint ddl-query-invalidation

  1. … 27 more files in changeset.
fix cardinality errors for better DoP for OE

Problems fixed are as follows.

1. TableAnalysis::getLocalPredsOnPrefixOfList() prematurely breaks

out of the loop to collect predicates on key columns.

2. TableDesc::getSaltColumnAsSet() does not return the result in

the form of base columns valueIds.

3. When the dop is estimated lower than the low bound of ESPs, the

low bound value is used.

4. SimpleFileScanOptimizer::computeSingleSubsetSize() incorrectly

applies the computed predicates on salted column which reduces the

subset size by CQD HIST_NO_STATS_UEC (default to 2). A subset size

specifies the # of rows processed.

Change-Id: I85bebf0d31d8f3e2db5bfe7c00cb4467b53308ac

    • -2
    • +8
    • -189
    • +188
Merge "fixed an upgrade bug"

Merge "check jdbcT2.jar/jdbcT4.jar."

fixed an upgrade bug

Change-Id: Iff000c23425a252e7393dd67edaff534ffb203c3

    • -5
    • +13
Merge "Fix for bug 1392090"

support fully qualified domain name in hostnames.

Change-Id: I2bc291cb1bac6a5e355661cfbfc2a1ddadff5576

Fix for bug 1392090

Earlier JNI objects in Trafodion were made thread independent. HBaseClient_JNI

and HIveClient_JNI objects are the creator/user of other Trafodion JNI objects.These objects couldn't be used in a different thread because the

thread specific JNIEnv was not setup. This change initializes the JNIENV when

it is not initialized in the thread.

Change-Id: I827002a495c3373b66fb2c88f80675d9da188193

check jdbcT2.jar/jdbcT4.jar.

Change-Id: I4570c70fa707241f7d650c052a0140e4c150240a

Merge "mxosrvr exit when heapsize become large, code changed after last review"

Initial changes for ORC file support.

Access to ORC (optimized row columnar) format tables is not enabled by

default yet. This checkin is initial and infrastructure changes for

that support.

Change-Id: I683c1b63c502dd4d2c736181952cb40f9f299cfd

    • -83
    • +148
  1. … 39 more files in changeset.
Enabling runtime stats for hbase tables and operators

This is the second set of changes to collect the runtime stats info for

hbase tables and operators. It contains:

1) Stats for hbase IUD operations

2) Moved incActualRowsReturned() call to


3) Added Hbase call counter

4) Display full hbase operator names instead of generic

"EX_HBASE_ACCESS" for hbase operator runtime stats

Change-Id: I94d727c897876a429b588f9acb3fec465dd56fe5

    • -128
    • +120
    • -15
    • +92
Enable RMS monitoring

The query execution statistics can now be obtained while the query is running



b) Using STATISTICS table-valued function

c) Using CLI calls – SQL_EXEC_GetStatistics2 and SQL_EXEC_GetStatisticsItems

The statistics can be viewed in accumulated, pertable, progress and operator

stats format.

You can also obtain statistics for each fragment instance and process wise

statistics for each operator of an active query.

Light-weight SQL Offender (LSO) feature is also enabled. With LSO, you can get

1. Queries offending CPU resource

2. Queries blocked in Trafodion Engine

3. Queries that are not active

4. Queries that haven’t finished but blocked in client

5. Queries offending memory resource

Explain in RMS feature can be enabled by setting the

cqd explain_in_rms ‘on’ before compiling a query.

EXPLAIN.. FOR QID <qid> command is now supported.

GET PROCESS STATISTICS FOR <pid> is also supported

Change-Id: I59eb54dd4fd347a37e0b7e7842ee242e553ef60d

    • -0
    • +283
    • -0
    • +202
  1. … 34 more files in changeset.