You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladislav Pyatkov (Jira)" <ji...@apache.org> on 2021/12/13 12:16:00 UTC

[jira] [Updated] (IGNITE-15926) Implement two methods for dropping a table for the table existing and not

     [ https://issues.apache.org/jira/browse/IGNITE-15926?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vladislav Pyatkov updated IGNITE-15926:
---------------------------------------
    Description: 
ANSI standard[1] requires two methods for either table manager functions (DDL):

_DROP TABLE [ IF EXISTS ] syntax_
_CREATE TABLE [ IF NOT EXISTS ] syntax_
_ALTER TABLE [ IF EXISTS ] syntax_

for implement all these functionalities I offer to handle exceptions (TableAlreadyExistsException, TableNotExistsException)
{code:java}
TableManager#dropTable throws TableNotExistsException
IgniteTables#createTableIfNotExists throws TableAlreadyExistsException
IgniteTables#alterTable throws TableNotExistsException
{code}
Also, the twins of these methods with `IfNotExists` suffix (and them asynchronous analogs) would be removed.

[1] [https://postgrespro.ru/docs/postgrespro/9.6/sql-altertable]

  was:
ANSI standard requires two methods for dropping table for the two DDL:
_DROP TABLE [ IF EXISTS ] syntax_
for the purpose, Table manager should provide two methods with similar semantic.
{code}
TableManager#dropTable(String) throws TableNotExists
TableManager#dropTableIfExists(String)
{code}
Also we need to support [1] ALTER TABLE [ IF EXISTS ] [ADD|DROP|ALTER] COLUMN

[1] https://postgrespro.ru/docs/postgrespro/9.6/sql-altertable



> Implement two methods for dropping a table for the table existing and not
> -------------------------------------------------------------------------
>
>                 Key: IGNITE-15926
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15926
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Vladislav Pyatkov
>            Priority: Major
>              Labels: ignite-3
>
> ANSI standard[1] requires two methods for either table manager functions (DDL):
> _DROP TABLE [ IF EXISTS ] syntax_
> _CREATE TABLE [ IF NOT EXISTS ] syntax_
> _ALTER TABLE [ IF EXISTS ] syntax_
> for implement all these functionalities I offer to handle exceptions (TableAlreadyExistsException, TableNotExistsException)
> {code:java}
> TableManager#dropTable throws TableNotExistsException
> IgniteTables#createTableIfNotExists throws TableAlreadyExistsException
> IgniteTables#alterTable throws TableNotExistsException
> {code}
> Also, the twins of these methods with `IfNotExists` suffix (and them asynchronous analogs) would be removed.
> [1] [https://postgrespro.ru/docs/postgrespro/9.6/sql-altertable]



--
This message was sent by Atlassian Jira
(v8.20.1#820001)