Changeset: e4ea71ea69d5 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB/rev/e4ea71ea69d5 Modified Files: sql/backends/monet5/sql.c Branch: Jan2022 Log Message:
Disable heap vaccum on temporary tables diffs (46 lines): diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -4961,6 +4961,8 @@ SQLstr_column_vacuum(Client cntxt, MalBl if (!isTable(t)) throw(SQL, "sql.str_column_vacuum", SQLSTATE(42000) "%s '%s' is not persistent", TABLE_TYPE_DESCRIPTION(t->type, t->properties), t->base.name); + if (isTempTable(t)) + throw(SQL, "sql.str_column_vacuum", SQLSTATE(42000) "Cannot vaccum column from temporary table"); if ((c = mvc_bind_column(m, t, cname)) == NULL) throw(SQL, "sql.str_column_vacuum", SQLSTATE(42S22) "Column not found %s.%s",sname,tname); if (c->storage_type) @@ -5096,6 +5098,8 @@ SQLstr_column_auto_vacuum(Client cntxt, if (!isTable(t)) throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "%s '%s' is not persistent", TABLE_TYPE_DESCRIPTION(t->type, t->properties), t->base.name); + if (isTempTable(t)) + throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "Cannot vaccum column from temporary table"); if ((c = mvc_bind_column(m, t, cname)) == NULL) throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42S22) "Column not found %s.%s",sname,tname); if (c->storage_type) @@ -5137,18 +5141,20 @@ SQLstr_column_stop_vacuum(Client cntxt, sql_column *c = NULL; if (strNil(sname)) - throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "Schema name cannot be NULL"); + throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42000) "Schema name cannot be NULL"); if (strNil(tname)) - throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "Table name cannot be NULL"); + throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42000) "Table name cannot be NULL"); if (strNil(cname)) - throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "Column name cannot be NULL"); + throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42000) "Column name cannot be NULL"); if ((s = mvc_bind_schema(m, sname)) == NULL) throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(3F000) "Invalid or missing schema %s",sname); if ((t = mvc_bind_table(m, s, tname)) == NULL) throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42S02) "Invalid or missing table %s.%s",sname,tname); if (!isTable(t)) - throw(SQL, "sql.str_column_auto_vacuum", SQLSTATE(42000) "%s '%s' is not persistent", + throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42000) "%s '%s' is not persistent", TABLE_TYPE_DESCRIPTION(t->type, t->properties), t->base.name); + if (isTempTable(t)) + throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42000) "Cannot vaccum column from temporary table"); if ((c = mvc_bind_column(m, t, cname)) == NULL) throw(SQL, "sql.str_column_stop_vacuum", SQLSTATE(42S22) "Column not found %s.%s",sname,tname); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list