Changeset: 31fd4cecb922 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=31fd4cecb922
Added Files:
sql/backends/monet5/vaults/shp/75_shp.mal
sql/backends/monet5/vaults/shp/75_shp.sql
sql/backends/monet5/vaults/shp/Makefile.ag
sql/backends/monet5/vaults/shp/shp.c
sql/backends/monet5/vaults/shp/shp.h
sql/backends/monet5/vaults/shp/shp.mal
Removed Files:
geom/sql/functions/Tests/ST_NumPoints.stable.err.Windows
Modified Files:
NT/rules.msc
clients/Tests/All
clients/mapiclient/mclient.c
configure.ag
gdk/gdk_hash.c
gdk/gdk_imprints.c
geom/lib/libgeom.c
geom/lib/libgeom.h
geom/monetdb5/geom.c
geom/monetdb5/geom_upgrade.c
monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows
monetdb5/mal/mal_profiler.c
monetdb5/mal/mal_resource.c
monetdb5/mal/mal_resource.h
sql/backends/monet5/sql.c
sql/backends/monet5/vaults/Makefile.ag
sql/benchmarks/tpch/Tests/16-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/20-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/21-explain.stable.out.32bit
sql/benchmarks/tpch/Tests/22-explain.stable.out.32bit
sql/test/BugTracker-2010/Tests/offset_limited_32bit.SF-2950579.stable.err.oid32
sql/test/SQLite_regress/sqllogictest/Tests/select1.test.stable.out
sql/test/SQLite_regress/sqllogictest/Tests/select2.test.stable.out
sql/test/SQLite_regress/sqllogictest/Tests/select3.test.stable.out
sql/test/Tests/All
sql/test/leaks/Tests/All
testing/Mtest.py.in
Branch: embedded
Log Message:
merge with default
diffs (truncated from 12227 to 300 lines):
diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -361,6 +361,11 @@ create_winconfig_conds_new_py:
!ELSE
$(ECHO) HAVE_LIDAR_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
+!IFDEF HAVE_SHP
+ $(ECHO) HAVE_SHP_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py"
+!ELSE
+ $(ECHO) HAVE_SHP_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
+!ENDIF
!IFDEF HAVE_MONETDB5
$(ECHO) HAVE_MONETDB5_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py"
!ELSE
diff --git a/clients/Tests/All b/clients/Tests/All
--- a/clients/Tests/All
+++ b/clients/Tests/All
@@ -1,4 +1,4 @@
exports
-HAVE_FITS&HAVE_GEOM&HAVE_GSL&HAVE_LIBR&!HAVE_LIDAR&HAVE_NETCDF&HAVE_SAMTOOLS&HAVE_SPHINXCLIENT?MAL-signatures
-!BITS32&!BITS64OID32&HAVE_FITS&HAVE_GEOM&HAVE_GSL&!HAVE_LIDAR&HAVE_NETCDF&HAVE_SAMTOOLS?SQL-dump
+HAVE_FITS&HAVE_GEOM&HAVE_GSL&HAVE_LIBR&!HAVE_LIDAR&!HAVE_SHP&HAVE_NETCDF&HAVE_SAMTOOLS&HAVE_SPHINXCLIENT?MAL-signatures
+!BITS32&!BITS64OID32&HAVE_FITS&HAVE_GEOM&HAVE_GSL&!HAVE_LIDAR&!HAVE_SHP&HAVE_NETCDF&HAVE_SAMTOOLS?SQL-dump
MERCURIAL?malcheck
diff --git a/clients/mapiclient/mclient.c b/clients/mapiclient/mclient.c
--- a/clients/mapiclient/mclient.c
+++ b/clients/mapiclient/mclient.c
@@ -2838,13 +2838,14 @@ set_timezone(Mapi mid)
/* figure out our current timezone */
#ifdef HAVE__GET_TIMEZONE
- long tz; /* type long required by _get_timezone() */
- int dst;
+ __time64_t ltime, lt, gt;
+ struct tm loctime;
- _tzset();
- _get_timezone(&tz);
- _get_dstbias(&dst);
- tzone = (int) (tz + dst);
+ _time64(<ime);
+ _localtime64_s(&loctime, <ime);
+ lt = _mktime64(&loctime);
+ gt = _mkgmtime64(&loctime);
+ tzone = (int) (lt - gt);
#else
time_t t, lt, gt;
struct tm *tmp;
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -167,8 +167,8 @@ dft_lidar=auto
AC_ARG_ENABLE(lidar,
AS_HELP_STRING([--enable-lidar],
[enable support for LiDAR data (default=auto)]),
- enable_lidar=$enableval,
- enable_lidar=$dft_lidar)
+ have_lidar=$enableval,
+ have_lidar=$dft_lidar)
dft_sql=yes
AC_ARG_ENABLE(sql,
@@ -202,6 +202,22 @@ no-auto)
;;
esac
+dft_shp=auto
+AC_ARG_ENABLE(shp,
+ AS_HELP_STRING([--enable-shp],
+ [enable support for ESRI Shapefiles (default=auto)]),
+ have_shp=$enableval,
+ have_shp=$dft_shp)
+case "$enable_geom-$have_shp" in
+no-yes)
+ AC_MSG_ERROR([ESRI Shapefile vault requires the geom module])
+ ;;
+no-auto)
+ have_shp=no
+ disable_shp="(ESRI Shapefile vault requires the geom module)"
+ ;;
+esac
+
dft_embedded=no
AC_ARG_ENABLE(embedded,
AS_HELP_STRING([--enable-embedded],
@@ -2644,7 +2660,7 @@ AC_ARG_WITH(liblas,
AS_HELP_STRING([--with-liblas=DIR],
[liblas library is installed in DIR]),
have_liblas="$withval")
-case "$enable_lidar" in
+case "$have_lidar" in
yes|auto)
# liblas >= 1.8.0 required
LIBLAS_VERSION_REQUIRED_MIN=1.8.0
@@ -2691,23 +2707,23 @@ yes|auto)
fi
# if lidar is enabled and liblas was not found abort
if test "x$have_liblas" = xno; then
- if test "x$enable_lidar" = xyes; then
+ if test "x$have_lidar" = xyes; then
AC_MSG_ERROR([liblas library required for lidar module])
fi
# no liblas, so don't compile lidar
- enable_lidar=no
+ have_lidar=no
if test "x$disable_lidar" = x; then
disable_lidar=${why_have_liblas:-"(liblas library
required for lidar module)"}
fi
fi
;;
no)
- enable_lidar=no
+ have_lidar=no
have_liblas=no
why_have_liblas="(lidar module is disabled)"
;;
esac
-case "$enable_lidar" in
+case "$have_lidar" in
no) LIBLAS_RPM=without;;
*) LIBLAS_RPM=with;;
esac
@@ -2716,12 +2732,87 @@ AC_SUBST(LIBLAS_RPM)
AC_SUBST(LIBLAS_INCS)
AC_SUBST(LIBLAS_LIBS)
-AC_MSG_CHECKING(['enable lidar: $enable_lidar'])
+AC_MSG_CHECKING(['enable lidar: $have_lidar'])
-AM_CONDITIONAL(HAVE_LIDAR, test "x$enable_lidar" = xyes -o "x$enable_lidar" =
xauto)
+AM_CONDITIONAL(HAVE_LIDAR, test "x$have_lidar" = xyes -o "x$have_lidar" =
xauto)
-AC_MSG_CHECKING(['enable lidar: $enable_lidar'])
+AC_MSG_CHECKING(['enable lidar: $have_lidar'])
+# gdal
+org_have_gdal="auto"
+have_gdal=$org_have_gdal
+AC_ARG_WITH(gdal,
+ AS_HELP_STRING([--with-gdal=DIR],
+ [gdal library is installed in DIR]),
+ [have_gdal="$withval"], [have_gdal="auto"])
+# first autoconf for distributions that added a .pc file themselves (Fedora)
+if test "x$have_gdal" != xno; then
+ case "$have_gdal" in
+ auto|yes)
+ PKG_CHECK_MODULES([GDAL], [gdal], [have_gdal="pkgconf"],
[have_gdal="$have_gdal"])
+ ;;
+ *)
+ GDAL_CFLAGS="-I$have_gdal/include"
+ GDAL_LIBS="-L$have_gdal/lib"
+ ;;
+ esac
+fi
+# try to detect it manually like upstream provides it
+if test "x$have_gdal" != xno && test "x$have_gdal" != xpkgconf; then
+ save_CPPFLAGS="$CPPFLAGS"
+ save_LDFLAGS="$LDFLAGS"
+ save_LIBS="$LIBS"
+ CPPFLAGS="$CPPFLAGS $GDAL_CFLAGS"
+ LDFLAGS="$LDFLAGS $GDAL_LIBS"
+ LIBS=""
+ found_gdal_h=yes
+ AC_CHECK_HEADER(gdal.h,,
+ AC_CHECK_HEADER(gdal/gdal.h,
+ [if test "x$GDAL_CFLAGS" = x; then
+ GDAL_CFLAGS="-I/usr/include/gdal"
+ else
+ GDAL_CFLAGS="$GDAL_CFLAGS/gdal"
+ fi
+ CPPFLAGS="$save_CPPFLAGS $GDAL_CFLAGS"],
+ [found_gdal_h=no]))
+ if test "x$found_gdal_h" = xyes; then
+ AC_CHECK_LIB(gdal, GDALAllRegister,
+ [AC_DEFINE(HAVE_GDAL, 1, [Define if you have the gdal
library])
+ have_gdal=yes
+ LIBS="$LIBS -lgdal"],
+ [ if test "x$have_gdal" != xauto; then
AC_MSG_ERROR([-lgdal library not found]); fi
+ have_gdal=no; why_have_gdal="(gdal library not
found)" ],
+ [$MATH_LIBS])
+ else
+ if test "x$have_gdal" != xauto; then AC_MSG_ERROR([gdal.h
header not found]); fi
+ have_gdal=no; why_have_gdal="(gdal.h header not found)"
+ fi
+ GDAL_LIBS="$GDAL_LIBS $LIBS"
+ LDFLAGS="$save_LDFLAGS"
+ CPPFLAGS="$save_CPPFLAGS"
+ LIBS="$save_LIBS"
+ if test "x$have_gdal" != "xyes"; then
+ GDAL_CFLAGS=""
+ GDAL_LIBS=""
+ fi
+fi
+
+AC_SUBST(gdal_CFLAGS, $GDAL_CFLAGS)
+AC_SUBST(gdal_LIBS, $GDAL_LIBS)
+AM_CONDITIONAL(HAVE_GDAL, test x"$have_gdal" != xno)
+
+# if shp is enabled and gdal was not found abort
+if test "x$have_gdal" = xno; then
+ if test "x$have_shp" = xyes; then
+ AC_MSG_ERROR([gdal library required for ESRI Shapefile vault])
+ fi
+ # no gdal, so don't compile shp
+ have_shp=no
+ if test "x$disable_shp" = x; then
+ disable_shp=${why_have_shp:-"(gdal library required for ESRI
Shapefile vault)"}
+ fi
+fi
+AM_CONDITIONAL(HAVE_SHP, test x"$have_shp" != xno )
PKG_CHECK_MODULES([atomic_ops], [atomic_ops], [have_atomic_ops="yes"],
[have_atomic_ops="no"; why_have_atomic_ops="(atomic_ops library not
found)"])
@@ -3552,6 +3643,7 @@ for comp in \
'curl ' \
'fits ' \
'getaddrinfo ' \
+ 'gdal ' \
'gsl ' \
'java ' \
'java_control ' \
@@ -3571,6 +3663,7 @@ for comp in \
'readline ' \
'rubygem ' \
'samtools ' \
+ 'shp ' \
'sphinxclient ' \
'unixodbc ' \
'valgrind ' \
@@ -3579,6 +3672,7 @@ for comp in \
eval "org=\$org_have_$comp"
eval "have=\$have_$comp"
eval "why=\$why_have_$comp"
+
case "$why-$have-$org" in
-no-no) why="(by default)";;
-no-*) why="(by command line option)";;
diff --git a/gdk/gdk_hash.c b/gdk/gdk_hash.c
--- a/gdk/gdk_hash.c
+++ b/gdk/gdk_hash.c
@@ -250,6 +250,7 @@ BATcheckhash(BAT *b)
h->Link = hp->base + HASH_HEADER_SIZE *
SIZEOF_SIZE_T;
h->Hash = (void *) ((char *) h->Link +
h->lim * h->width);
close(fd);
+ hp->parentid = b->batCacheid;
b->T->hash = h;
ALGODEBUG fprintf(stderr,
"#BATcheckhash: reusing persisted hash %s\n", BATgetId(b));
MT_lock_unset(&GDKhashLock(abs(b->batCacheid)));
@@ -490,6 +491,7 @@ BAThash(BAT *b, BUN masksize)
}
break;
}
+ hp->parentid = b->batCacheid;
#ifdef PERSISTENTHASH
if (BBP_status(b->batCacheid) & BBPEXISTING) {
MT_Id tid;
diff --git a/gdk/gdk_imprints.c b/gdk/gdk_imprints.c
--- a/gdk/gdk_imprints.c
+++ b/gdk/gdk_imprints.c
@@ -240,6 +240,7 @@ BATcheckimprints(BAT *b)
imprints->imps = (void *)
(imprints->stats + 64 * 3);
imprints->dict = (void *) ((uintptr_t)
((char *) imprints->imps + pages * (imprints->bits / 8) + sizeof(uint64_t)) &
~(sizeof(uint64_t) - 1));
close(fd);
+ imprints->imprints->parentid =
b->batCacheid;
b->T->imprints = imprints;
ALGODEBUG fprintf(stderr,
"#BATcheckimprints: reusing persisted imprints %d\n", b->batCacheid);
MT_lock_unset(&GDKimprintsLock(abs(b->batCacheid)));
@@ -486,6 +487,7 @@ BATimprints(BAT *b)
}
close(fd);
}
+ imprints->imprints->parentid = b->batCacheid;
b->T->imprints = imprints;
}
diff --git a/geom/lib/libgeom.c b/geom/lib/libgeom.c
--- a/geom/lib/libgeom.c
+++ b/geom/lib/libgeom.c
@@ -130,21 +130,21 @@ const char* geom_type2str(int t, int fla
switch (t) {
//case wkbGeometry:
// return "GEOMETRY";
- case wkbPoint:
+ case wkbPoint_mdb:
return "POINT";
- case wkbLineString:
+ case wkbLineString_mdb:
return "LINESTRING";
- case wkbLinearRing:
+ case wkbLinearRing_mdb:
return "LINEARRING";
- case wkbPolygon:
+ case wkbPolygon_mdb:
return "POLYGON";
- case wkbMultiPoint:
+ case wkbMultiPoint_mdb:
return "MULTIPOINT";
- case wkbMultiLineString:
+ case wkbMultiLineString_mdb:
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list