Changeset: 9abcee740629 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9abcee740629
Added Files:
geom/sql/71_geom.sql
geom/sql/71_geom_import.sql
sql/backends/monet5/UDF/udf/89_udf.sql
sql/backends/monet5/UDF/udf/89_udf.sql.h
sql/backends/monet5/UDF/udf/89_udf_hge.sql
sql/backends/monet5/UDF/udf/89_udf_hge.sql.h
sql/backends/monet5/generator/90_generator.sql
sql/backends/monet5/generator/90_generator.sql.h
sql/backends/monet5/generator/90_generator_hge.sql
sql/backends/monet5/generator/90_generator_hge.sql.h
sql/backends/monet5/vaults/bam/85_bam.sql
sql/backends/monet5/vaults/fits/73_fits.mal
sql/backends/monet5/vaults/fits/73_fits.sql
sql/backends/monet5/vaults/lidar/75_lidar.sql
sql/backends/monet5/vaults/netcdf/74_netcdf.sql
sql/backends/monet5/vaults/shp/76_shp.mal
sql/backends/monet5/vaults/shp/76_shp.sql
sql/scripts/71_statistics.sql
sql/scripts/71_statistics.sql.h
Removed Files:
sql/backends/monet5/vaults/fits/72_fits.mal
sql/backends/monet5/vaults/shp/75_shp.mal
sql/scripts/42_geom.sql
sql/scripts/42_geom.sql.h
sql/scripts/43_geom_import.sql
sql/scripts/43_geom_import.sql.h
sql/scripts/72_fits.sql
sql/scripts/72_fits.sql.h
sql/scripts/74_netcdf.sql
sql/scripts/74_netcdf.sql.h
sql/scripts/75_lidar.sql
sql/scripts/75_lidar.sql.h
sql/scripts/76_shp.sql
sql/scripts/76_shp.sql.h
sql/scripts/80_statistics.sql
sql/scripts/80_statistics.sql.h
sql/scripts/81_udf.sql
sql/scripts/81_udf.sql.h
sql/scripts/81_udf_hge.sql
sql/scripts/81_udf_hge.sql.h
sql/scripts/85_bam.sql
sql/scripts/85_bam.sql.h
sql/scripts/90_generator.sql
sql/scripts/90_generator.sql.h
sql/scripts/90_generator_hge.sql
sql/scripts/90_generator_hge.sql.h
Modified Files:
geom/sql/Makefile.ag
sql/backends/monet5/UDF/udf/Makefile.ag
sql/backends/monet5/generator/Makefile.ag
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/vaults/bam/Makefile.ag
sql/backends/monet5/vaults/fits/Makefile.ag
sql/backends/monet5/vaults/lidar/Makefile.ag
sql/backends/monet5/vaults/netcdf/Makefile.ag
sql/backends/monet5/vaults/shp/Makefile.ag
sql/scripts/Makefile.ag
sql/scripts/sql_scripts.c
sql/scripts/sql_scripts.h
Branch: translate-scripts
Log Message:
Move extension SQL scripts back to original directories and load them in a
installation directory (i.e. createdb)
diffs (truncated from 586 to 300 lines):
diff --git a/sql/scripts/42_geom.sql b/geom/sql/71_geom.sql
rename from sql/scripts/42_geom.sql
rename to geom/sql/71_geom.sql
diff --git a/sql/scripts/43_geom_import.sql b/geom/sql/71_geom_import.sql
rename from sql/scripts/43_geom_import.sql
rename to geom/sql/71_geom_import.sql
diff --git a/geom/sql/Makefile.ag b/geom/sql/Makefile.ag
--- a/geom/sql/Makefile.ag
+++ b/geom/sql/Makefile.ag
@@ -4,4 +4,10 @@
#
# Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
+headers_sql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 71_geom.sql 71_geom_import.sql
+}
+
EXTRA_DIST_DIR = Tests conformance functions pg_regression
diff --git a/sql/scripts/81_udf.sql b/sql/backends/monet5/UDF/udf/89_udf.sql
rename from sql/scripts/81_udf.sql
rename to sql/backends/monet5/UDF/udf/89_udf.sql
diff --git a/sql/backends/monet5/UDF/udf/89_udf.sql.h
b/sql/backends/monet5/UDF/udf/89_udf.sql.h
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/UDF/udf/89_udf.sql.h
@@ -0,0 +1,10 @@
+/*
+* This Source Code Form is subject to the terms of the Mozilla Public
+* License, v. 2.0. If a copy of the MPL was not distributed with this
+* file, You can obtain one at http://mozilla.org/MPL/2.0/.
+*
+* Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
+*/
+
+// This file was generated automatically with sql2h.py. Do not edit this file
directly.
+{ "89_udf", "\n\n\ncreate function reverse(src string)\nreturns string
external name udf.reverse;\n\n\ncreate function fuse(one tinyint, two
tinyint)\nreturns smallint external name udf.fuse;\n\ncreate function fuse(one
smallint, two smallint)\nreturns integer external name udf.fuse;\n\ncreate
function fuse(one integer, two integer)\nreturns bigint external name
udf.fuse;" },
diff --git a/sql/scripts/81_udf_hge.sql
b/sql/backends/monet5/UDF/udf/89_udf_hge.sql
rename from sql/scripts/81_udf_hge.sql
rename to sql/backends/monet5/UDF/udf/89_udf_hge.sql
diff --git a/sql/backends/monet5/UDF/udf/89_udf_hge.sql.h
b/sql/backends/monet5/UDF/udf/89_udf_hge.sql.h
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/UDF/udf/89_udf_hge.sql.h
@@ -0,0 +1,10 @@
+/*
+* This Source Code Form is subject to the terms of the Mozilla Public
+* License, v. 2.0. If a copy of the MPL was not distributed with this
+* file, You can obtain one at http://mozilla.org/MPL/2.0/.
+*
+* Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
+*/
+
+// This file was generated automatically with sql2h.py. Do not edit this file
directly.
+{ "89_udf_hge", "\n\n\ncreate function fuse(one bigint, two bigint)\nreturns
hugeint external name udf.fuse;" },
diff --git a/sql/backends/monet5/UDF/udf/Makefile.ag
b/sql/backends/monet5/UDF/udf/Makefile.ag
--- a/sql/backends/monet5/UDF/udf/Makefile.ag
+++ b/sql/backends/monet5/UDF/udf/Makefile.ag
@@ -21,11 +21,18 @@ INCLUDES = ../.. \
lib__udf = {
MODULE
DIR = libdir/monetdb5
- SOURCES = udf.c udf.h udf_impl.h
+ SOURCES = udf.c udf.h udf_impl.h 89_udf.sql.h
LIBS = WIN32?../../../../../monetdb5/tools/libmonetdb5 \
WIN32?../../../../../gdk/libbat
}
+lib__udf_hge = {
+ COND = HAVE_HGE
+ MODULE
+ DIR = libdir/monetdb5
+ SOURCES = 89_udf_hge.sql.h
+}
+
headers_mal = {
HEADERS = mal
DIR = libdir/monetdb5
diff --git a/sql/scripts/90_generator.sql
b/sql/backends/monet5/generator/90_generator.sql
rename from sql/scripts/90_generator.sql
rename to sql/backends/monet5/generator/90_generator.sql
diff --git a/sql/scripts/90_generator.sql.h
b/sql/backends/monet5/generator/90_generator.sql.h
rename from sql/scripts/90_generator.sql.h
rename to sql/backends/monet5/generator/90_generator.sql.h
diff --git a/sql/scripts/90_generator_hge.sql
b/sql/backends/monet5/generator/90_generator_hge.sql
rename from sql/scripts/90_generator_hge.sql
rename to sql/backends/monet5/generator/90_generator_hge.sql
diff --git a/sql/scripts/90_generator_hge.sql.h
b/sql/backends/monet5/generator/90_generator_hge.sql.h
rename from sql/scripts/90_generator_hge.sql.h
rename to sql/backends/monet5/generator/90_generator_hge.sql.h
diff --git a/sql/backends/monet5/generator/Makefile.ag
b/sql/backends/monet5/generator/Makefile.ag
--- a/sql/backends/monet5/generator/Makefile.ag
+++ b/sql/backends/monet5/generator/Makefile.ag
@@ -22,9 +22,16 @@ INCLUDES = ../../../include \
lib__generator = {
MODULE
DIR = libdir/monetdb5
- SOURCES = generator.c generator.h
+ SOURCES = generator.c generator.h 90_generator.sql.h
LIBS = WIN32?../../../../monetdb5/tools/libmonetdb5 \
WIN32?../../../../gdk/libbat
}
+lib__generator_hge = {
+ COND = HAVE_HGE
+ MODULE
+ DIR = libdir/monetdb5
+ SOURCES = 90_generator_hge.sql.h
+}
+
EXTRA_DIST_DIR = Tests
diff --git a/sql/backends/monet5/sql_scenario.c
b/sql/backends/monet5/sql_scenario.c
--- a/sql/backends/monet5/sql_scenario.c
+++ b/sql/backends/monet5/sql_scenario.c
@@ -467,6 +467,8 @@ SQLinit(Client c)
SQLnewcatalog = 1;
}
if (SQLnewcatalog > 0) {
+ char path[FILENAME_MAX];
+ str fullname;
char *commit = "commit;\n";
SQLnewcatalog = 0;
@@ -474,7 +476,68 @@ SQLinit(Client c)
fprintf(stdout, "# SQL catalog created, loading sql scripts
once\n");
- if ((msg = install_sql_scripts(c)) != MAL_SUCCEED) {
+ if ((msg = install_sql_scripts1(c)) != MAL_SUCCEED) {
+ MT_lock_unset(&sql_contextLock);
+ return msg;
+ }
+
+ //load custom scripts here
+ snprintf(path, FILENAME_MAX, "createdb");
+ slash_2_dir_sep(path);
+ fullname = MSP_locate_sqlscript(path, 1);
+ if (fullname) {
+ str filename = fullname;
+ str p, n, newmsg= MAL_SUCCEED;
+ fprintf(stdout, "# SQL catalog created, loading sql
scripts once\n");
+ do {
+ stream *fd = NULL;
+
+ p = strchr(filename, PATH_SEP);
+ if (p)
+ *p = '\0';
+ if ((n = strrchr(filename, DIR_SEP)) == NULL) {
+ n = filename;
+ } else {
+ n++;
+ }
+ fprintf(stdout, "# loading sql script: %s\n",
n);
+ fd = open_rastream(filename);
+ if (p)
+ filename = p + 1;
+
+ if (fd) {
+ size_t sz;
+ sz = getFileSize(fd);
+ if (sz > (size_t) 1 << 29) {
+ close_stream(fd);
+ newmsg = createException(MAL,
"createdb", SQLSTATE(42000) "File %s too large to process", filename);
+ } else {
+ bstream *bfd = NULL;
+
+ if((bfd = bstream_create(fd, sz
== 0 ? (size_t) (128 * BLOCK) : sz)) == NULL) {
+ close_stream(fd);
+ newmsg =
createException(MAL, "createdb", SQLSTATE(HY001) MAL_MALLOC_FAIL);
+ } else {
+ if (bstream_next(bfd)
>= 0)
+ newmsg =
SQLstatementIntern(c, &bfd->buf, "sql.init", TRUE, FALSE, NULL);
+ bstream_destroy(bfd);
+ }
+ }
+ if (m->sa)
+ sa_destroy(m->sa);
+ m->sa = NULL;
+ m->sqs = NULL;
+ if (newmsg){
+ fprintf(stderr,"%s",newmsg);
+ freeException(newmsg);
+ }
+ }
+ } while (p);
+ GDKfree(fullname);
+ } else
+ fprintf(stderr, "!could not read createdb.sql\n");
+
+ if ((msg = install_sql_scripts2(c)) != MAL_SUCCEED) {
MT_lock_unset(&sql_contextLock);
return msg;
}
diff --git a/sql/scripts/85_bam.sql b/sql/backends/monet5/vaults/bam/85_bam.sql
rename from sql/scripts/85_bam.sql
rename to sql/backends/monet5/vaults/bam/85_bam.sql
diff --git a/sql/backends/monet5/vaults/bam/Makefile.ag
b/sql/backends/monet5/vaults/bam/Makefile.ag
--- a/sql/backends/monet5/vaults/bam/Makefile.ag
+++ b/sql/backends/monet5/vaults/bam/Makefile.ag
@@ -43,6 +43,12 @@ headers_mal = {
SOURCES = bam.mal
}
+headers_sql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 85_bam.sql
+}
+
headers_autoload = {
HEADERS = mal
DIR = libdir/monetdb5/autoload
diff --git a/sql/backends/monet5/vaults/fits/72_fits.mal
b/sql/backends/monet5/vaults/fits/73_fits.mal
rename from sql/backends/monet5/vaults/fits/72_fits.mal
rename to sql/backends/monet5/vaults/fits/73_fits.mal
diff --git a/sql/scripts/72_fits.sql
b/sql/backends/monet5/vaults/fits/73_fits.sql
rename from sql/scripts/72_fits.sql
rename to sql/backends/monet5/vaults/fits/73_fits.sql
diff --git a/sql/backends/monet5/vaults/fits/Makefile.ag
b/sql/backends/monet5/vaults/fits/Makefile.ag
--- a/sql/backends/monet5/vaults/fits/Makefile.ag
+++ b/sql/backends/monet5/vaults/fits/Makefile.ag
@@ -37,8 +37,14 @@ headers_fitsmal = {
SOURCES = fits.mal
}
+headers_fitssql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 73_fits.sql
+}
+
headers_fitsautoload = {
HEADERS = mal
DIR = libdir/monetdb5/autoload
- SOURCES = 72_fits.mal
+ SOURCES = 73_fits.mal
}
diff --git a/sql/scripts/75_lidar.sql
b/sql/backends/monet5/vaults/lidar/75_lidar.sql
rename from sql/scripts/75_lidar.sql
rename to sql/backends/monet5/vaults/lidar/75_lidar.sql
diff --git a/sql/backends/monet5/vaults/lidar/Makefile.ag
b/sql/backends/monet5/vaults/lidar/Makefile.ag
--- a/sql/backends/monet5/vaults/lidar/Makefile.ag
+++ b/sql/backends/monet5/vaults/lidar/Makefile.ag
@@ -37,6 +37,12 @@ headers_lidarmal = {
SOURCES = lidar.mal
}
+headers_lidarsql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 75_lidar.sql
+}
+
headers_lidarautoload = {
HEADERS = mal
DIR = libdir/monetdb5/autoload
diff --git a/sql/scripts/74_netcdf.sql
b/sql/backends/monet5/vaults/netcdf/74_netcdf.sql
rename from sql/scripts/74_netcdf.sql
rename to sql/backends/monet5/vaults/netcdf/74_netcdf.sql
diff --git a/sql/backends/monet5/vaults/netcdf/Makefile.ag
b/sql/backends/monet5/vaults/netcdf/Makefile.ag
--- a/sql/backends/monet5/vaults/netcdf/Makefile.ag
+++ b/sql/backends/monet5/vaults/netcdf/Makefile.ag
@@ -37,6 +37,12 @@ headers_netcdfmal = {
SOURCES = netcdf.mal
}
+headers_netcdfsql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 74_netcdf.sql
+}
+
headers_netcdfautoload = {
HEADERS = mal
DIR = libdir/monetdb5/autoload
diff --git a/sql/backends/monet5/vaults/shp/75_shp.mal
b/sql/backends/monet5/vaults/shp/76_shp.mal
rename from sql/backends/monet5/vaults/shp/75_shp.mal
rename to sql/backends/monet5/vaults/shp/76_shp.mal
diff --git a/sql/scripts/76_shp.sql b/sql/backends/monet5/vaults/shp/76_shp.sql
rename from sql/scripts/76_shp.sql
rename to sql/backends/monet5/vaults/shp/76_shp.sql
diff --git a/sql/backends/monet5/vaults/shp/Makefile.ag
b/sql/backends/monet5/vaults/shp/Makefile.ag
--- a/sql/backends/monet5/vaults/shp/Makefile.ag
+++ b/sql/backends/monet5/vaults/shp/Makefile.ag
@@ -39,8 +39,14 @@ headers_shpmal = {
SOURCES = shp.mal
}
+headers_shpsql = {
+ HEADERS = sql
+ DIR = libdir/monetdb5/createdb
+ SOURCES = 76_shp.sql
+}
+
headers_shpautoload = {
HEADERS = mal
DIR = libdir/monetdb5/autoload
- SOURCES = 75_shp.mal
+ SOURCES = 76_shp.mal
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list