# DO NOT EDIT THIS FILE -- MAINTAINED AUTOMATICALLY
# This file contains past ChangeLog entries

* Thu Mar 24 2016 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed BATconst.  Use BATconstant instead.
- Changed BATconstant.  It now has a new first argument with the seqbase
  for the head column.

* Thu Jan 14 2016 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed BATmmap.  It was no longer used.

* Fri Dec 18 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- BUNdelete and BATdel don't accept a foce argument and only allow
  deleting values that have not yet been committed.  BUNdelete exchanges
  the deleted value with the last value (if the deleted value isn't the
  last value).  BATdel compacts the BAT by shifting values after the
  deleted values up.  The list of to-be-deleted values in BATdel must
  be sorted and unique.
- Removed BUNreplace from list of exported functions.  It wasn't used,
  and there is still BUNinplace and void_inplace that do more-or-less
  the same thing.

* Thu Dec 17 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Changed BATderiveHeadProps to BATderiveTailProps (and it now works on
  the tail column).
- Removed unused functions BATalpha, BATdelta, and BATprev.

* Fri Dec 11 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed function VIEWcombine.  Use BATdense instead.
- Removed "left" parameter from BUNinplace.  It wasn't used since the
  BAT it works on is dense headed.
- Created function BATdense to easily create a [void,void] BAT with
  specified seqbases for head and tail and a count.
- Removed function BATmark.  When all head columns are dense, BATmark
  basically only created a new [void,void] BAT.
- Renamed BATsubsort to BATsort.

* Thu Dec  3 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed "sub" from the names of the function BATsubselect,
  BATthetasubselect, BATsubcross, BATsubleftjoin, BATsubouterjoin,
  BATsubthetajoin, BATsubsemijoin, BATsubdiff, BATsubjoin, BATsubbandjoin,
  BATsubrangejoin, and BATsubunique.
- Removed BATsubleftfetchjoin: it was not used.
- Removed BATcross1.  Use BATsubcross instead.

* Thu Oct  8 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed all versions of the SORTloop macro.

* Thu Oct  1 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed Batkdiff.  Use BATsubdiff instead.

* Wed Sep 16 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed BATselect.  Use BATsubselect instead.
- Removed BATsemijoin.  Use BATsubsemijoin instead.
- Removed BATjoin.  Use BATsubjoin instead.
- Removed BATleftjoin.  Use BATsubleftjoin or BATproject instead.
- Removed BATleftfetchjoin.  Use BATproject instead.
- Removed BUNins from the list of exported functions.

* Thu Sep 10 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed legacy functions BATuselect and BATuselect_.
- Removed legacy functions BATantijoin, BATbandjoin, BATouterjoin,
  BATrangejoin, and BATthetajoin.

* Wed Sep  9 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed function BATrevert.
- BATordered now works on the TAIL column.

* Tue Sep  8 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed obsolete functions BATorder() and BATorder_rev().

* Sat Sep  5 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Implemented BATsubdiff which returns a list of OIDs (sorted, i.e. usable
  as candidate list) of tuples in the left input whose value does not
  occur in the right input.

* Fri Sep  4 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed function BATkintersect.  It wasn't used anymore.  It's
  functionality can be obtained by using BATsubsemijoin.

* Fri Aug 14 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.23.1-20160601
- Removed the function BATkunion.

* Mon Apr  4 2016 Sjoerd Mullender <sjoerd@acm.org> - 11.21.19-20160405
- Fixed a bug that caused various instances where old data returned or
  where crashes occurred.  The problem was that internally data wasn't
  always marked dirty when it was being changed, causing later processing
  to not deal with the changed data correctly.

* Wed Feb  4 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.21.1-20150807
- BUNtvar and BUNhvar macros no longer work for TYPE_void columns.

* Mon Feb  2 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.21.1-20150807
- Changed interfaces of a lot of GDK-level functions.  When they modify a
  BAT, don't return the same BAT or NULL, but instead return GDK_SUCCEED
  or GDK_FAIL.

* Tue Oct 28 2014 Sjoerd Mullender <sjoerd@acm.org> - 11.21.1-20150807
- Changed a bunch of hash-related functions to work on the tail column.
  The functions that have been changed to work on the tail column are:
  BAThash, BATprepareHash, HASHgonebad, HASHins, and HASHremove.

* Tue Jan 27 2015 Sjoerd Mullender <sjoerd@acm.org> - 11.19.11-20150423
- Replaced the rangejoin implementation with one that uses imprints if
  it can.

* Thu Nov 20 2014 Sjoerd Mullender <sjoerd@acm.org> - 11.19.5-20141120
- Implemented a change to the way in which string bats are appended.
  We now try harder to limit the growth of the string heap.

* Wed Nov  5 2014 Sjoerd Mullender <sjoerd@acm.org> - 11.19.5-20141120
- Fixed some problems with BATsample.  It was possible for BATsample to
  return a value that was just beyond the end of the sampled BAT.  Also,
  on some systems the range of the rand() function is rather limited
  (0..32767) and trying to get a sample larger than this range would
  result in an infinite loop.

* Mon Jul 14 2014 Sjoerd Mullender <sjoerd@acm.org> - 11.19.1-20141024
- Added "multifarm" capability.  It is now possible to separate persistent
  and transient BATs into different directories (presumably on different
  disks).  This can be done by using the --dbextra option of mserver5
  (see the man page).

* Wed Oct  2 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.17.1-20140114
- Removed some unused fields in the atomDesc structure.  This change
  requires a complete recompilation of the whole suite.

* Tue Jan 22 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.17.1-20140114
- Replaced the mutex implementation for both GNU C and Visual Studio with
  a home-grown implementation that uses atomic instructions (__sync_*()
  in gcc, _Interlocked*() in VS).

* Tue Nov 19 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.15.19-20131120
- Stopped using the deprecated sbrk() system call.
- Fixed a problem when reverse sorting a sorted column.
- Fixed bugs that deal with problems that could possibly occur when
  transactions are aborted and the server is restarted.  See bug #3243.
- A bug was fixed in the handling of grouped aggregates when all values
  in a group are null.  See bug #3388.

* Mon Sep 30 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.15.17-20131008
- Removed the heap cache.  Since the fix for bug 3323 which made that
  the cache was actually getting used, bug 3376 made clear that it didn't
  work very well.  In addition, on Linux at least, the heap cache slows
  things down.

* Tue May  7 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.15.9-20130619
- System calls to flush files to disks were added.  This may cause
  some slowdown, but it should provide better durability, especially
  in the face of power failures.

* Mon Apr  8 2013 Sjoerd Mullender <sjoerd@acm.org> - 11.15.5-20130412
- Fixed a bug in case the candidate list is dense and completely
  outside the range of the bat being worked upon.

* Wed Aug  8 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.13.1-20121010
- Removed the gdk_embedded (and embedded) option.  The code wasn't tested
  and most likely non-functional.

* Tue Jul 17 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.13.1-20121010
- BAT-of-BATs is no longer allowed.  It was already not allowed to
  make these types of BATs persistent, but now they can't be created at
  all anymore.

* Fri Aug 31 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.11.9-20120911
- Fixed a bug in BATantijoin when either side is a singleton BAT.
  This fixes bug 3139.

* Mon Jul  9 2012 Niels Nes <niels@cwi.nl> - 11.11.5-20120710
- Fixed intermittent problem that joins and selects return incorrect
  results and possibly inconsistent databases. The problems only occurred
  after a series of queries and updates, therefore it was hard to reproduce.

* Wed Apr  4 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.11.1-20120706
- The sorted property, which was used to maintain whether a column in
  a BAT was sorted or reverse sorted, has been replaced by a pair of
  properties, sorted and revsorted.  These new properties can be set
  independently (unlike the old sorted property), and so if both are set,
  the column must be constant.  In addition, internal property checking
  has been overhauled.  Now, when a property is set incorrectly, and
  when assertions are enabled, an assertion will go off.  There is also
  a function which can derive properties.

* Thu Mar 15 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.11.1-20120706
- Implemented proper overflow checking on all arithmetic operations.

* Thu May 17 2012 Fabian Groffen <fabian@cwi.nl> - 11.9.7-20120607
- Limit number of detected CPU cores to 16 on 32-bits systems to avoid
  running quickly out of addressable resources followed by a kill from
  the OS.

* Fri Apr 27 2012 Fabian Groffen <fabian@cwi.nl> - 11.9.3-20120514
- Implemented MT_getrss for Mac OS X systems, this allows the server to
  know about how much memory is currently in use.

* Tue Feb  7 2012 Sjoerd Mullender <sjoerd@acm.org> - 11.9.1-20120418
- The type "chr" has been removed.
  chr has long been superseded by bte for 1 byte arithmetic plus it is
  pretty useless to hold single characters since we use Unicode and
  thus only a tiny subset of the supported character set would fit.

* Tue Dec  6 2011 Fabian Groffen <fabian@cwi.nl> - 11.7.1-20120111
- Fixed memory detection on 32-bits Solaris systems with more memory
  than can be addressed in 32-bits mode, bug #2935

* Thu Aug 25 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.5.1-20110907
- Removed conversion code for databases that still used the (more than
  two year) old format of "string heaps".

* Wed Aug 10 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.5.1-20110907
- On Windows and Linux/Unix we can now read databases built on the other
  O/S, as long as the hardware-related architecture (bit size, floating
  point format, etc.) is identical.

* Wed May 11 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.5.1-20110907
- Implemented automatic conversion of a 64-bit database with 32-bit OIDs
  to one with 64-bit OIDs.

* Sat Jul  9 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.3.5-20110720
- Fixed a problem where appending string BATs could cause enormous growth
  of the string heap.  This fixes bug 2820.

* Wed Jun 29 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.3.5-20110720
- Fixes to memory detection on FreeBSD.

* Fri May 13 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.3.3-20110517
- Fixed a bug where large files (> 2GB) didn't always get deleted on
  Windows.

* Thu Apr 14 2011 Sjoerd Mullender <sjoerd@acm.org> - 11.3.1-20110414
- Fixed bugs in antiselect which gave the incorrect result when upper
  and lower bound were equal.  This bug could be triggered by the SQL
  query SELECT * FROM t WHERE x NOT BETWEEN y AND y.

* Tue Mar 22 2011 Fabian Groffen <fabian@cwi.nl> - 11.1.1-20110324
- Fixed memory detection on Darwin (Mac OS X) systems not to return
  bogus values

* Fri Jan 14 2011 Fabian Groffen <fabian@cwi.nl> - 11.1.1-20110317
- MonetDB/src/gdk was moved to gdk

* Fri Aug 20 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.38.5-20100823
- Fixed a bug where some internal reference counting was done incorrectly,
  causing an infinite loop when exiting the server due to it being killed.
  This bug probably only manifested itself in MonetDB/XQuery.  Bug 2658.

* Mon May 31 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.38.1-20100618
- Updated Vendor information.

* Fri May  7 2010 Fabian Groffen <fabian@cwi.nl>
- Updated HowToStart.rst for our move from SourceForge for sources,
  trackers and downloads.

* Tue Apr 20 2010 Stefan Manegold <manegold@cwi.nl> - 1.38.1-20100618
- Made compilation of "testing" (and "java") independent of MonetDB.
  This is mainly for Windows, but also on other systems, "testing" can
  now be built independently of (and hence before) "MonetDB".  Files
  that mimic configure functionality on Windows were moved from
  "MonetDB" to "buildtools"; hence, this affects all packages on
  Windows, requiring a complete rebuild from scratch on Windows.
  getopt() support in testing has changed; hence, (most probably)
  requiring a rebuild from scratch of testing on other systems.

* Tue Apr 20 2010 Stefan Manegold <manegold@cwi.nl> - 1.38.1-20100618
- Implemented build directory support for Windows, i.e., like on
  Unix/Linux also on Windows we can now build in a separate build
  directory as alternative to ...\<package>\NT, and thus keep the latter
  clean from files generated during the build.  On Windows, the build
  directory must be a sibling of ...\<package>\NT .

* Thu Apr 15 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.36.5-20100420
- Fixed a bug that could cause a crash when string BATs are combined.
  (SF bug 2947763.)

* Sun Apr 11 2010 Niels Nes <niels@cwi.nl> - 1.36.5-20100420
- Fixed a potential file leak: under certain conditions, files in the
  database might not get deleted when they should (they would be
  deleted when the server restarts).

* Mon Mar 29 2010 Fabian Groffen <fabian@cwi.nl> - 1.36.5-20100420
- Fix regression introduced in Feb2010-SP1 causing UDP connections to
  malfunction, in particular affecting the stethoscope tool.

* Mon Mar 01 2010 Fabian Groffen <fabian@cwi.nl> - 1.36.3-20100322
- Fixed bug in UDP stream creation causing UDP connections to already
  bound ports to be reported as successful.

* Mon Feb 22 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.36.1-20100223
- Various concurrency bugs were fixed.
- Various changes were made to run better on systems that don't have
  enough memory to keep everything in core that was touched during
  query processing.  This is done by having the higher layers giving
  hints to the database kernel about future use, and the database
  kernel giving hints to the operating system kernel about how
  (virtual) memory is going to be used.

* Thu Feb 18 2010 Stefan Manegold <Stefan.Manegold@cwi.nl> - 1.36.1-20100223
- Fixed bug in mergejoin implementation.  This fixes bug #2952191.

* Tue Feb  2 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.36.1-20100223
- Added support for compiling on Windows using the Cygwin-provided
  version of flex.

* Thu Jan 21 2010 Sjoerd Mullender <sjoerd@acm.org> - 1.36.1-20100223
- Fix compilation issue when configured with --with-curl.  This fixes
  bug #2924999.

* Thu Jan 21 2010 Fabian Groffen <fabian@cwi.nl> - 1.36.1-20100223
- Added implementation of MT_getrss() for Solaris.  This yields in the
  kernel knowing about its (approximate) memory usage to try and help
  the operating system to free that memory that is best to free,
  instead of a random page, e.g. the work of the vmtrim thread.

* Wed Jan 20 2010 Sjoerd Mullender <sjoerd@cwi.nl> - 1.36.1-20100223
- Implemented a "fast" string BAT append: Under certain conditions,
  instead of inserting values one-by-one, we now concatenate the
  string heap wholesale and just manipulate the offsets.  This works
  both for BATins and BATappend.

* Wed Jan  6 2010 Sjoerd Mullender <sjoerd@cwi.nl> - 1.36.1-20100223
- Changed the string heap implementation to also contain the hashes of
  strings.
- Changed the implementation of the string offset columns to be
  dynamically sized.

