GenItemExpr.cpp

Clone Tools
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[TRAFODION-3097] At times the query involving sequence function fail and dumps core

BiArithmetic sum expression clause in Sequence expression can't have

pcode generated like an arithmetic expression that supports augmented

assignment operation such as a += b.

  1. … 8 more files in changeset.
TRAFODION-2731 CodeCleanup: Phase 4. Remove legacy/obsolete pragmas

  1. … 392 more files in changeset.
jira TRAFODION-2246 Add support for GROUP BY ROLLUP feature

Syntax:

select item1, item2... from ... group by rollup (v1,...,vn)

Restrictions related to grouby rollup usage and query transformations

listed below. Some may be lifted in later checkins:

-- grouping column list must not have duplicate entries

-- aggrs must be min/max/sum/avg/count/count(*)

-- distinct aggregates are not supported

-- grouping columns/values must be nullable.

To group on a non-nullable item, use function

CAST(v as nullable).

This will convert v to nullable, if needed.

-- HAVING predicate will not be pushed down to scan predicate.

-- group by in a subquery will not be eliminated

-- grouping comparison predicate does not use pcode

-- group by rollup cannot be replaced by primary key

-- groupby will be done using sortgroupby since ordering is needed to

materialize rollup groups.

-- rollup groupby will be done at root (master root or esp root). This

is needed to detect rollup group changes across the whole result set.

-- since groupby can materialize new null rows for rollup groups,

a final sort operator is needed to be added after groupy even

if sortgroupby has already guaranteed that it gets rows in order.

Rollup computation logic is discussed in file executor/ex_sort_grby.cpp

prior to ex_sort_grby_rollup_tcb::work method.

See regress/seabase/TEST033 for tests of various 'group by rollup'

functionality.

  1. … 16 more files in changeset.
groupby rollup commit #1

  1. … 31 more files in changeset.
JIRA TRAFODION-2099 Add support for boolean datatype

-- boolean datatype support in create, cast and params

Ex:

create table t (a boolean);

insert into t values (true), (false);

select * from t where a = true;

-- boolean datatype support for hive columns

-- unarith op support. Currently used for '!' operator that

negates a boolean value.

Ex: select * from t where !a = false;

-- support for more tinyint and largeint unsigned conversion/comparison

operations in expressions and pcode

-- some code cleanup: removed reference to downrev compiler code genration

-- create table if not exists as select... syntax support

-- regress/seabase/TEST003 updated with additional tests

  1. … 81 more files in changeset.
Part 2 of changes to update license text in Trafodion source

This check-in updates license text in all source files in the

core/sql directory. Remaining directories will be done in

later check-ins.

  1. … 3147 more files in changeset.
Merge remote branch 'core/master'

  1. … 108 more files in changeset.
Move core into subdir to combine repos

    • -0
    • +715
    ./GenItemExpr.cpp
  1. … 10768 more files in changeset.
Move core into subdir to combine repos

    • -0
    • +714
    ./GenItemExpr.cpp
  1. … 10622 more files in changeset.
Move core into subdir to combine repos

Use: git log --follow -- <file>

to view file history thru renames.

    • -0
    • +715
    ./GenItemExpr.cpp
  1. … 10837 more files in changeset.