Clone
 

david wayne birdsall <dave.birdsall@hp.com> in Trafodion

fixes bug 1464364

Update Stats on a table in a schema with a delimited identifier name

failed with a funny syntax error. Turns out in a new sqlci session,

Showddl on the same table fails the same way.

The root cause was the schema name was passed to a ComObjectName

constructor in internal format, when external format was required.

This has been fixed.

Change-Id: Ic81ba3d69e006264340fbdcbff6fb455593e30cf

Part 2 of ALTER TABLE/INDEX ALTER HBASE_OPTIONS support

blueprint alter-table-hbase-options

This set of changes includes non-transactional HBase semantics

for ALTER TABLE/INDEX ALTER HBASE_OPTIONS. As part of this

change, two sets of logic that manipulate HBase options in

the CREATE TABLE code path were refactored so that logic

could be reused by ALTER TABLE/INDEX. In both these cases,

the logic in question was taken out of a create-side method

and moved into a separate method.

Still to come is the equivalent transactional support, and

also a regression test script that exercises this feature.

With this change, ALTER TABLE/INDEX ALTER HBASE_OPTIONS works

but only in a non-transactional manner. That is, if the

operation is aborted after the request has been issued to HBase,

the change to the Trafodion metadata may be rolled back but

the change to the underlying HBase object may still complete.

Change-Id: Ied11d0b2ac7b7d65110d39a1e5a7fbbac1e1f827

    • -158
    • +301
    /sql/executor/HBaseClient.java
    • -184
    • +231
    /sql/sqlcomp/CmpSeabaseDDLcommon.cpp
    • -1
    • +14
    /sql/sqlcomp/CmpSeabaseDDLindex.cpp
    • -1
    • +13
    /sql/sqlcomp/CmpSeabaseDDLtable.cpp
Part 1 of ALTER TABLE/INDEX ALTER HBASE_OPTIONS support

blueprint alter-table-hbase-options

This set of changes includes the following:

1. Syntax for ALTER TABLE/INDEX ALTER HBASE_OPTIONS

2. Compiler binding and generation logic

3. Run-time logic to update the metadata TEXT table with the

new options.

Still to come is:

1. Logic to actually change the HBase object

2. Transactional logic to actually change the HBase object

The functionality in this set of changes is only marginally

useful. If you manually change hbase options on a Trafodion

object using the hbase shell, you could use this ALTER

TABLE/INDEX command to update the Trafodion metadata. (Of

course some care would have to be taken to use the same

options!).

Change-Id: Id0a5513fe80853c06acdbbf6cc9fd50492fd07b2

    • -0
    • +141
    /sql/parser/StmtDDLAlterIndexHBaseOptions.h
    • -0
    • +128
    /sql/parser/StmtDDLAlterTableHBaseOptions.h
  1. … 4 more files in changeset.
Remove some dead code

Remove dead code concerned with constraint and schema labels.

This is an anachronism from pre-open-source versions of the code.

Most of the code removed is in the compiler, with a small amount

of cli and executor code removed.

Change-Id: Ic8a833bb15d1ca9a0e2e2683f2d4644b44c4f96b

Fixes to copyright check script

1. Changed updateCopyrightCheck.py so that it does not use the

argparse module (removing the dependency on Python 2.7).

2. Deleted some debug code.

3. Fixed some line continuation bugs.

Change-Id: I32a0d80d6cf3a8927ef4537c473cf14891bda483

Adding logic to the core Trafodion build to check for copyrights.

The core Makefile now includes a check-copyrights step, which

checks to see if any changed files in your workspace need

copyright updates. If so, the build fails; the script will tell

you what files to update.

If you prefer, you can configure the script so that it will

automatically update the copyrights for you instead of failing

your build. To do that, export the environment variable

UPDATE_COPYRIGHTS=YES before doing your make.

Note that new files will only be checked if you have previously

done a "git add" command for them. Otherwise only changed

existing files are checked.

Change-Id: Ia643be91bea34832fddcd5a9467959f0726d71d9

    • -0
    • +234
    /updateCopyrightCheck.py
Fixes bug 1398896.

To get the debug output in ColReference::bindNode, you must now

export the environment variable COLREFERENCE_DEBUG first.

Change-Id: Ifa7b3ab46fa97dff89c05b3eacd15f0313ae00b3

Fixes bug 1383877

Also removes some obsolete code from the GET statement processing.

Has passed developer regressions and changes have been reviewed by

the Security team.

Change-Id: I4a02b0ddb3fcf612cd69c3e05bfe2f9952e6fe43

    • -722
    • +13
    /sql/executor/ExExeUtilGet.cpp
Related to bug 1335477: Improve debugging code for MDAM.

If the Trafodion code is built using NA_MDAM_EXECUTOR_DEBUG, then

whenever a query uses an MDAM plan, the MDAM network will be

printed to cout when the query executes. This can be useful for

debugging MDAM queries.

Formerly, the code printed out pointers to the location of the

data values (and with the 64-bit conversion the pointers are

badly mangled). This is nearly useless for debugging.

With these changes, the code assumes the key column is a CHAR(10)

and prints out the actual value. (Note that there is no easy way

at present of determining the actual data type. If the data isn't

a CHAR(10), you'll get what you get; garbage most likely. But

since you're debugging anyway you can change the code to take

into account the actual data type of the example you are

debugging.)

Change-Id: I2d53159c1b10e28777916850efc3f325d3ddb234