Changeset: c1ec55ca4357 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/c1ec55ca4357
Modified Files:
        sql/server/sql_privileges.c
        sql/storage/store.c
Branch: Jul2021
Log Message:

Add dependency on the schema owner and the user grantor


diffs (26 lines):

diff --git a/sql/server/sql_privileges.c b/sql/server/sql_privileges.c
--- a/sql/server/sql_privileges.c
+++ b/sql/server/sql_privileges.c
@@ -790,7 +790,9 @@ sql_create_user(mvc *sql, char *user, ch
        if (!(s = find_sql_schema(sql->session->tr, schema)))
                throw(SQL,"sql.create_user", SQLSTATE(3F000) "CREATE USER: no 
such schema '%s'", schema);
        schema_id = s->base.id;
-       if (!isNew(s) && sql_trans_add_dependency(sql->session->tr, s->base.id, 
ddl) != LOG_OK)
+       if (!isNew(s) && sql_trans_add_dependency(sql->session->tr, schema_id, 
ddl) != LOG_OK)
+               throw(SQL, "sql.create_user", SQLSTATE(HY013) MAL_MALLOC_FAIL);
+       if (sql_trans_add_dependency(sql->session->tr, sql->user_id, ddl) != 
LOG_OK)
                throw(SQL, "sql.create_user", SQLSTATE(HY013) MAL_MALLOC_FAIL);
 
        if ((err = backend_create_user(sql, user, passwd, enc, fullname, 
schema_id, schema_path, sql->user_id)) != NULL)
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -4796,6 +4796,8 @@ sql_trans_create_schema(sql_trans *tr, c
                return res;
        if ((res = sql_trans_add_dependency(tr, s->auth_id, ddl)))
                return res;
+       if ((res = sql_trans_add_dependency(tr, s->owner, ddl)))
+               return res;
        return res;
 }
 
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to