hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eugene Koifman (JIRA)" <>
Subject [jira] [Commented] (HIVE-18453) ACID: Add "CREATE TRANSACTIONAL TABLE" syntax to unify ACID ORC & Parquet support
Date Tue, 04 Sep 2018 19:53:00 GMT


Eugene Koifman commented on HIVE-18453:

[~ikryvenko], no.  "create transactional..." should examine the create table statement and
create a full CRUD table if possible (i.e. if it's a managed table stored as ORC, not sorted,
etc.).  If this table cannot be made full CRUD, it should check if it can be made insert-only
transactional.  If that is not possible (e.g. the table is external), it should raise an


This is exactly what happens when a "create table ..." (w/o any transactional=true property
in the create table stmt) is processed and both {{HiveConf.ConfVars.HIVE_CREATE_TABLES_AS_INSERT_ONLY}}
and {{MetastoreConf.ConfVars.CREATE_TABLES_AS_ACID}} are set to true.  That's why I'm suggesting
that you look at {{SemanticAnalyzer.validateAndAddDefaultProperties()}} - this is where the
logic to examine the new table is.  I think you can just make your "create transactional table..."
used this method.

> ACID: Add "CREATE TRANSACTIONAL TABLE" syntax to unify ACID ORC & Parquet support
> ---------------------------------------------------------------------------------
>                 Key: HIVE-18453
>                 URL:
>             Project: Hive
>          Issue Type: Improvement
>          Components: Transactions
>            Reporter: Gopal V
>            Assignee: Igor Kryvenko
>            Priority: Major
>         Attachments: HIVE-18453.01.patch, HIVE-18453.02.patch, HIVE-18453.03.patch, HIVE-18453.04.patch,
HIVE-18453.05.patch, HIVE-18453.06.patch, HIVE-18453.07.patch
> The ACID table markers are currently done with TBLPROPERTIES which is inherently fragile.
> The "create transactional table" offers a way to standardize the syntax and allows for
future compatibility changes to support Parquet ACIDv2 tables along with ORC tables.
> The ACIDv2 design is format independent, with the ability to add new vectorized input
formats with no changes to the design.

This message was sent by Atlassian JIRA

View raw message