Changeset: 167728df4ef3 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=167728df4ef3
Added Files:
        ChangeLog-Archive
        sql/backends/monet5/UDF/cudf/80_udf.mal
        sql/backends/monet5/UDF/cudf/80_udf.sql
        sql/backends/monet5/UDF/cudf/80_udf_hge.mal
        sql/backends/monet5/UDF/cudf/80_udf_hge.sql
        sql/backends/monet5/UDF/cudf/Makefile.ag
        sql/backends/monet5/UDF/cudf/README
        sql/backends/monet5/UDF/cudf/Tests/All
        sql/backends/monet5/UDF/cudf/Tests/udf-fuse.sql
        sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.err
        sql/backends/monet5/UDF/cudf/Tests/udf-fuse.stable.out
        sql/backends/monet5/UDF/cudf/Tests/udf-reverse.sql
        sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.err
        sql/backends/monet5/UDF/cudf/Tests/udf-reverse.stable.out
        sql/backends/monet5/UDF/cudf/udf.c
        sql/backends/monet5/UDF/cudf/udf.h
        sql/backends/monet5/UDF/cudf/udf.mal
        sql/backends/monet5/UDF/cudf/udf_hge.mal
        sql/backends/monet5/UDF/cudf/udf_impl.h
        sql/backends/monet5/UDF/pyapi/50_pyapi.mal
        sql/backends/monet5/UDF/pyapi/Makefile.ag
        sql/backends/monet5/UDF/pyapi/Tests/All
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_boolean.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_boolean.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_boolean.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_numeric_nested.malC
        
sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_numeric_nested.stable.err
        
sql/backends/monet5/UDF/pyapi/Tests/pyapi_numpy_numeric_nested.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_pandas.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_pandas.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_pandas.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_returntypes.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_returntypes.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_returntypes.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_boolean.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_boolean.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_boolean.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_huge.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_huge.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_huge.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_numeric.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_numeric.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_numeric.stable.out
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_string.malC
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_string.stable.err
        sql/backends/monet5/UDF/pyapi/Tests/pyapi_types_string.stable.out
        sql/backends/monet5/UDF/pyapi/connection.c
        sql/backends/monet5/UDF/pyapi/connection.h
        sql/backends/monet5/UDF/pyapi/formatinput.c
        sql/backends/monet5/UDF/pyapi/formatinput.h
        sql/backends/monet5/UDF/pyapi/pyapi.c
        sql/backends/monet5/UDF/pyapi/pyapi.h
        sql/backends/monet5/UDF/pyapi/pyapi.mal
        sql/backends/monet5/UDF/pyapi/pyapi_locatepython.bat
        sql/backends/monet5/UDF/pyapi/pytypes.c
        sql/backends/monet5/UDF/pyapi/pytypes.h
        sql/backends/monet5/UDF/pyapi/type_conversion.c
        sql/backends/monet5/UDF/pyapi/type_conversion.h
        sql/backends/monet5/UDF/pyapi/unicode.c
        sql/backends/monet5/UDF/pyapi/unicode.h
        sql/backends/monet5/UDF/pyapi/unspecified_evil.h
Removed Files:
        monetdb5/extras/pyapi/50_pyapi.mal
        monetdb5/extras/pyapi/Makefile.ag
        monetdb5/extras/pyapi/Tests/All
        monetdb5/extras/pyapi/Tests/pyapi_numpy_boolean.malC
        monetdb5/extras/pyapi/Tests/pyapi_numpy_boolean.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_numpy_boolean.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_numpy_numeric_nested.malC
        monetdb5/extras/pyapi/Tests/pyapi_numpy_numeric_nested.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_numpy_numeric_nested.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_pandas.malC
        monetdb5/extras/pyapi/Tests/pyapi_pandas.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_pandas.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_returntypes.malC
        monetdb5/extras/pyapi/Tests/pyapi_returntypes.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_returntypes.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_types_boolean.malC
        monetdb5/extras/pyapi/Tests/pyapi_types_boolean.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_types_boolean.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_types_huge.malC
        monetdb5/extras/pyapi/Tests/pyapi_types_huge.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_types_huge.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_types_numeric.malC
        monetdb5/extras/pyapi/Tests/pyapi_types_numeric.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_types_numeric.stable.out
        monetdb5/extras/pyapi/Tests/pyapi_types_string.malC
        monetdb5/extras/pyapi/Tests/pyapi_types_string.stable.err
        monetdb5/extras/pyapi/Tests/pyapi_types_string.stable.out
        monetdb5/extras/pyapi/connection.c
        monetdb5/extras/pyapi/connection.h
        monetdb5/extras/pyapi/formatinput.c
        monetdb5/extras/pyapi/formatinput.h
        monetdb5/extras/pyapi/pyapi.c
        monetdb5/extras/pyapi/pyapi.h
        monetdb5/extras/pyapi/pyapi.mal
        monetdb5/extras/pyapi/pyapi_locatepython.bat
        monetdb5/extras/pyapi/pytypes.c
        monetdb5/extras/pyapi/pytypes.h
        monetdb5/extras/pyapi/type_conversion.c
        monetdb5/extras/pyapi/type_conversion.h
        monetdb5/extras/pyapi/unicode.c
        monetdb5/extras/pyapi/unicode.h
        monetdb5/extras/pyapi/unspecified_evil.h
        monetdb5/mal/Tests/tst3000.malC
        monetdb5/mal/Tests/tst3000.stable.err
        monetdb5/mal/Tests/tst3000.stable.out
        monetdb5/mal/Tests/tst3010.malC
        monetdb5/mal/Tests/tst3010.stable.err
        monetdb5/mal/Tests/tst3010.stable.out
        monetdb5/mal/Tests/tst3030.malC
        monetdb5/mal/Tests/tst3030.stable.err
        monetdb5/mal/Tests/tst3030.stable.out
        monetdb5/mal/Tests/tst3060.malC
        monetdb5/mal/Tests/tst3060.stable.err
        monetdb5/mal/Tests/tst3060.stable.out
        sql/backends/monet5/UDF/80_udf.mal
        sql/backends/monet5/UDF/80_udf.sql
        sql/backends/monet5/UDF/80_udf_hge.mal
        sql/backends/monet5/UDF/80_udf_hge.sql
        sql/backends/monet5/UDF/README
        sql/backends/monet5/UDF/Tests/All
        sql/backends/monet5/UDF/Tests/udf-fuse.sql
        sql/backends/monet5/UDF/Tests/udf-fuse.stable.err
        sql/backends/monet5/UDF/Tests/udf-fuse.stable.out
        sql/backends/monet5/UDF/Tests/udf-reverse.sql
        sql/backends/monet5/UDF/Tests/udf-reverse.stable.err
        sql/backends/monet5/UDF/Tests/udf-reverse.stable.out
        sql/backends/monet5/UDF/udf.c
        sql/backends/monet5/UDF/udf.h
        sql/backends/monet5/UDF/udf.mal
        sql/backends/monet5/UDF/udf_hge.mal
        sql/backends/monet5/UDF/udf_impl.h
Modified Files:
        .hgtags
        ChangeLog.Jun2016
        MonetDB.spec
        NT/installer32/MonetDB-ODBC-Installer.vdproj
        NT/installer32/MonetDB5-Geom-Module.vdproj
        NT/installer32/MonetDB5-SQL-Installer.vdproj
        NT/installer64/MonetDB-ODBC-Installer.vdproj
        NT/installer64/MonetDB5-Geom-Module.vdproj
        NT/installer64/MonetDB5-SQL-Installer.vdproj
        NT/monetdb_config.h.in
        NT/rules.msc
        clients/mapilib/mapi.rc
        clients/odbc/driver/driver.rc
        clients/odbc/winsetup/setup.rc
        configure.ag
        debian/changelog
        gdk/ChangeLog
        gdk/gdk.h
        gdk/gdk_aggr.c
        gdk/gdk_align.c
        gdk/gdk_bat.c
        gdk/gdk_batop.c
        gdk/gdk_bbp.c
        gdk/gdk_calc.c
        gdk/gdk_calc_compare.h
        gdk/gdk_cand.h
        gdk/gdk_cross.c
        gdk/gdk_delta.c
        gdk/gdk_delta.h
        gdk/gdk_firstn.c
        gdk/gdk_group.c
        gdk/gdk_hash.c
        gdk/gdk_imprints.c
        gdk/gdk_interprocess.c
        gdk/gdk_join.c
        gdk/gdk_logger.c
        gdk/gdk_orderidx.c
        gdk/gdk_project.c
        gdk/gdk_sample.c
        gdk/gdk_search.c
        gdk/gdk_select.c
        gdk/gdk_storage.c
        gdk/gdk_unique.c
        gdk/libbat.rc
        geom/monetdb5/geom.c
        geom/monetdb5/geomBulk.c
        geom/monetdb5/geom_upgrade.c
        java/Makefile.ag
        java/build.properties
        java/pom.xml
        java/release.txt
        libversions
        monetdb5/extras/Makefile.ag
        monetdb5/extras/rapi/converters.c.h
        monetdb5/mal/Tests/All
        monetdb5/mal/Tests/tst275.stable.out
        monetdb5/modules/atoms/batxml.c
        monetdb5/modules/atoms/json.c
        monetdb5/modules/atoms/mtime.c
        monetdb5/modules/kernel/aggr.c
        monetdb5/modules/kernel/algebra.c
        monetdb5/modules/kernel/bat5.c
        monetdb5/modules/kernel/batcolor.c
        monetdb5/modules/kernel/batmmath.c
        monetdb5/modules/kernel/microbenchmark.c
        monetdb5/modules/mal/iterator.c
        monetdb5/modules/mal/manifold.c
        monetdb5/modules/mal/mkey.c
        monetdb5/modules/mal/orderidx.c
        monetdb5/modules/mal/pcre.c
        monetdb5/modules/mal/remote.c
        monetdb5/modules/mal/tablet.c
        monetdb5/modules/mal/txtsim.c
        monetdb5/modules/mal/zorder.c
        monetdb5/optimizer/Tests/CMexample.malC
        monetdb5/optimizer/Tests/CRexample.malC
        monetdb5/optimizer/Tests/CXerror1.malC
        monetdb5/optimizer/Tests/CXexample.malC
        monetdb5/optimizer/Tests/CXexample.stable.out
        monetdb5/optimizer/Tests/DCexample.malC
        monetdb5/optimizer/Tests/DCexample2.malC
        monetdb5/optimizer/Tests/DCexample2.stable.out
        monetdb5/optimizer/Tests/FTexample.malC
        monetdb5/optimizer/Tests/GCexample01.malC
        monetdb5/optimizer/Tests/GCexample01.stable.out
        monetdb5/optimizer/Tests/JPexample.malC
        monetdb5/optimizer/Tests/JPexample.stable.out
        monetdb5/optimizer/Tests/Mexample.malC
        monetdb5/optimizer/Tests/Mexample.stable.out
        monetdb5/optimizer/Tests/dataflow3.malC
        monetdb5/optimizer/Tests/dataflow3.stable.out
        monetdb5/optimizer/Tests/dataflow4.malC
        monetdb5/optimizer/Tests/dataflow4.stable.out
        monetdb5/optimizer/Tests/dataflow5.malC
        monetdb5/optimizer/Tests/dataflow5.stable.out
        monetdb5/optimizer/Tests/inline00.malC
        monetdb5/optimizer/Tests/inline00.stable.out
        monetdb5/optimizer/Tests/inline01.malC
        monetdb5/optimizer/Tests/inline01.stable.out
        monetdb5/optimizer/Tests/inline02.malC
        monetdb5/optimizer/Tests/inline02.stable.out
        monetdb5/optimizer/Tests/inline03.malC
        monetdb5/optimizer/Tests/inline03.stable.out
        monetdb5/optimizer/Tests/inline04.malC
        monetdb5/optimizer/Tests/inline04.stable.out
        monetdb5/optimizer/Tests/inline05.malC
        monetdb5/optimizer/Tests/inline05.stable.out
        monetdb5/optimizer/Tests/inline06.malC
        monetdb5/optimizer/Tests/inline06.stable.out
        monetdb5/optimizer/Tests/inline07.malC
        monetdb5/optimizer/Tests/inline07.stable.out
        monetdb5/optimizer/Tests/inline08.malC
        monetdb5/optimizer/Tests/inline08.stable.out
        monetdb5/optimizer/Tests/inline09.malC
        monetdb5/optimizer/Tests/inline09.stable.out
        monetdb5/optimizer/Tests/inline10.malC
        monetdb5/optimizer/Tests/inline10.stable.out
        monetdb5/optimizer/Tests/inline11.malC
        monetdb5/optimizer/Tests/inline12.malC
        monetdb5/optimizer/Tests/inline12.stable.out
        monetdb5/optimizer/Tests/inlineCst.malC
        monetdb5/optimizer/Tests/inlineCst.stable.out
        monetdb5/optimizer/Tests/inlineFunction2.malC
        monetdb5/optimizer/Tests/inlineFunction2.stable.out
        monetdb5/optimizer/Tests/inlineIfthen.malC
        monetdb5/optimizer/Tests/inlineIfthen.stable.out
        monetdb5/optimizer/Tests/joinpath.malC
        monetdb5/optimizer/Tests/leftjoinpath.malC
        monetdb5/optimizer/Tests/manifold2.malC
        monetdb5/optimizer/Tests/mat00.malC
        monetdb5/optimizer/Tests/mat01.malC
        monetdb5/optimizer/Tests/mitosis00.malC
        monetdb5/optimizer/Tests/projectionchain.malC
        monetdb5/optimizer/Tests/projectionchain.stable.out
        monetdb5/optimizer/Tests/qep00.malC
        monetdb5/optimizer/Tests/qep01.malC
        monetdb5/optimizer/Tests/qep02.malC
        monetdb5/optimizer/Tests/remap.malC
        monetdb5/optimizer/Tests/remap.stable.out
        monetdb5/optimizer/Tests/reorder00.malC
        monetdb5/optimizer/Tests/reorder00.stable.out
        monetdb5/optimizer/Tests/replicator00.malC
        monetdb5/optimizer/Tests/tst4000.malC
        monetdb5/optimizer/Tests/tst4000.stable.out
        monetdb5/optimizer/Tests/tst4003.malC
        monetdb5/optimizer/Tests/tst4003.stable.out
        monetdb5/optimizer/Tests/tst4010.malC
        monetdb5/optimizer/Tests/tst4010.stable.out
        monetdb5/optimizer/Tests/tst4030.malC
        monetdb5/optimizer/Tests/tst4030.stable.out
        monetdb5/optimizer/Tests/tst4700.malC
        monetdb5/optimizer/opt_statistics.c
        monetdb5/tools/libmonetdb5.rc
        sql/backends/monet5/LSST/lsst.c
        sql/backends/monet5/UDF/Makefile.ag
        sql/backends/monet5/generator/generator.c
        sql/backends/monet5/sql.c
        sql/backends/monet5/sql_cast_impl_down_from_int.h
        sql/backends/monet5/sql_cast_impl_up_to_flt.h
        sql/backends/monet5/sql_cast_impl_up_to_int.h
        sql/backends/monet5/sql_fround_impl.h
        sql/backends/monet5/sql_round_impl.h
        sql/backends/monet5/vaults/bam/Makefile.ag
        sql/backends/monet5/vaults/bam/Tests/bam_lib_mal.mal
        sql/backends/monet5/vaults/bam/bam_export.c
        sql/backends/monet5/vaults/bam/bam_lib.c
        sql/backends/monet5/vaults/fits/Makefile.ag
        sql/backends/monet5/vaults/fits/fits.c
        sql/backends/monet5/vaults/lidar/Makefile.ag
        sql/backends/monet5/vaults/lidar/lidar.c
        sql/backends/monet5/vaults/netcdf/Makefile.ag
        sql/backends/monet5/vaults/netcdf/netcdf.c
        sql/backends/monet5/vaults/shp/Makefile.ag
        sql/server/sql_parser.y
        sql/storage/bat/bat_logger.c
        sql/storage/bat/bat_storage.c
        sql/storage/bat/bat_table.c
        sql/test/testdb-upgrade-chain-hge/Tests/upgrade.stable.out.oid32
        sql/test/testdb-upgrade-chain/Tests/upgrade.stable.out.32bit
        sql/test/testdb-upgrade-hge/Tests/upgrade.stable.out.oid32
        sql/test/testdb-upgrade/Tests/upgrade.stable.out.32bit
        vertoo.data
Branch: default
Log Message:

merged


diffs (truncated from 37565 to 300 lines):

diff --git a/.hgtags b/.hgtags
--- a/.hgtags
+++ b/.hgtags
@@ -627,3 +627,5 @@ 192e3168234a5f9f8a4d1c4ce17805f608f001c3
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_3
 192e3168234a5f9f8a4d1c4ce17805f608f001c3 Jun2016_release
 b29fdfe9c590f674208212bf4ead617beef4b73c Jun2016_release
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_5
+4a05df3932a97865ac7e4037361723d5563490b3 Jun2016_SP1_release
diff --git a/ChangeLog-Archive b/ChangeLog-Archive
new file mode 100644
--- /dev/null
+++ b/ChangeLog-Archive
@@ -0,0 +1,6 @@
+# DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
+# This file contains past ChangeLog entries
+
+* Fri Jul  1 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.5-20160704
+- Lots of memory leaks have been plugged across the whole system.
+
diff --git a/ChangeLog.Jun2016 b/ChangeLog.Jun2016
--- a/ChangeLog.Jun2016
+++ b/ChangeLog.Jun2016
@@ -1,6 +1,3 @@
 # ChangeLog file for candidate
 # This file is updated with Maddlog
 
-* Fri Jul  1 2016 Sjoerd Mullender <sjo...@acm.org>
-- Lots of memory leaks have been plugged across the whole system.
-
diff --git a/MonetDB.spec b/MonetDB.spec
--- a/MonetDB.spec
+++ b/MonetDB.spec
@@ -119,7 +119,7 @@ Vendor: MonetDB BV <i...@monetdb.org>
 Group: Applications/Databases
 License: MPLv2.0
 URL: http://www.monetdb.org/
-Source: 
http://dev.monetdb.org/downloads/sources/Jun2016/%{name}-%{version}.tar.bz2
+Source: 
http://dev.monetdb.org/downloads/sources/Jun2016-SP1/%{name}-%{version}.tar.bz2
 
 # we need systemd for the _unitdir macro to exist
 %if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} >= 7
@@ -962,6 +962,13 @@ rm -f %{buildroot}%{_bindir}/Maddlog
 %postun -p /sbin/ldconfig
 
 %changelog
+* Mon Jul 04 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.5-20160704
+- Rebuilt.
+- BZ#4031: mclient doesn't accept - argument to refer to stdin
+
+* Fri Jul  1 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.5-20160704
+- MonetDB: Lots of memory leaks have been plugged across the whole system.
+
 * Fri Jun 10 2016 Sjoerd Mullender <sjo...@acm.org> - 11.23.3-20160610
 - Rebuilt.
 - BZ#4015: Daemon crashes on database release command
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,16 @@
+monetdb (11.23.5) unstable; urgency=low
+
+  * Rebuilt.
+  * BZ#4031: mclient doesn't accept - argument to refer to stdin
+
+ -- Sjoerd Mullender <sjo...@acm.org>  Mon, 04 Jul 2016 12:57:25 +0200
+
+monetdb (11.23.5) unstable; urgency=low
+
+  * MonetDB: Lots of memory leaks have been plugged across the whole system.
+
+ -- Sjoerd Mullender <sjo...@acm.org>  Fri, 1 Jul 2016 12:57:25 +0200
+
 monetdb (11.23.3) unstable; urgency=low
 
   * Rebuilt.
diff --git a/gdk/ChangeLog b/gdk/ChangeLog
--- a/gdk/ChangeLog
+++ b/gdk/ChangeLog
@@ -1,6 +1,9 @@
 # ChangeLog file for MonetDB
 # This file is updated with Maddlog
 
+* Fri Jul  1 2016 Sjoerd Mullender <sjo...@acm.org>
+- Removed the macro BUNfirst.  It can be replaced by 0.
+
 * Wed Jun 29 2016 Sjoerd Mullender <sjo...@acm.org>
 - Changed BATroles by removing the argument to set the name of the
   head column.
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -772,8 +772,6 @@ gdk_export int VALisnil(const ValRecord 
  *           bit    batDirtydesc;     // BAT descriptor specific dirty flag
  *           Heap*  batBuns;          // Heap where the buns are stored
  *           // DELTA status
- *           BUN    batDeleted;       // first deleted BUN
- *           BUN    batFirst;         // empty BUN before the first alive BUN
  *           BUN    batInserted;      // first inserted BUN
  *           BUN    batCount;         // Tuple count
  *           // Tail properties
@@ -823,8 +821,6 @@ typedef struct {
        int sharecnt;           /* incoming view count */
 
        /* delta status administration */
-       BUN deleted;            /* start of deleted elements */
-       BUN first;              /* to store next deletion */
        BUN inserted;           /* start of inserted elements */
        BUN count;              /* tuple count */
        BUN capacity;           /* tuple capacity */
@@ -898,9 +894,7 @@ typedef struct BATiter {
 #define batConvert     S.convert
 #define batDirtyflushed        S.dirtyflushed
 #define batDirtydesc   S.descdirty
-#define batFirst       S.first
 #define batInserted    S.inserted
-#define batDeleted     S.deleted
 #define batCount       S.count
 #define batCapacity    S.capacity
 #define batStamp       S.stamp
@@ -1092,8 +1086,6 @@ gdk_export bte ATOMelmshift(int sz);
  * @item
  * BAThtype(b) and  BATttype(b) find out the head and tail type of a BAT.
  * @item
- * BUNfirst(b) returns a BUN pointer to the first BUN as a BAT.
- * @item
  * BUNlast(b) returns the BUN pointer directly after the last BUN
  * in the BAT.
  * @end itemize
@@ -1307,7 +1299,7 @@ gdk_export BUN BUNfnd(BAT *b, const void
                (*(const oid*)(v) < (b)->tseqbase) |                    \
                (*(const oid*)(v) >= (b)->tseqbase + (b)->batCount) ?   \
         BUN_NONE :                                                     \
-        BUNfirst((b)) + (BUN) (*(const oid*)(v) - (b)->tseqbase))
+        (BUN) (*(const oid*)(v) - (b)->tseqbase))
 
 #define BATttype(b)    ((b)->ttype == TYPE_void && (b)->tseqbase != oid_nil ? \
                         TYPE_oid : (b)->ttype)
@@ -1317,7 +1309,7 @@ gdk_export BUN BUNfnd(BAT *b, const void
 
 #define tailsize(b,p)  ((b)->ttype?((size_t)(p))<<(b)->tshift:0)
 
-#define Tloc(b,p)      ((b)->theap.base+((p)<<(b)->tshift))
+#define Tloc(b,p)      ((b)->theap.base+(((size_t)(p))<<(b)->tshift))
 
 #if SIZEOF_VAR_T < SIZEOF_VOID_P
 /* NEW 11/4/2009: when compiled with 32-bits oids/var_t on 64-bits
@@ -1381,11 +1373,7 @@ bat_iterator(BAT *b)
        return bi;
 }
 
-#define BUNfirst(b)    (assert((b)->batFirst <= BUN_MAX), (b)->batFirst)
-#define BUNlast(b)     (assert((b)->batFirst <= BUN_MAX),              \
-                        assert((b)->batCount <= BUN_MAX),              \
-                        assert((b)->batCount <= BUN_MAX - (b)->batFirst), \
-                        (b)->batFirst + (b)->batCount)
+#define BUNlast(b)     (assert((b)->batCount <= BUN_MAX), (b)->batCount)
 
 #define BATcount(b)    ((b)->batCount)
 
@@ -1616,7 +1604,7 @@ gdk_export void GDKqsort_rev(void *h, vo
                        } else if ((b)->ttype == TYPE_oid) {            \
                                /* b->batCount == 1 */                  \
                                oid sqbs;                               \
-                               if ((sqbs = ((oid *) 
(b)->theap.base)[(b)->batFirst]) == oid_nil) { \
+                               if ((sqbs = ((oid *) (b)->theap.base)[0]) == 
oid_nil) { \
                                        (b)->tdense = 0;                \
                                        (b)->tnonil = 0;                \
                                        (b)->tnil = 1;                  \
@@ -2533,7 +2521,7 @@ Tpos(BATiter *bi, BUN p)
 {
        bi->tvid = bi->b->tseqbase;
        if (bi->tvid != oid_nil)
-               bi->tvid += p - BUNfirst(bi->b);
+               bi->tvid += p;
        return (char*)&bi->tvid;
 }
 
@@ -2756,9 +2744,6 @@ gdk_export void ALIGNsetT(BAT *b1, BAT *
  * @item BATloopDEL
  * @tab
  *  (BAT *b; BUN p; BUN q; int dummy)
- * @item DELloop
- * @tab
- *  (BAT *b; BUN p, BUN q, int dummy)
  * @item HASHloop
  * @tab
  *  (BAT *b; Hash *h, size_t dummy; ptr value)
@@ -2801,17 +2786,8 @@ gdk_export void ALIGNsetT(BAT *b1, BAT *
  * The first parameter is a BAT, the p and q are BUN pointers, where p
  * is the iteration variable.
  */
-#define BATloop(r, p, q)                                       \
-       for (q = BUNlast(r), p = BUNfirst(r);p < q; p++)
-
-/*
- * @- sequential scan over deleted BUNs
- * Stable BUNS that were deleted, are conserved to transaction
- * end. You may inspect these data items.  Again, the b is a BAT, p
- * and q are BUNs, where p is the iteration variable.
- */
-#define DELloop(b, p, q)                                               \
-       for (q = (b)->batFirst, p = (b)->batDeleted; p < q; p++)
+#define BATloop(r, p, q)                       \
+       for (q = BUNlast(r), p = 0; p < q; p++)
 
 /*
  * @- hash-table supported loop over BUNs
diff --git a/gdk/gdk_aggr.c b/gdk/gdk_aggr.c
--- a/gdk/gdk_aggr.c
+++ b/gdk/gdk_aggr.c
@@ -90,7 +90,7 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e,
                        min = g->tseqbase;
                        max = g->tseqbase + BATcount(g) - 1;
                } else if (g->tsorted) {
-                       gids = (const oid *) Tloc(g, BUNfirst(g));
+                       gids = (const oid *) Tloc(g, 0);
                        /* find first non-nil */
                        for (i = 0, ngrp = BATcount(g); i < ngrp; i++, gids++) {
                                if (*gids != oid_nil) {
@@ -105,7 +105,7 @@ BATgroupaggrinit(BAT *b, BAT *g, BAT *e,
                        }
                } else {
                        /* we'll do a complete scan */
-                       gids = (const oid *) Tloc(g, BUNfirst(g));
+                       gids = (const oid *) Tloc(g, 0);
                        for (i = 0, ngrp = BATcount(g); i < ngrp; i++, gids++) {
                                if (*gids != oid_nil) {
                                        if (*gids < min)
@@ -507,10 +507,10 @@ BATgroupsum(BAT *b, BAT *g, BAT *e, BAT 
        if (BATtdense(g))
                gids = NULL;
        else
-               gids = (const oid *) Tloc(g, BUNfirst(g) + start);
+               gids = (const oid *) Tloc(g, start);
 
-       nils = dosum(Tloc(b, BUNfirst(b)), b->tnonil, b->hseqbase, start, end,
-                    Tloc(bn, BUNfirst(bn)), ngrp, b->ttype, tp,
+       nils = dosum(Tloc(b, 0), b->tnonil, b->hseqbase, start, end,
+                    Tloc(bn, 0), ngrp, b->ttype, tp,
                     cand, candend, gids, min, max,
                     skip_nils, abort_on_error, 1, "BATgroupsum");
 
@@ -638,7 +638,7 @@ BATsum(void *res, int tp, BAT *b, BAT *s
        }
        if (BATcount(b) == 0)
                return GDK_SUCCEED;
-       nils = dosum(Tloc(b, BUNfirst(b)), b->tnonil, b->hseqbase, start, end,
+       nils = dosum(Tloc(b, 0), b->tnonil, b->hseqbase, start, end,
                     res, 1, b->ttype, tp, cand, candend, &min, min, max,
                     skip_nils, abort_on_error, nil_if_empty, "BATsum");
        return nils < BUN_NONE ? GDK_SUCCEED : GDK_FAIL;
@@ -1111,10 +1111,10 @@ BATgroupprod(BAT *b, BAT *g, BAT *e, BAT
        if (BATtdense(g))
                gids = NULL;
        else
-               gids = (const oid *) Tloc(g, BUNfirst(g) + start);
+               gids = (const oid *) Tloc(g, start);
 
-       nils = doprod(Tloc(b, BUNfirst(b)), b->hseqbase, start, end,
-                     Tloc(bn, BUNfirst(bn)), ngrp, b->ttype, tp,
+       nils = doprod(Tloc(b, 0), b->hseqbase, start, end,
+                     Tloc(bn, 0), ngrp, b->ttype, tp,
                      cand, candend, gids, 1, min, max,
                      skip_nils, abort_on_error, 1, "BATgroupprod");
 
@@ -1180,7 +1180,7 @@ BATprod(void *res, int tp, BAT *b, BAT *
        }
        if (BATcount(b) == 0)
                return GDK_SUCCEED;
-       nils = doprod(Tloc(b, BUNfirst(b)), b->hseqbase, start, end, res, 1,
+       nils = doprod(Tloc(b, 0), b->hseqbase, start, end, res, 1,
                      b->ttype, tp, cand, candend, &min, 0, min, max,
                      skip_nils, abort_on_error, nil_if_empty, "BATprod");
        return nils < BUN_NONE ? GDK_SUCCEED : GDK_FAIL;
@@ -1251,7 +1251,7 @@ BATprod(void *res, int tp, BAT *b, BAT *
 
 #define AGGR_AVG(TYPE)                                                 \
        do {                                                            \
-               const TYPE *restrict vals = (const TYPE *) Tloc(b, 
BUNfirst(b)); \
+               const TYPE *restrict vals = (const TYPE *) Tloc(b, 0);  \
                TYPE *restrict avgs = GDKzalloc(ngrp * sizeof(TYPE));   \
                if (avgs == NULL)                                       \
                        goto alloc_fail;                                \
@@ -1298,7 +1298,7 @@ BATprod(void *res, int tp, BAT *b, BAT *
 
 #define AGGR_AVG_FLOAT(TYPE)                                           \
        do {                                                            \
-               const TYPE *restrict vals = (const TYPE *) Tloc(b, 
BUNfirst(b)); \
+               const TYPE *restrict vals = (const TYPE *) Tloc(b, 0);  \
                for (i = 0; i < ngrp; i++)                              \
                        dbls[i] = 0;                                    \
                for (;;) {                                              \
@@ -1426,7 +1426,7 @@ BATgroupavg(BAT **bnp, BAT **cntsp, BAT 
        if (cntsp) {
                if ((*cntsp = COLnew(min, TYPE_lng, ngrp, TRANSIENT)) == NULL)
                        goto alloc_fail;
-               cnts = (lng *) Tloc(*cntsp, BUNfirst(*cntsp));
+               cnts = (lng *) Tloc(*cntsp, 0);
                memset(cnts, 0, ngrp * sizeof(lng));
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to