Changeset: c5edcb197f97 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c5edcb197f97
Modified Files:
sql/include/sql_catalog.h
sql/server/sql_mvc.c
sql/storage/store.c
Branch: sciql
Log Message:
a very small second step (after parser) towards sciql implementation: extended
the sql catalog with two new tables to store additional information for arrays.
increated the catelog version nr.
diffs (84 lines):
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
@@ -356,7 +356,8 @@
tt_view = 1, /* view */
tt_generated = 2, /* generated (functions can be sql or c-code) */
tt_merge_table = 3, /* multiple tables form one table */
- tt_stream = 4 /* stream */
+ tt_stream = 4, /* stream */
+ tt_array = 5 /* arrays */
} table_types;
#define isTable(x) (x->type==tt_table)
@@ -364,6 +365,7 @@
#define isGenerated(x) (x->type==tt_generated)
#define isMergeTable(x) (x->type==tt_merge_table)
#define isStream(x) (x->type==tt_stream)
+#define isArray(x) (x->type==tt_array)
typedef struct sql_table {
sql_base base;
diff --git a/sql/server/sql_mvc.c b/sql/server/sql_mvc.c
--- a/sql/server/sql_mvc.c
+++ b/sql/server/sql_mvc.c
@@ -95,6 +95,22 @@
mvc_create_column_(m, t, "number", "int", 32);
mvc_create_column_(m, t, "storage_type", "int", 32);
+ t = mvc_create_view(m, s, "arrays", SQL_PERSIST, "SELECT * FROM
(SELECT p.*, 0 AS \"temporary\" FROM \"sys\".\"_arrays\" AS p UNION ALL SELECT
t.*, 1 AS \"temporary\" FROM \"tmp\".\"_arrays\" AS t) AS arrays;", 1);
+ mvc_create_column_(m, t, "table_id", "int", 32);
+ mvc_create_column_(m, t, "ndims", "int", 32);
+ mvc_create_column_(m, t, "fixed", "boolean", 1);
+
+ t = mvc_create_view(m, s, "dimensions", SQL_PERSIST, "SELECT *
FROM (SELECT p.* FROM \"sys\".\"_dimensions\" AS p UNION ALL SELECT t.* FROM
\"tmp\".\"_dimensions\" AS t) AS dimensions;", 1);
+ mvc_create_column_(m, t, "column_id", "int", 32);
+ mvc_create_column_(m, t, "dim_nr", "int", 32);
+ mvc_create_column_(m, t, "start", "varchar", 2048);
+ mvc_create_column_(m, t, "step", "varchar", 2048);
+ mvc_create_column_(m, t, "stop", "varchar", 2048);
+ mvc_create_column_(m, t, "curr_start", "varchar", 2048);
+ mvc_create_column_(m, t, "curr_step", "varchar", 2048);
+ mvc_create_column_(m, t, "curr_stop", "varchar", 2048);
+ mvc_create_column_(m, t, "fixed", "boolean", 1);
+
if (!catalog_version) {
sql_create_env(m, s);
sql_create_privileges(m, s);
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -33,8 +33,8 @@
#include <restrict/restrict_table.h>
#include <restrict/restrict_logger.h>
-/* version 05.11.00 of catalog */
-#define CATALOG_VERSION 51100
+/* version 05.12.00 of catalog */
+#define CATALOG_VERSION 51200
int catalog_version = 0;
static MT_Lock bs_lock;
@@ -1425,6 +1425,22 @@
bootstrap_create_column(tr, t, "number", "int", 32);
bootstrap_create_column(tr, t, "storage", "varchar", 2048);
+ t = bootstrap_create_table(tr, s, "_arrays");
+ bootstrap_create_column(tr, t, "table_id", "int", 32);
+ bootstrap_create_column(tr, t, "ndims", "int", 32);
+ bootstrap_create_column(tr, t, "fixed", "boolean", 1);
+
+ t = bootstrap_create_table(tr, s, "_dimensions");
+ bootstrap_create_column(tr, t, "column_id", "int", 32);
+ bootstrap_create_column(tr, t, "start", "varchar", 2048);
+ bootstrap_create_column(tr, t, "step", "varchar", 2048);
+ bootstrap_create_column(tr, t, "stop", "varchar", 2048);
+ /* mbb: minimal bounding box */
+ bootstrap_create_column(tr, t, "mbb_start", "varchar", 2048);
+ bootstrap_create_column(tr, t, "mbb_step", "varchar", 2048);
+ bootstrap_create_column(tr, t, "mbb_stop", "varchar", 2048);
+ bootstrap_create_column(tr, t, "fixed", "boolean", 1);
+
t = bootstrap_create_table(tr, s, "keys");
bootstrap_create_column(tr, t, "id", "int", 32);
bootstrap_create_column(tr, t, "table_id", "int", 32);
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list