Changeset: 1262f3e47412 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1262f3e47412
Added Files:
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.sql
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.err
sql/test/BugTracker-2016/Tests/convert-function-test-hge.Bug-3460.stable.out
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.sql
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.err.int128
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out
sql/test/BugTracker-2016/Tests/convert-function-test.Bug-3460.stable.out.int128
sql/test/malloc_fail/Tests/All
sql/test/malloc_fail/Tests/setmemorylimit.sql
sql/test/malloc_fail/Tests/setmemorylimit.stable.err
sql/test/malloc_fail/Tests/setmemorylimit.stable.out
Removed Files:
monetdb5/mal/Tests/recycle00.malC
monetdb5/mal/Tests/recycle00.stable.err
monetdb5/mal/Tests/recycle00.stable.out
monetdb5/mal/Tests/recycle01.malC
monetdb5/mal/Tests/recycle01.stable.err
monetdb5/mal/Tests/recycle01.stable.out
monetdb5/mal/Tests/recycle02.malC
monetdb5/mal/Tests/recycle02.stable.err
monetdb5/mal/Tests/recycle02.stable.out
monetdb5/mal/Tests/recycle03.malC
monetdb5/mal/Tests/recycle03.stable.err
monetdb5/mal/Tests/recycle03.stable.out
monetdb5/mal/Tests/recycle04.malC
monetdb5/mal/Tests/recycle04.stable.err
monetdb5/mal/Tests/recycle04.stable.out
monetdb5/mal/Tests/recycle05.malC
monetdb5/mal/Tests/recycle05.stable.err
monetdb5/mal/Tests/recycle05.stable.out
monetdb5/mal/Tests/recycle07.malC
monetdb5/mal/Tests/recycle07.stable.err
monetdb5/mal/Tests/recycle07.stable.out
monetdb5/mal/Tests/recycle08.malC
monetdb5/mal/Tests/recycle08.stable.err
monetdb5/mal/Tests/recycle08.stable.out
monetdb5/mal/Tests/recycle10.malC
monetdb5/mal/Tests/recycle10.stable.err
monetdb5/mal/Tests/recycle10.stable.out
monetdb5/mal/Tests/recycle11.malC
monetdb5/mal/Tests/recycle11.stable.err
monetdb5/mal/Tests/recycle11.stable.out
monetdb5/mal/Tests/recycle12.malC
monetdb5/mal/Tests/recycle12.stable.err
monetdb5/mal/Tests/recycle12.stable.out
monetdb5/mal/mal_recycle.c
monetdb5/mal/mal_recycle.h
monetdb5/modules/mal/recycle.c
monetdb5/modules/mal/recycle.h
monetdb5/modules/mal/recycle.mal
monetdb5/optimizer/opt_recycler.c
monetdb5/optimizer/opt_recycler.h
sql/test/BugTracker-2009/Tests/table-leftovers.SF-2779462.sql
sql/test/BugTracker-2009/Tests/table-leftovers.SF-2779462.stable.err
sql/test/BugTracker-2009/Tests/table-leftovers.SF-2779462.stable.out
sql/test/BugTracker-2010/Tests/offset_limited_32bit.SF-2950579.stable.err.oid32
sql/test/BugTracker-2010/Tests/offset_limited_32bit.SF-2950579.stable.out.oid32
sql/test/pg_regress/Tests/oid.stable.err.64bit.oid32
sql/test/pg_regress/Tests/oid.stable.err.Windows.oid32
sql/test/pg_regress/Tests/oid.stable.err.oid32.int128
sql/test/pg_regress/Tests/oid.stable.out.oid32
sql/test/pg_regress/Tests/without_oid.stable.out.oid32
sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.oid32
Modified Files:
MonetDB.spec
NT/monetdb_config.h.in
NT/rules.msc
buildtools/ChangeLog
clients/Tests/All
clients/Tests/exports.stable.out
configure.ag
gdk/gdk.h
gdk/gdk_utils.c
gdk/gdk_utils.h
java/tests/Test_CisValid.java
monetdb5/mal/Makefile.ag
monetdb5/mal/Tests/All
monetdb5/mal/mal.c
monetdb5/mal/mal.h
monetdb5/mal/mal_exception.c
monetdb5/mal/mal_instruction.c
monetdb5/mal/mal_instruction.h
monetdb5/mal/mal_interpreter.c
monetdb5/mal/mal_interpreter.h
monetdb5/mal/mal_runtime.c
monetdb5/modules/mal/Makefile.ag
monetdb5/modules/mal/mal_init.mal
monetdb5/modules/mal/mal_io.c
monetdb5/modules/mal/mal_io.h
monetdb5/modules/mal/mal_io.mal
monetdb5/modules/mal/mal_mapi.c
monetdb5/modules/mal/mdb.c
monetdb5/modules/mal/remote.c
monetdb5/optimizer/Makefile.ag
monetdb5/optimizer/opt_pipes.c
monetdb5/optimizer/opt_prelude.c
monetdb5/optimizer/opt_prelude.h
monetdb5/optimizer/opt_support.c
monetdb5/optimizer/opt_wrapper.c
sql/ChangeLog
sql/backends/monet5/sql.c
sql/backends/monet5/sql_optimizer.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/sql_user.c
sql/jdbc/tests/Tests/Test_CisValid.stable.err
sql/test/BugTracker-2009/Tests/All
sql/test/BugTracker-2016/Tests/All
sql/test/emptydb/Tests/All
testing/Mtest.py.in
tools/mserver/monet_version.c.in
tools/mserver/mserver5.c
Branch: mosaic
Log Message:
Merge with default
diffs (truncated from 39795 to 300 lines):
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -12,12 +12,7 @@
%define with_int128 1
%endif
-# only add .oidXX suffix if oid size differs from bit size
-%if %{bits} == 64 && %{?oid32:1}%{!?oid32:0}
-%define oidsuf .oid32
-%endif
-
-%define release %{buildno}%{?dist}%{?oidsuf}
+%define release %{buildno}%{?dist}
# On RedHat Enterprise Linux and derivatives, if the Extra Packages
# for Enterprise Linux (EPEL) repository is available, you can define
@@ -905,7 +900,6 @@ developer, but if you do want to test, t
--enable-monetdb5=yes \
--enable-netcdf=no \
--enable-odbc=yes \
- --enable-oid32=%{?oid32:yes}%{!?oid32:no} \
--enable-optimize=yes \
--enable-profile=no \
--enable-rintegration=%{?with_rintegration:yes}%{!?with_rintegration:no} \
diff --git a/NT/monetdb_config.h.in b/NT/monetdb_config.h.in
--- a/NT/monetdb_config.h.in
+++ b/NT/monetdb_config.h.in
@@ -799,9 +799,6 @@
/* Release name or "unreleased" */
#define MONETDB_RELEASE "unreleased"
-/* Define if the oid type should use 32 bits on a 64-bit architecture */
-/* #undef MONET_OID32 */
-
/* Suffix for C++ files */
#define MX_CXX_SUFFIX "cxx"
diff --git a/NT/rules.msc b/NT/rules.msc
--- a/NT/rules.msc
+++ b/NT/rules.msc
@@ -280,19 +280,12 @@ create_winconfig_conds_new_py:
!IFDEF BITS32
$(ECHO) BITS32_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py"
$(ECHO) BITS64_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
- $(ECHO) BITS64OID32_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
!ELSE
$(ECHO) BITS32_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
!IFDEF BITS64
$(ECHO) BITS64_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py"
-!IFDEF MONET_OID32
- $(ECHO) BITS64OID32_FALSE='#' >> "$(TOPDIR)\winconfig_conds_new.py"
-!ELSE
- $(ECHO) BITS64OID32_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
-!ENDIF
!ELSE
$(ECHO) BITS64_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
- $(ECHO) BITS64OID32_FALSE='' >> "$(TOPDIR)\winconfig_conds_new.py"
!ENDIF
!ENDIF
!IFDEF CROSS_COMPILING
@@ -521,16 +514,6 @@ MAKEDEBUG=DEBUG=1
PSAPILIB = psapi.lib
-# When compiled with plain `nmake`,
-# 64-bit OIDs are used by default on 64-bit Windows
-# (see monetdb_config.h.in for details);
-# compile with `nmake MONET_OID32=1` to use 32-bit OIDs on 64-bit Windows.
-!IF $(bits) == 64
-!IFDEF MONET_OID32
-CFLAGS = $(CFLAGS) -DMONET_OID32
-!ENDIF
-!ENDIF
-
CONFIG_H = monetdb_config.h
{$(srcdir)}.c.obj:
diff --git a/buildtools/ChangeLog b/buildtools/ChangeLog
--- a/buildtools/ChangeLog
+++ b/buildtools/ChangeLog
@@ -1,3 +1,12 @@
# ChangeLog file for buildtools
# This file is updated with Maddlog
+* Tue Jul 19 2016 Stefan Manegold <[email protected]>
+- With OID size equal to ABI/word size, mserver5 does not need to print
+ the OID size, anymore.
+- Removed obsolete code associated with long gone static linking option.
+
+* Mon Jul 18 2016 Sjoerd Mullender <[email protected]>
+- Removed configure option --enable-oid32 to compile with 32 bit OIDs
+ on a 64 bit architecture.
+
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_LIBPY&HAVE_LIBR&!HAVE_LIDAR&HAVE_NETCDF&HAVE_SAMTOOLS&HAVE_SHP&HAVE_SPHINXCLIENT?MAL-signatures
-!BITS32&!BITS64OID32&HAVE_FITS&HAVE_GEOM&HAVE_GSL&!HAVE_LIDAR&HAVE_NETCDF&HAVE_PCRE&HAVE_SHP&HAVE_SAMTOOLS?SQL-dump
+!BITS32&HAVE_FITS&HAVE_GEOM&HAVE_GSL&!HAVE_LIDAR&HAVE_NETCDF&HAVE_PCRE&HAVE_SHP&HAVE_SAMTOOLS?SQL-dump
MERCURIAL?malcheck
diff --git a/clients/Tests/exports.stable.out b/clients/Tests/exports.stable.out
--- a/clients/Tests/exports.stable.out
+++ b/clients/Tests/exports.stable.out
@@ -1685,7 +1685,6 @@ int OPTprofilerImplementation(Client cnt
int OPTprojectionpathImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr p);
int OPTpushselectImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
int OPTquerylogImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
-int OPTrecyclerImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr p);
int OPTreduceImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr p);
int OPTremapImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr
pci);
int OPTremoteQueriesImplementation(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
InstrPtr pci);
@@ -1738,19 +1737,6 @@ str QOTshowPlan(Client cntxt, MalBlkPtr
void QOTstatisticsExit(void);
void QOTupdateStatistics(str nme, int prop, lng val);
QueryQueue QRYqueue;
-str RECYCLEappendSQL(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
-str RECYCLEcolumn(Client cntxt, str sch, str tbl, str col);
-str RECYCLEdeleteSQL(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
-void RECYCLEdrop(Client cntxt);
-str RECYCLEdropWrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
-void RECYCLEdump(stream *s);
-str RECYCLEdumpWrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
-lng RECYCLEentry(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p,
RuntimeProfile prof);
-void RECYCLEexit(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p,
RuntimeProfile prof);
-void RECYCLEinit(void);
-str RECYCLEresetBAT(Client cntxt, int bid);
-str RECYCLEresetBATwrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
-str RECYCLEsetCache(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr p);
str RMTbatload(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str RMTbincopyfrom(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
str RMTbincopyto(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci);
@@ -2445,7 +2431,7 @@ InstrPtr newStmt(MalBlkPtr mb, const cha
Symbol newSymbol(str nme, int kind);
int newTmpVariable(MalBlkPtr mb, malType type);
int newTypeVariable(MalBlkPtr mb, malType type);
-int newVariable(MalBlkPtr mb, str name, int len, malType type);
+int newVariable(MalBlkPtr mb, str name, size_t len, malType type);
str nextRef;
str notRef;
str not_ilikeRef;
@@ -2529,9 +2515,6 @@ str rapiRef;
int readConsole(Client cntxt);
MalStkPtr reallocGlobalStack(MalStkPtr s, int cnt);
str reconnectRef;
-MalBlkPtr recycleBlk;
-int recycleCacheLimit;
-str recycleRef;
str reenterMAL(Client cntxt, MalBlkPtr mb, int startpc, int stoppc, MalStkPtr
stk);
str refineRef;
str registerRef;
diff --git a/configure.ag b/configure.ag
--- a/configure.ag
+++ b/configure.ag
@@ -499,22 +499,6 @@ AC_SUBST(bits)
AM_CONDITIONAL(BITS32, test x"$bits" = x32)
AM_CONDITIONAL(BITS64, test x"$bits" = x64)
-oids=$bits
-AC_ARG_ENABLE(oid32,
- AS_HELP_STRING([--enable-oid32],
- [use 32 bits for OIDs on a 64-bit architecture]),
- enable_oid32=$enableval,
- enable_oid32=no)
-AC_MSG_CHECKING(size of OIDs)
-case $bits-$enable_oid32 in
-64-yes) AC_DEFINE(MONET_OID32, 1, [Define if the oid type should use 32
bits on a 64-bit architecture])
- oids=32
- ;;
-esac
-AM_CONDITIONAL(BITS64OID32, test x"$bits-$enable_oid32" = x64-yes)
-AC_SUBST(oids)
-AC_MSG_RESULT($oids bits)
-
AC_C_BIGENDIAN()
LINUX_DIST=''
@@ -3804,7 +3788,7 @@ else
fi
echo
echo "* Important options:"
-echo " OID size: ${oids} bits"
+echo " OID size: ${bits} bits"
echo " largest integer type: ${hge_bits} bits"
echo " largest decimal type: ${hge_digits} digits"
echo
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -543,22 +543,9 @@ typedef signed char bit;
typedef signed char bte;
typedef short sht;
-#ifdef MONET_OID32
-#define SIZEOF_OID SIZEOF_INT
-typedef unsigned int oid;
-#else
#define SIZEOF_OID SIZEOF_SIZE_T
typedef size_t oid;
-#endif
-#if SIZEOF_OID == SIZEOF_SIZE_T
#define OIDFMT SZFMT
-#else
-#if SIZEOF_OID == SIZEOF_INT
-#define OIDFMT "%u"
-#else
-#define OIDFMT ULLFMT
-#endif
-#endif
typedef int bat; /* Index into BBP */
typedef void *ptr; /* Internal coding of types */
diff --git a/gdk/gdk_utils.c b/gdk/gdk_utils.c
--- a/gdk/gdk_utils.c
+++ b/gdk/gdk_utils.c
@@ -310,6 +310,7 @@ int GDK_vm_trim = 1;
* fall-back for other compilers. */
#include "gdk_atomic.h"
static volatile ATOMIC_TYPE GDK_mallocedbytes_estimate = 0;
+static volatile ATOMIC_TYPE GDK_mallocedbytes_limit = 0;
static volatile ATOMIC_TYPE GDK_vm_cursize = 0;
#ifdef GDK_VM_KEEPHISTO
volatile ATOMIC_TYPE GDK_vm_nallocs[MAX_BIT] = { 0 };
@@ -1682,6 +1683,11 @@ GDKmalloc_prefixsize(size_t size)
return s;
}
+gdk_export void GDKsetmemorylimit(size_t nbytes) {
+ GDK_mallocedbytes_limit = nbytes;
+}
+
+
/*
* The emergency flag can be set to force a fatal error if needed.
* Otherwise, the caller is able to deal with the lack of memory.
@@ -1699,6 +1705,13 @@ GDKmallocmax(size_t size, size_t *maxsiz
GDKfatal("GDKmallocmax: called with size " SZFMT "", size);
#endif
}
+#ifndef NDEBUG
+ /* fail malloc for testing purposes depending on set limit */
+ if (GDK_mallocedbytes_limit > 0 &&
+ (GDK_mallocedbytes_estimate + size +
MALLOC_EXTRA_SPACE) > GDK_mallocedbytes_limit) {
+ return NULL;
+ }
+#endif
size = (size + 7) & ~7; /* round up to a multiple of eight */
s = GDKmalloc_prefixsize(size);
if (s == NULL) {
@@ -1711,6 +1724,7 @@ GDKmallocmax(size_t size, size_t *maxsiz
}
GDKfatal("GDKmallocmax: failed for " SZFMT " bytes",
size);
} else {
+ /* TODO why are we printing this on stderr? */
fprintf(stderr, "#GDKmallocmax: recovery ok.
Continuing..\n");
}
}
diff --git a/gdk/gdk_utils.h b/gdk/gdk_utils.h
--- a/gdk/gdk_utils.h
+++ b/gdk/gdk_utils.h
@@ -80,6 +80,9 @@ gdk_export size_t _MT_pagesize;
gdk_export void MT_init(void); /* init the package. */
gdk_export int GDKinit(opt *set, int setlen);
+/* used for testing only */
+gdk_export void GDKsetmemorylimit(size_t nbytes);
+
/*
* Upon closing the session, all persistent BATs should be saved and
* the transient BATs should be removed. The buffer pool manager
diff --git a/java/tests/Test_CisValid.java b/java/tests/Test_CisValid.java
--- a/java/tests/Test_CisValid.java
+++ b/java/tests/Test_CisValid.java
@@ -18,15 +18,23 @@ public class Test_CisValid {
Connection conn = DriverManager.getConnection(args[0]);
Statement stmt = conn.createStatement();
- conn.setAutoCommit(false); // start a transaction
try {
+ conn.setAutoCommit(false); // start a transaction
stmt.execute("SELECT COUNT(*) FROM doesnotexist;"); //
let's trigger an error
} catch (SQLException e) {
- e.printStackTrace();
- System.out.println("Validating connection:
conn.isValid? " + conn.isValid(30)); // Can we rollback on this connection?
- conn.rollback();
+ // e.printStackTrace();
+ System.err.println("Expected error: " + e);
+
+ try {
+ // test calling conn.isValid()
+ System.out.println("Validating connection:
conn.isValid? " + conn.isValid(30));
+ // Can we rollback on this connection without
causing an error?
+ conn.rollback();
+ } catch (SQLException e2) {
+ System.err.println("UnExpected error: " + e2);
+ }
}
-
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list