Changeset: 646998a6c64f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=646998a6c64f
Modified Files:
        sql/backends/monet5/rel_bin.c
        sql/backends/monet5/sql_statement.c
        sql/include/sql_catalog.h
        sql/include/sql_relation.h
        sql/rel.txt
        sql/server/rel_distribute.c
        sql/server/rel_dump.c
        sql/server/rel_optimizer.c
        sql/server/rel_propagate.c
        sql/server/rel_psm.c
        sql/server/rel_rel.c
        sql/server/rel_rel.h
        sql/server/rel_schema.c
        sql/server/rel_sequence.c
        sql/server/rel_trans.c
        sql/server/rel_updates.c
        sql/storage/sql_catalog.c
Branch: default
Log Message:

SQL layer cleanup:
- Use C enum for ddl statements list
- Removed unused preprocessor macros and sql_histype enum.
- MAXOPS should be 21.


diffs (truncated from 1207 to 300 lines):

diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c
--- a/sql/backends/monet5/rel_bin.c
+++ b/sql/backends/monet5/rel_bin.c
@@ -5284,7 +5284,7 @@ rel2bin_partition_limits(backend *be, sq
                r = subrel_bin(be, rel->r, refs);
 
        assert(rel->exps);
-       assert(rel->flag == DDL_ALTER_TABLE_ADD_RANGE_PARTITION || rel->flag == 
DDL_ALTER_TABLE_ADD_LIST_PARTITION);
+       assert(rel->flag == ddl_alter_table_add_range_partition || rel->flag == 
ddl_alter_table_add_list_partition);
 
        if(rel->exps) {
                for(n = rel->exps->h; n; n = n->next) {
@@ -5437,7 +5437,7 @@ rel2bin_catalog_table(backend *be, sql_r
        append(l, sname);
        assert(tname);
        append(l, tname);
-       if (rel->flag != DDL_DROP_TABLE && rel->flag != DDL_DROP_VIEW && 
rel->flag != DDL_DROP_CONSTRAINT) {
+       if (rel->flag != ddl_drop_table && rel->flag != ddl_drop_view && 
rel->flag != ddl_drop_constraint) {
                if (en) {
                        table = exp_bin(be, en->data, NULL, NULL, NULL, NULL, 
NULL, NULL);
                        if (!table)
@@ -5487,37 +5487,84 @@ rel2bin_ddl(backend *be, sql_rel *rel, l
        mvc *sql = be->mvc;
        stmt *s = NULL;
 
-       if (rel->flag == DDL_OUTPUT) {
-               s = rel2bin_output(be, rel, refs);
-               sql->type = Q_TABLE;
-       } else if (rel->flag <= DDL_LIST) {
-               s = rel2bin_list(be, rel, refs);
-       } else if (rel->flag == DDL_PSM) {
-               s = rel2bin_psm(be, rel);
-       } else if (rel->flag == DDL_EXCEPTION) {
-               s = rel2bin_exception(be, rel, refs);
-               sql->type = Q_UPDATE;
-       } else if (rel->flag <= DDL_ALTER_SEQ) {
-               s = rel2bin_seq(be, rel, refs);
-               sql->type = Q_SCHEMA;
-       } else if (rel->flag <= DDL_DROP_SEQ) {
-               s = rel2bin_catalog2(be, rel, refs);
-               sql->type = Q_SCHEMA;
-       } else if (rel->flag <= DDL_ALTER_TABLE_ADD_LIST_PARTITION) {
-               s = rel2bin_partition_limits(be, rel, refs);
-               sql->type = Q_SCHEMA;
-       } else if (rel->flag <= DDL_TRANS) {
-               s = rel2bin_trans(be, rel, refs);
-               sql->type = Q_TRANS;
-       } else if (rel->flag <= DDL_DROP_SCHEMA) {
-               s = rel2bin_catalog(be, rel, refs);
-               sql->type = Q_SCHEMA;
-       } else if (rel->flag <= DDL_ALTER_TABLE) {
-               s = rel2bin_catalog_table(be, rel, refs);
-               sql->type = Q_SCHEMA;
-       } else if (rel->flag <= DDL_RENAME_COLUMN) {
-               s = rel2bin_catalog2(be, rel, refs);
-               sql->type = Q_SCHEMA;
+       switch (rel->flag) {
+               case ddl_output:
+                       s = rel2bin_output(be, rel, refs);
+                       sql->type = Q_TABLE;
+                       break;
+               case ddl_list:
+                       s = rel2bin_list(be, rel, refs);
+                       break;
+               case ddl_psm:
+                       s = rel2bin_psm(be, rel);
+                       break;
+               case ddl_exception:
+                       s = rel2bin_exception(be, rel, refs);
+                       sql->type = Q_UPDATE;
+                       break;
+               case ddl_create_seq:
+               case ddl_alter_seq:
+                       s = rel2bin_seq(be, rel, refs);
+                       sql->type = Q_SCHEMA;
+                       break;
+               case ddl_alter_table_add_range_partition:
+               case ddl_alter_table_add_list_partition:
+                       s = rel2bin_partition_limits(be, rel, refs);
+                       sql->type = Q_SCHEMA;
+                       break;
+               case ddl_release:
+               case ddl_commit:
+               case ddl_rollback:
+               case ddl_trans:
+                       s = rel2bin_trans(be, rel, refs);
+                       sql->type = Q_TRANS;
+                       break;
+               case ddl_create_schema:
+               case ddl_drop_schema:
+                       s = rel2bin_catalog(be, rel, refs);
+                       sql->type = Q_SCHEMA;
+                       break;
+               case ddl_create_table:
+               case ddl_drop_table:
+               case ddl_create_view:
+               case ddl_drop_view:
+               case ddl_drop_constraint:
+               case ddl_alter_table:
+                       s = rel2bin_catalog_table(be, rel, refs);
+                       sql->type = Q_SCHEMA;
+                       break;
+               case ddl_drop_seq:
+               case ddl_create_type:
+               case ddl_drop_type:
+               case ddl_drop_index:
+               case ddl_create_function:
+               case ddl_drop_function:
+               case ddl_create_trigger:
+               case ddl_drop_trigger:
+               case ddl_grant_roles:
+               case ddl_revoke_roles:
+               case ddl_grant:
+               case ddl_revoke:
+               case ddl_grant_func:
+               case ddl_revoke_func:
+               case ddl_create_user:
+               case ddl_drop_user:
+               case ddl_alter_user:
+               case ddl_rename_user:
+               case ddl_create_role:
+               case ddl_drop_role:
+               case ddl_alter_table_add_table:
+               case ddl_alter_table_del_table:
+               case ddl_alter_table_set_access:
+               case ddl_comment_on:
+               case ddl_rename_schema:
+               case ddl_rename_table:
+               case ddl_rename_column:
+                       s = rel2bin_catalog2(be, rel, refs);
+                       sql->type = Q_SCHEMA;
+                       break;
+               default:
+                       assert(0);
        }
        return s;
 }
@@ -5860,17 +5907,17 @@ rel_deps(mvc *sql, sql_rel *r, list *ref
                        return -1;
                break;
        case op_ddl:
-               if (r->flag == DDL_OUTPUT) {
+               if (r->flag == ddl_output) {
                        if (r->l)
                                return rel_deps(sql, r->l, refs, l);
-               } else if (r->flag <= DDL_LIST || r->flag == DDL_EXCEPTION) {
+               } else if (r->flag == ddl_list || r->flag == ddl_exception) {
                        if (r->l)
                                return rel_deps(sql, r->l, refs, l);
                        if (r->r)
                                return rel_deps(sql, r->r, refs, l);
-               } else if (r->flag == DDL_PSM) {
+               } else if (r->flag == ddl_psm) {
                        break;
-               } else if (r->flag <= DDL_ALTER_SEQ) {
+               } else if (r->flag == ddl_create_seq || r->flag == 
ddl_alter_seq) {
                        if (r->l)
                                return rel_deps(sql, r->l, refs, l);
                }
diff --git a/sql/backends/monet5/sql_statement.c 
b/sql/backends/monet5/sql_statement.c
--- a/sql/backends/monet5/sql_statement.c
+++ b/sql/backends/monet5/sql_statement.c
@@ -2332,16 +2332,16 @@ stmt_trans(backend *be, int type, stmt *
                return NULL;
 
        switch(type){
-       case DDL_RELEASE:
+       case ddl_release:
                q = newStmt(mb, sqlRef, transaction_releaseRef);
                break;
-       case DDL_COMMIT:
+       case ddl_commit:
                q = newStmt(mb, sqlRef, transaction_commitRef);
                break;
-       case DDL_ROLLBACK:
+       case ddl_rollback:
                q = newStmt(mb, sqlRef, transaction_rollbackRef);
                break;
-       case DDL_TRANS:
+       case ddl_trans:
                q = newStmt(mb, sqlRef, transaction_beginRef);
                break;
        default:
@@ -2380,45 +2380,45 @@ stmt_catalog(backend *be, int type, stmt
 
        /* cast them into properly named operations */
        switch(type){
-       case DDL_CREATE_SEQ:    q = newStmt(mb, sqlcatalogRef, create_seqRef); 
break;
-       case DDL_ALTER_SEQ:     q = newStmt(mb, sqlcatalogRef, alter_seqRef); 
break;
-       case DDL_DROP_SEQ:      q = newStmt(mb, sqlcatalogRef, drop_seqRef); 
break;
-       case DDL_CREATE_SCHEMA: q = newStmt(mb, sqlcatalogRef, 
create_schemaRef); break;
-       case DDL_DROP_SCHEMA:   q = newStmt(mb, sqlcatalogRef, drop_schemaRef); 
break;
-       case DDL_CREATE_TABLE:  q = newStmt(mb, sqlcatalogRef, 
create_tableRef); break;
-       case DDL_CREATE_VIEW:   q = newStmt(mb, sqlcatalogRef, create_viewRef); 
break;
-       case DDL_DROP_TABLE:    q = newStmt(mb, sqlcatalogRef, drop_tableRef); 
break;
-       case DDL_DROP_VIEW:     q = newStmt(mb, sqlcatalogRef, drop_viewRef); 
break;
-       case DDL_DROP_CONSTRAINT:       q = newStmt(mb, sqlcatalogRef, 
drop_constraintRef); break;
-       case DDL_ALTER_TABLE:   q = newStmt(mb, sqlcatalogRef, alter_tableRef); 
break;
-       case DDL_CREATE_TYPE:   q = newStmt(mb, sqlcatalogRef, create_typeRef); 
break;
-       case DDL_DROP_TYPE:     q = newStmt(mb, sqlcatalogRef, drop_typeRef); 
break;
-       case DDL_GRANT_ROLES:   q = newStmt(mb, sqlcatalogRef, grant_rolesRef); 
break;
-       case DDL_REVOKE_ROLES:  q = newStmt(mb, sqlcatalogRef, 
revoke_rolesRef); break;
-       case DDL_GRANT:         q = newStmt(mb, sqlcatalogRef, grantRef); break;
-       case DDL_REVOKE:        q = newStmt(mb, sqlcatalogRef, revokeRef); 
break;
-       case DDL_GRANT_FUNC:    q = newStmt(mb, sqlcatalogRef, 
grant_functionRef); break;
-       case DDL_REVOKE_FUNC:   q = newStmt(mb, sqlcatalogRef, 
revoke_functionRef); break;
-       case DDL_CREATE_USER:   q = newStmt(mb, sqlcatalogRef, create_userRef); 
break;
-       case DDL_DROP_USER:             q = newStmt(mb, sqlcatalogRef, 
drop_userRef); break;
-       case DDL_ALTER_USER:    q = newStmt(mb, sqlcatalogRef, alter_userRef); 
break;
-       case DDL_RENAME_USER:   q = newStmt(mb, sqlcatalogRef, rename_userRef); 
break;
-       case DDL_CREATE_ROLE:   q = newStmt(mb, sqlcatalogRef, create_roleRef); 
break;
-       case DDL_DROP_ROLE:             q = newStmt(mb, sqlcatalogRef, 
drop_roleRef); break;
-       case DDL_DROP_INDEX:    q = newStmt(mb, sqlcatalogRef, drop_indexRef); 
break;
-       case DDL_DROP_FUNCTION: q = newStmt(mb, sqlcatalogRef, 
drop_functionRef); break;
-       case DDL_CREATE_FUNCTION:       q = newStmt(mb, sqlcatalogRef, 
create_functionRef); break;
-       case DDL_CREATE_TRIGGER:        q = newStmt(mb, sqlcatalogRef, 
create_triggerRef); break;
-       case DDL_DROP_TRIGGER:  q = newStmt(mb, sqlcatalogRef, 
drop_triggerRef); break;
-       case DDL_ALTER_TABLE_ADD_TABLE: q = newStmt(mb, sqlcatalogRef, 
alter_add_tableRef); break;
-       case DDL_ALTER_TABLE_DEL_TABLE: q = newStmt(mb, sqlcatalogRef, 
alter_del_tableRef); break;
-       case DDL_ALTER_TABLE_SET_ACCESS:q = newStmt(mb, sqlcatalogRef, 
alter_set_tableRef); break;
-       case DDL_ALTER_TABLE_ADD_RANGE_PARTITION:       q = newStmt(mb, 
sqlcatalogRef, alter_add_range_partitionRef); break;
-       case DDL_ALTER_TABLE_ADD_LIST_PARTITION:        q = newStmt(mb, 
sqlcatalogRef, alter_add_value_partitionRef); break;
-       case DDL_COMMENT_ON:    q = newStmt(mb, sqlcatalogRef, comment_onRef); 
break;
-       case DDL_RENAME_SCHEMA: q = newStmt(mb, sqlcatalogRef, 
rename_schemaRef); break;
-       case DDL_RENAME_TABLE: q = newStmt(mb, sqlcatalogRef, rename_tableRef); 
break;
-       case DDL_RENAME_COLUMN: q = newStmt(mb, sqlcatalogRef, 
rename_columnRef); break;
+       case ddl_create_seq:    q = newStmt(mb, sqlcatalogRef, create_seqRef); 
break;
+       case ddl_alter_seq:     q = newStmt(mb, sqlcatalogRef, alter_seqRef); 
break;
+       case ddl_drop_seq:      q = newStmt(mb, sqlcatalogRef, drop_seqRef); 
break;
+       case ddl_create_schema: q = newStmt(mb, sqlcatalogRef, 
create_schemaRef); break;
+       case ddl_drop_schema:   q = newStmt(mb, sqlcatalogRef, drop_schemaRef); 
break;
+       case ddl_create_table:  q = newStmt(mb, sqlcatalogRef, 
create_tableRef); break;
+       case ddl_create_view:   q = newStmt(mb, sqlcatalogRef, create_viewRef); 
break;
+       case ddl_drop_table:    q = newStmt(mb, sqlcatalogRef, drop_tableRef); 
break;
+       case ddl_drop_view:     q = newStmt(mb, sqlcatalogRef, drop_viewRef); 
break;
+       case ddl_drop_constraint:       q = newStmt(mb, sqlcatalogRef, 
drop_constraintRef); break;
+       case ddl_alter_table:   q = newStmt(mb, sqlcatalogRef, alter_tableRef); 
break;
+       case ddl_create_type:   q = newStmt(mb, sqlcatalogRef, create_typeRef); 
break;
+       case ddl_drop_type:     q = newStmt(mb, sqlcatalogRef, drop_typeRef); 
break;
+       case ddl_grant_roles:   q = newStmt(mb, sqlcatalogRef, grant_rolesRef); 
break;
+       case ddl_revoke_roles:  q = newStmt(mb, sqlcatalogRef, 
revoke_rolesRef); break;
+       case ddl_grant:         q = newStmt(mb, sqlcatalogRef, grantRef); break;
+       case ddl_revoke:        q = newStmt(mb, sqlcatalogRef, revokeRef); 
break;
+       case ddl_grant_func:    q = newStmt(mb, sqlcatalogRef, 
grant_functionRef); break;
+       case ddl_revoke_func:   q = newStmt(mb, sqlcatalogRef, 
revoke_functionRef); break;
+       case ddl_create_user:   q = newStmt(mb, sqlcatalogRef, create_userRef); 
break;
+       case ddl_drop_user:             q = newStmt(mb, sqlcatalogRef, 
drop_userRef); break;
+       case ddl_alter_user:    q = newStmt(mb, sqlcatalogRef, alter_userRef); 
break;
+       case ddl_rename_user:   q = newStmt(mb, sqlcatalogRef, rename_userRef); 
break;
+       case ddl_create_role:   q = newStmt(mb, sqlcatalogRef, create_roleRef); 
break;
+       case ddl_drop_role:             q = newStmt(mb, sqlcatalogRef, 
drop_roleRef); break;
+       case ddl_drop_index:    q = newStmt(mb, sqlcatalogRef, drop_indexRef); 
break;
+       case ddl_drop_function: q = newStmt(mb, sqlcatalogRef, 
drop_functionRef); break;
+       case ddl_create_function:       q = newStmt(mb, sqlcatalogRef, 
create_functionRef); break;
+       case ddl_create_trigger:        q = newStmt(mb, sqlcatalogRef, 
create_triggerRef); break;
+       case ddl_drop_trigger:  q = newStmt(mb, sqlcatalogRef, 
drop_triggerRef); break;
+       case ddl_alter_table_add_table: q = newStmt(mb, sqlcatalogRef, 
alter_add_tableRef); break;
+       case ddl_alter_table_del_table: q = newStmt(mb, sqlcatalogRef, 
alter_del_tableRef); break;
+       case ddl_alter_table_set_access:q = newStmt(mb, sqlcatalogRef, 
alter_set_tableRef); break;
+       case ddl_alter_table_add_range_partition:       q = newStmt(mb, 
sqlcatalogRef, alter_add_range_partitionRef); break;
+       case ddl_alter_table_add_list_partition:        q = newStmt(mb, 
sqlcatalogRef, alter_add_value_partitionRef); break;
+       case ddl_comment_on:    q = newStmt(mb, sqlcatalogRef, comment_onRef); 
break;
+       case ddl_rename_schema: q = newStmt(mb, sqlcatalogRef, 
rename_schemaRef); break;
+       case ddl_rename_table: q = newStmt(mb, sqlcatalogRef, rename_tableRef); 
break;
+       case ddl_rename_column: q = newStmt(mb, sqlcatalogRef, 
rename_columnRef); break;
        default:
                showException(GDKout, SQL, "sql", "catalog operation 
unknown\n");
        }
diff --git a/sql/include/sql_catalog.h b/sql/include/sql_catalog.h
--- a/sql/include/sql_catalog.h
+++ b/sql/include/sql_catalog.h
@@ -62,9 +62,6 @@
 #define DEPENDENCY_CHECK_ERROR 3
 #define DEPENDENCY_CHECK_OK 0
 
-#define NO_TRIGGER 0
-#define IS_TRIGGER 1
-
 #define ROLE_PUBLIC   1
 #define ROLE_SYSADMIN 2
 #define USER_MONETDB  3
@@ -189,8 +186,7 @@ typedef enum commit_action_t {
        CA_COMMIT,      /* commit rows, only for persistent tables */
        CA_DELETE,      /* delete rows */
        CA_PRESERVE,    /* preserve rows */
-       CA_DROP,        /* drop table */
-       CA_ABORT        /* abort changes, internal only */
+       CA_DROP         /* drop table */
 } ca_t;
 
 typedef int sqlid;
@@ -487,13 +483,6 @@ typedef struct sql_sequence {
        sql_schema *s;
 } sql_sequence;
 
-/* histogram types */
-typedef enum sql_histype {
-       X_EXACT,
-       X_EQUI_WIDTH,
-       X_EQUI_HEIGHT
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to