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

[jira] [Created] (IGNITE-24031) SCHEMA support. Extend IgniteCatalog to support SQL-schemas

Pavel Pereslegin created IGNITE-24031:
-----------------------------------------

             Summary: SCHEMA support. Extend IgniteCatalog to support SQL-schemas
                 Key: IGNITE-24031
                 URL: https://issues.apache.org/jira/browse/IGNITE-24031
             Project: Ignite
          Issue Type: Improvement
          Components: sql
            Reporter: Pavel Pereslegin


TBD ticket is blocked by ticket that introduces QualifiedName 

Extend {{IgniteCatalog}} interface with methods for creating/dropping schemas, and fix table methods signatures, which require table name.

{code:java}
interface IgniteCatalog {
/* Add new methods. */	
    void createSchema(SchemaDefinition definition);
    void dropSchema(String schema, bool cascade=false);

    SchemaDefinition schemaDefinition(String schemaName);
 
    TableDefinition tableDefinition(QualifiedName tableName);
    void dropTable(QualifiedName tableName);

/* Existing methods should become shoutcuts to a new ones. */
    TableDefinition tableDefinition(String tableName);
    void dropTable(String tableName);

/* Methods related to cache are missed now, but must be consistent as well, when added.*/
    CacheDefinition cacheDefinition(QualifiedName tableName);
    CacheDefinition cacheDefinition(String cacheName);
    void dropCache(QualifiedName cacheName);
    void dropCache(String cacheName);
} 

class SchemaDefinition {
    String schemaName;
}
{code}

The methods that create TableDefinition/CacheDefinition, which accept String parameters, are shortcuts to the new ones.
String table/cache names must satisfy QualifiedName.parse() parameter format.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)