Changeset: 360a8b7d425d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/360a8b7d425d
Branch: default
Log Message:

Merge with Jun2023 branch.


diffs (truncated from 5080 to 300 lines):

diff --git a/clients/ChangeLog.Jun2023 b/clients/ChangeLog.Jun2023
--- a/clients/ChangeLog.Jun2023
+++ b/clients/ChangeLog.Jun2023
@@ -1,3 +1,10 @@
 # ChangeLog file for clients
 # This file is updated with Maddlog
 
+* Tue Jun 20 2023 Sjoerd Mullender <sjo...@acm.org>
+- The COPY INTO from file ON CLIENT was extended to also look for a
+  relative path name relative to the file from which the query was read.
+  This is only possible if the name of the query file is known, so when
+  it is specified on the command line or read using the interactive
+  \< command.
+
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -78,6 +78,7 @@ static char *encoding;
 #endif
 static bool errseen = false;
 static bool allow_remote = false;
+static const char *curfile = NULL;
 
 #define setPrompt() snprintf(promptbuf, sizeof(promptbuf), "%.*s>", (int) 
sizeof(promptbuf) - 2, language)
 #define debugMode() (strncmp(promptbuf, "mdb", 3) == 0)
@@ -2744,8 +2745,14 @@ doFile(Mapi mid, stream *fp, bool useins
                                                if (s)
                                                        close_stream(s);
                                                mnstr_printf(stderr_stream, 
"Cannot open %s: %s\n", line, mnstr_peek_error(NULL));
-                                       } else
+                                       } else {
+                                               const char *oldfile = curfile;
+                                               char *newfile = strdup(line);
+                                               curfile = newfile;
                                                doFile(mid, s, 0, 0, 0);
+                                               curfile = oldfile;
+                                               free(newfile);
+                                       }
                                        continue;
                                }
                                case '>':
@@ -3033,8 +3040,25 @@ getfile(void *data, const char *filename
                        }
 #endif
                }
-               if (f == NULL)
-                       return (char*) mnstr_peek_error(NULL);
+               if (f == NULL) {
+                       if (curfile != NULL) {
+                               char *p = strrchr(curfile, '/');
+#ifdef _MSC_VER
+                               char *q = strrchr(curfile, '\\');
+                               if (p == NULL || (q != NULL && q > p))
+                                       p = q;
+#endif
+                               if (p != NULL) {
+                                       size_t x = (size_t) (p - curfile) + 
strlen(filename) + 2;
+                                       char *b = malloc(x);
+                                       snprintf(b, x, "%.*s/%s", (int) (p - 
curfile), curfile, filename);
+                                       f = binary ? open_rstream(b) : 
open_rastream(b);
+                                       free(b);
+                               }
+                       }
+                       if (f == NULL)
+                               return (char*) mnstr_peek_error(NULL);
+               }
                while (offset > 1) {
                        s = mnstr_readline(f, buf, READSIZE);
                        if (s < 0) {
@@ -3528,7 +3552,7 @@ main(int argc, char **argv)
        c = 0;
        has_fileargs = optind != argc;
 
-       if (dbname == NULL && has_fileargs) {
+       if (dbname == NULL && has_fileargs && strcmp(argv[optind], "-") != 0) {
                s = open_rastream(argv[optind]);
                if (s == NULL || !isfile(getFile(s))) {
                        mnstr_close(s);
@@ -3538,6 +3562,8 @@ main(int argc, char **argv)
                        dbname = strdup(argv[optind]);
                        optind++;
                        has_fileargs = optind != argc;
+               } else {
+                       curfile = argv[optind];
                }
        }
 
@@ -3710,15 +3736,18 @@ main(int argc, char **argv)
                        const char *arg = argv[optind];
 
                        if (s == NULL) {
-                               if (strcmp(arg, "-") == 0)
+                               if (strcmp(arg, "-") == 0) {
                                        s = stdin_rastream();
-                               else
+                               } else {
                                        s = open_rastream(arg);
+                                       curfile = arg;
+                               }
                        }
                        if (s == NULL) {
                                mnstr_printf(stderr_stream, "%s: cannot open: 
%s\n", arg, mnstr_peek_error(NULL));
                                c |= 1;
                                optind++;
+                               curfile = NULL;
                                continue;
                        }
                        // doFile closes 's'.
diff --git a/gdk/gdk_bat.c b/gdk/gdk_bat.c
--- a/gdk/gdk_bat.c
+++ b/gdk/gdk_bat.c
@@ -2718,7 +2718,7 @@ BATassertProps(BAT *b)
                } else {
                        if (b->tvheap != NULL) {
                                /* candidate list with exceptions */
-                               assert(b->batRole == TRANSIENT);
+                               assert(b->batRole == TRANSIENT || b->batRole == 
SYSTRANS);
                                assert(b->tvheap->free <= b->tvheap->size);
                                assert(b->tvheap->free >= sizeof(ccand_t));
                                assert((negoid_cand(b) && ccand_free(b) % 
SIZEOF_OID == 0) || mask_cand(b));
diff --git a/gdk/gdk_batop.c b/gdk/gdk_batop.c
--- a/gdk/gdk_batop.c
+++ b/gdk/gdk_batop.c
@@ -1407,6 +1407,7 @@ BATappend_or_update(BAT *b, BAT *p, cons
                        }
                        mskSetVal(b, updid, Tmskval(&ni, i));
                }
+               bi = bat_iterator_nolock(b);
        } else if (autoincr) {
                if (pos < b->hseqbase ||
                    (!mayappend && pos + ni.count > hseqend)) {
@@ -1435,6 +1436,7 @@ BATappend_or_update(BAT *b, BAT *p, cons
                        bat_iterator_end(&ni);
                        return GDK_FAIL;
                }
+               bi = bat_iterator_nolock(b);
 
                /* we copy all of n, so if there are nils in n we get
                 * nils in b (and else we don't know) */
diff --git a/geom/monetdb5/CMakeLists.txt b/geom/monetdb5/CMakeLists.txt
--- a/geom/monetdb5/CMakeLists.txt
+++ b/geom/monetdb5/CMakeLists.txt
@@ -24,7 +24,6 @@ if(GEOS_FOUND)
     PRIVATE
     geom.c
     geomBulk.c
-    geom_upgrade.c
     ${MONETDB_CURRENT_SQL_SOURCES}
     PUBLIC
     ${geomodule_public_headers})
diff --git a/geom/monetdb5/geom.h b/geom/monetdb5/geom.h
--- a/geom/monetdb5/geom.h
+++ b/geom/monetdb5/geom.h
@@ -244,5 +244,3 @@ geom_export str wkbMBR_bat(bat* outBAT_i
 
 geom_export str wkbCoordinateFromWKB_bat(bat *outBAT_id, bat *inBAT_id, int* 
coordinateIdx);
 geom_export str wkbCoordinateFromMBR_bat(bat *outBAT_id, bat *inBAT_id, int* 
coordinateIdx);
-
-geom_export str geom_sql_upgrade(int);
diff --git a/geom/monetdb5/geom_upgrade.c b/geom/monetdb5/geom_upgrade.c
deleted file mode 100644
--- a/geom/monetdb5/geom_upgrade.c
+++ /dev/null
@@ -1,4396 +0,0 @@
-/*
- * SPDX-License-Identifier: MPL-2.0
- *
- * 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 - 2023 MonetDB B.V.
- */
-
-/*
- * @a Kostis Kyzirakos, Foteini Alvanaki
- */
-
-
-#include "geom.h"
-#include "gdk_logger.h"
-
-str
-geom_sql_upgrade(int olddb)
-{
-       size_t bufsize = 4096000, pos = 0;
-       str buf;
-
-       if ((buf = GDKmalloc(bufsize)) == NULL)
-               return NULL;
-
-       /* drop old functions */
-       if (olddb) {
-               pos += snprintf(buf + pos, bufsize - pos,
-                               "drop function \"mbr\";\n"
-                               "drop function \"mbroverlaps\";\n"
-                               "drop function \"geomfromtext\";\n"
-                               "drop function \"pointfromtext\";\n"
-                               "drop function \"linefromtext\";\n"
-                               "drop function \"polyfromtext\";\n"
-                               "drop function \"mpointfromtext\";\n"
-                               "drop function \"mlinefromtext\";\n"
-                               "drop function \"mpolyfromtext\";\n"
-                               "drop function \"geomcollectionfromtext\";\n"
-                               "drop function \"polygonfromtext\";\n"
-                               "drop function \"astext\";\n"
-                               "drop function \"x\";\n"
-                               "drop function \"y\";\n"
-                               "drop function \"point\";\n"
-                               "drop function \"dimension\";\n"
-                               "drop function \"geometrytypeid\";\n"
-                               "drop function \"srid\";\n"
-                               "drop function \"envelope\";\n"
-                               "drop function \"isempty\";\n"
-                               "drop function \"issimple\";\n"
-                               "drop function \"boundary\";\n"
-                               "drop function \"equals\";\n"
-                               "drop function \"disjoint\";\n"
-                               "drop function \"Intersect\";\n"
-                               "drop function \"touches\";\n"
-                               "drop function \"crosses\";\n"
-                               "drop function \"within\";\n"
-                               "drop all function \"contains\";\n"
-                               "drop function \"overlaps\";\n"
-                               "drop function \"relate\";\n"
-                               "drop function \"area\";\n"
-                               "drop function \"length\";\n"
-                               "drop function \"distance\";\n"
-                               "drop function \"buffer\";\n"
-                               "drop function \"convexhull\";\n"
-                               "drop function \"intersection\";\n"
-                               "drop function \"Union\";\n"
-                               "drop function \"difference\";\n"
-                               "drop function \"symdifference\";\n");
-
-               /* drop old types (but keep the geometry type) **/
-               /** pos += snprintf(buf + pos, bufsize - pos, "DROP TYPE 
Geometry;\n"); **/
-               pos += snprintf(buf + pos, bufsize - pos,
-                               "drop type \"point\";\n"
-                               "drop type \"curve\";\n"
-                               "drop type \"linestring\";\n"
-                               "drop type \"surface\";\n"
-                               "drop type \"polygon\";\n"
-                               "drop type \"multipoint\";\n"
-                               "drop type \"multicurve\";\n"
-                               "drop type \"multilinestring\";\n"
-                               "drop type \"multisurface\";\n"
-                               "drop type \"multipolygon\";\n"
-                               "drop type \"geomcollection\";\n");
-       }
-
-       /* create the new geometry types */
-       pos += snprintf(buf + pos, bufsize - pos,
-                       "CREATE FUNCTION Has_Z(info integer) RETURNS integer 
EXTERNAL NAME geom.\"hasZ\";\n"
-                       "GRANT EXECUTE ON FUNCTION Has_Z(integer) TO PUBLIC;\n"
-                       "CREATE FUNCTION Has_M(info integer) RETURNS integer 
EXTERNAL NAME geom.\"hasM\";\n"
-                       "GRANT EXECUTE ON FUNCTION Has_M(integer) TO PUBLIC;\n"
-                       "CREATE FUNCTION get_type(info integer, format integer) 
RETURNS string EXTERNAL NAME geom.\"getType\";\n"
-                       "GRANT EXECUTE ON FUNCTION get_type(integer, integer) 
TO PUBLIC;\n"
-                       "CREATE TABLE spatial_ref_sys (\n"
-                       "\tsrid INTEGER NOT NULL PRIMARY KEY,\n"
-                       "\tauth_name VARCHAR (256),\n"
-                       "\tauth_srid INTEGER,\n"
-                       "\tsrtext VARCHAR (2048),\n"
-                       "\tproj4text VARCHAR (2048)\n"
-                       ");\n"
-                       "GRANT SELECT ON spatial_ref_sys TO PUBLIC;\n"
-                       "create view sys.geometry_columns as\n"
-                       "\tselect cast(null as varchar(1)) as 
f_table_catalog,\n"
-                       "\t\ts.name as f_table_schema,\n"
-                       "\t\tt.name as f_table_name,\n"
-                       "\t\tc.name as f_geometry_column,\n"
-                       "\t\tcast(has_z(c.type_digits) + has_m(c.type_digits) 
+2 as integer) as coord_dimension,\n"
-                       "\t\tc.type_scale as srid,\n"
-                       "\t\tget_type(c.type_digits, 0) as type\n"
-                       "\tfrom sys.columns c, sys.tables t, sys.schemas s\n"
-                       "\twhere c.table_id = t.id and t.schema_id = s.id\n"
-                       "\t  and c.type in (select sqlname from sys.types where 
systemname in ('wkb', 'wkba'));\n"
-                       "GRANT SELECT ON geometry_columns TO PUBLIC;\n"
-                       "copy 3911 records into spatial_ref_sys from stdin 
using delimiters '|';\n"
-                       
"3819|EPSG|3819|GEOGCS[\"HD1909\",DATUM[\"Hungarian_Datum_1909\",SPHEROID[\"Bessel
 
1841\",6377397.155,299.1528128,AUTHORITY[\"EPSG\",\"7004\"]],TOWGS84[595.48,121.69,515.35,4.115,-2.9383,0.853,-3.408],AUTHORITY[\"EPSG\",\"1024\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"3819\"]]|+proj=longlat
 +ellps=bessel +towgs84=595.48,121.69,515.35,4.115,-2.9383,0.853,-3.408 
+no_defs\n"
-                       
"3821|EPSG|3821|GEOGCS[\"TWD67\",DATUM[\"Taiwan_Datum_1967\",SPHEROID[\"GRS 
1967 
Modified\",6378160,298.25,AUTHORITY[\"EPSG\",\"7050\"]],AUTHORITY[\"EPSG\",\"1025\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"3821\"]]|+proj=longlat
 +ellps=aust_SA +no_defs\n"
-                       
"3824|EPSG|3824|GEOGCS[\"TWD97\",DATUM[\"Taiwan_Datum_1997\",SPHEROID[\"GRS 
1980\",6378137,298.257222101,AUTHORITY[\"EPSG\",\"7019\"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY[\"EPSG\",\"1026\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"3824\"]]|+proj=longlat
 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs\n"
-                       
"3889|EPSG|3889|GEOGCS[\"IGRS\",DATUM[\"Iraqi_Geospatial_Reference_System\",SPHEROID[\"GRS
 
1980\",6378137,298.257222101,AUTHORITY[\"EPSG\",\"7019\"]],TOWGS84[0,0,0,0,0,0,0],AUTHORITY[\"EPSG\",\"1029\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"3889\"]]|+proj=longlat
 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs\n"
-                       "3906|EPSG|3906|GEOGCS[\"MGI 
1901\",DATUM[\"MGI_1901\",SPHEROID[\"Bessel 
1841\",6377397.155,299.1528128,AUTHORITY[\"EPSG\",\"7004\"]],TOWGS84[682,-203,480,0,0,0,0],AUTHORITY[\"EPSG\",\"1031\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"3906\"]]|+proj=longlat
 +ellps=bessel +towgs84=682,-203,480,0,0,0,0 +no_defs\n"
-                       "4001|EPSG|4001|GEOGCS[\"Unknown datum based upon the 
Airy 1830 
ellipsoid\",DATUM[\"Not_specified_based_on_Airy_1830_ellipsoid\",SPHEROID[\"Airy
 
1830\",6377563.396,299.3249646,AUTHORITY[\"EPSG\",\"7001\"]],AUTHORITY[\"EPSG\",\"6001\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4001\"]]|+proj=longlat
 +ellps=airy +no_defs\n"
-                       "4002|EPSG|4002|GEOGCS[\"Unknown datum based upon the 
Airy Modified 1849 
ellipsoid\",DATUM[\"Not_specified_based_on_Airy_Modified_1849_ellipsoid\",SPHEROID[\"Airy
 Modified 
1849\",6377340.189,299.3249646,AUTHORITY[\"EPSG\",\"7002\"]],AUTHORITY[\"EPSG\",\"6002\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4002\"]]|+proj=longlat
 +ellps=mod_airy +no_defs\n"
-                       "4003|EPSG|4003|GEOGCS[\"Unknown datum based upon the 
Australian National 
Spheroid\",DATUM[\"Not_specified_based_on_Australian_National_Spheroid\",SPHEROID[\"Australian
 National 
Spheroid\",6378160,298.25,AUTHORITY[\"EPSG\",\"7003\"]],AUTHORITY[\"EPSG\",\"6003\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4003\"]]|+proj=longlat
 +ellps=aust_SA +no_defs\n"
-                       "4004|EPSG|4004|GEOGCS[\"Unknown datum based upon the 
Bessel 1841 
ellipsoid\",DATUM[\"Not_specified_based_on_Bessel_1841_ellipsoid\",SPHEROID[\"Bessel
 
1841\",6377397.155,299.1528128,AUTHORITY[\"EPSG\",\"7004\"]],AUTHORITY[\"EPSG\",\"6004\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4004\"]]|+proj=longlat
 +ellps=bessel +no_defs\n"
-                       "4005|EPSG|4005|GEOGCS[\"Unknown datum based upon the 
Bessel Modified 
ellipsoid\",DATUM[\"Not_specified_based_on_Bessel_Modified_ellipsoid\",SPHEROID[\"Bessel
 
Modified\",6377492.018,299.1528128,AUTHORITY[\"EPSG\",\"7005\"]],AUTHORITY[\"EPSG\",\"6005\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4005\"]]|+proj=longlat
 +a=6377492.018 +b=6356173.508712696 +no_defs\n"
-                       "4006|EPSG|4006|GEOGCS[\"Unknown datum based upon the 
Bessel Namibia 
ellipsoid\",DATUM[\"Not_specified_based_on_Bessel_Namibia_ellipsoid\",SPHEROID[\"Bessel
 Namibia 
(GLM)\",6377483.865280419,299.1528128,AUTHORITY[\"EPSG\",\"7046\"]],AUTHORITY[\"EPSG\",\"6006\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4006\"]]|+proj=longlat
 +ellps=bess_nam +no_defs\n"
-                       "4007|EPSG|4007|GEOGCS[\"Unknown datum based upon the 
Clarke 1858 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1858_ellipsoid\",SPHEROID[\"Clarke
 
1858\",6378293.645208759,294.2606763692569,AUTHORITY[\"EPSG\",\"7007\"]],AUTHORITY[\"EPSG\",\"6007\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4007\"]]|+proj=longlat
 +a=6378293.645208759 +b=6356617.987679838 +no_defs\n"
-                       "4008|EPSG|4008|GEOGCS[\"Unknown datum based upon the 
Clarke 1866 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1866_ellipsoid\",SPHEROID[\"Clarke
 
1866\",6378206.4,294.9786982139006,AUTHORITY[\"EPSG\",\"7008\"]],AUTHORITY[\"EPSG\",\"6008\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4008\"]]|+proj=longlat
 +ellps=clrk66 +no_defs\n"
-                       "4009|EPSG|4009|GEOGCS[\"Unknown datum based upon the 
Clarke 1866 Michigan 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1866_Michigan_ellipsoid\",SPHEROID[\"Clarke
 1866 
Michigan\",6378450.047548896,294.9786971646739,AUTHORITY[\"EPSG\",\"7009\"]],AUTHORITY[\"EPSG\",\"6009\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4009\"]]|+proj=longlat
 +a=6378450.047548896 +b=6356826.621488444 +no_defs\n"
-                       "4010|EPSG|4010|GEOGCS[\"Unknown datum based upon the 
Clarke 1880 (Benoit) 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1880_Benoit_ellipsoid\",SPHEROID[\"Clarke
 1880 
(Benoit)\",6378300.789,293.4663155389802,AUTHORITY[\"EPSG\",\"7010\"]],AUTHORITY[\"EPSG\",\"6010\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4010\"]]|+proj=longlat
 +a=6378300.789 +b=6356566.435 +no_defs\n"
-                       "4011|EPSG|4011|GEOGCS[\"Unknown datum based upon the 
Clarke 1880 (IGN) 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1880_IGN_ellipsoid\",SPHEROID[\"Clarke
 1880 
(IGN)\",6378249.2,293.4660212936265,AUTHORITY[\"EPSG\",\"7011\"]],AUTHORITY[\"EPSG\",\"6011\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4011\"]]|+proj=longlat
 +a=6378249.2 +b=6356515 +no_defs\n"
-                       "4012|EPSG|4012|GEOGCS[\"Unknown datum based upon the 
Clarke 1880 (RGS) 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1880_RGS_ellipsoid\",SPHEROID[\"Clarke
 1880 
(RGS)\",6378249.145,293.465,AUTHORITY[\"EPSG\",\"7012\"]],AUTHORITY[\"EPSG\",\"6012\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4012\"]]|+proj=longlat
 +ellps=clrk80 +no_defs\n"
-                       "4013|EPSG|4013|GEOGCS[\"Unknown datum based upon the 
Clarke 1880 (Arc) 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1880_Arc_ellipsoid\",SPHEROID[\"Clarke
 1880 
(Arc)\",6378249.145,293.4663077,AUTHORITY[\"EPSG\",\"7013\"]],AUTHORITY[\"EPSG\",\"6013\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4013\"]]|+proj=longlat
 +a=6378249.145 +b=6356514.966398753 +no_defs\n"
-                       "4014|EPSG|4014|GEOGCS[\"Unknown datum based upon the 
Clarke 1880 (SGA 1922) 
ellipsoid\",DATUM[\"Not_specified_based_on_Clarke_1880_SGA_1922_ellipsoid\",SPHEROID[\"Clarke
 1880 (SGA 
1922)\",6378249.2,293.46598,AUTHORITY[\"EPSG\",\"7014\"]],AUTHORITY[\"EPSG\",\"6014\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4014\"]]|+proj=longlat
 +a=6378249.2 +b=6356514.996941779 +no_defs\n"
-                       "4015|EPSG|4015|GEOGCS[\"Unknown datum based upon the 
Everest 1830 (1937 Adjustment) 
ellipsoid\",DATUM[\"Not_specified_based_on_Everest_1830_1937_Adjustment_ellipsoid\",SPHEROID[\"Everest
 1830 (1937 
Adjustment)\",6377276.345,300.8017,AUTHORITY[\"EPSG\",\"7015\"]],AUTHORITY[\"EPSG\",\"6015\"]],PRIMEM[\"Greenwich\",0,AUTHORITY[\"EPSG\",\"8901\"]],UNIT[\"degree\",0.0174532925199433,AUTHORITY[\"EPSG\",\"9122\"]],AUTHORITY[\"EPSG\",\"4015\"]]|+proj=longlat
 +a=6377276.345 +b=6356075.41314024 +no_defs\n"
_______________________________________________
checkin-list mailing list -- checkin-list@monetdb.org
To unsubscribe send an email to checkin-list-le...@monetdb.org

Reply via email to