Changeset: 532270c5c45f for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=532270c5c45f
Added Files:
        gdk/gdk_batop.c
        monetdb5/modules/mal/Tests/xidlist.mal
        monetdb5/modules/mal/Tests/xidlist.stable.err
        monetdb5/modules/mal/Tests/xidlist.stable.out
        monetdb5/modules/mal/xid.c
        monetdb5/modules/mal/xid.h
        monetdb5/modules/mal/xid.mal
        monetdb5/optimizer/opt_xid.c
        monetdb5/optimizer/opt_xid.h
        sql/test/testdb/Tests/testdb-dump.stable.out.Windows
Removed Files:
        gdk/gdk_batop.mx
Modified Files:
        NT/installer32/MonetDB5-SQL-Installer.vdproj
        NT/installer64/MonetDB5-SQL-Installer.vdproj
        gdk/Makefile.ag
        gdk/gdk.h
        gdk/gdk_align.c
        gdk/gdk_atoms.c
        gdk/gdk_atoms.h
        gdk/gdk_bat.c
        gdk/gdk_bat.h
        gdk/gdk_bbp.c
        gdk/gdk_bbp.h
        gdk/gdk_delta.c
        gdk/gdk_delta.h
        gdk/gdk_heap.c
        gdk/gdk_logger.c
        gdk/gdk_logger.h
        gdk/gdk_posix.c
        gdk/gdk_posix.h
        gdk/gdk_sample.c
        gdk/gdk_storage.c
        gdk/gdk_system.c
        gdk/gdk_system.h
        gdk/gdk_tm.c
        java/ChangeLog.Jul2012
        java/Makefile.ag
        java/build.properties
        java/pom.xml
        java/release.txt
        java/src/nl/cwi/monetdb/jdbc/MonetConnection.java
        monetdb5/modules/kernel/algebra.mx
        monetdb5/modules/mal/Makefile.ag
        monetdb5/modules/mal/Tests/All
        monetdb5/modules/mal/mal_init.mal
        monetdb5/optimizer/Makefile.ag
        monetdb5/optimizer/opt_pipes.c
        monetdb5/optimizer/opt_support.c
        monetdb5/optimizer/opt_support.h
        monetdb5/optimizer/opt_wrapper.c
        monetdb5/optimizer/optimizer.mal
        monetdb5/tests/gdkTests/Tests/void.stable.out
        monetdb5/tests/suite_00/Tests/All
        
sql/test/BugTracker-2010/Tests/group-by_ordered_column.Bug-2564.stable.out.32bit
        sql/test/BugTracker-2012/Tests/predicate_select.Bug-3090.stable.out
        sql/test/BugTracker/Tests/jdbc_no_debug.SF-1739356.stable.out.32bit
        sql/test/testdb/Tests/testdb-dump.timeout
        sql/test/testdb/Tests/testdb-load.timeout
Branch: default
Log Message:

merge


diffs (truncated from 107865 to 300 lines):

diff --git a/NT/installer32/MonetDB5-SQL-Installer.vdproj 
b/NT/installer32/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer32/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer32/MonetDB5-SQL-Installer.vdproj
@@ -591,12 +591,6 @@
         }
         "Entry"
         {
-        "MsmKey" = "8:_B19E5558F57A40498434042A6A518D70"
-        "OwnerKey" = "8:_UNDEFINED"
-        "MsmSig" = "8:_UNDEFINED"
-        }
-        "Entry"
-        {
         "MsmKey" = "8:_B29D1CC37FAC4C7BAC52DD29A5303F05"
         "OwnerKey" = "8:_UNDEFINED"
         "MsmSig" = "8:_UNDEFINED"
@@ -2829,26 +2823,6 @@
             "IsDependency" = "11:FALSE"
             "IsolateTo" = "8:"
             }
-            
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B19E5558F57A40498434042A6A518D70"
-            {
-            "SourcePath" = "8:lib\\monetdb5\\batifthen.mal"
-            "TargetName" = "8:batifthen.mal"
-            "Tag" = "8:"
-            "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
-            "Condition" = "8:"
-            "Transitive" = "11:FALSE"
-            "Vital" = "11:TRUE"
-            "ReadOnly" = "11:FALSE"
-            "Hidden" = "11:FALSE"
-            "System" = "11:FALSE"
-            "Permanent" = "11:FALSE"
-            "SharedLegacy" = "11:FALSE"
-            "PackageAs" = "3:1"
-            "Register" = "3:1"
-            "Exclude" = "11:FALSE"
-            "IsDependency" = "11:FALSE"
-            "IsolateTo" = "8:"
-            }
             
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_B29D1CC37FAC4C7BAC52DD29A5303F05"
             {
             "SourcePath" = "8:lib\\monetdb5\\zorder.mal"
diff --git a/NT/installer64/MonetDB5-SQL-Installer.vdproj 
b/NT/installer64/MonetDB5-SQL-Installer.vdproj
--- a/NT/installer64/MonetDB5-SQL-Installer.vdproj
+++ b/NT/installer64/MonetDB5-SQL-Installer.vdproj
@@ -105,12 +105,6 @@
         }
         "Entry"
         {
-        "MsmKey" = "8:_1AE601672DEA4DC8BA85FA9474186451"
-        "OwnerKey" = "8:_UNDEFINED"
-        "MsmSig" = "8:_UNDEFINED"
-        }
-        "Entry"
-        {
         "MsmKey" = "8:_1AF238588D2D4EA5A416D48291406811"
         "OwnerKey" = "8:_UNDEFINED"
         "MsmSig" = "8:_UNDEFINED"
@@ -1229,26 +1223,6 @@
             "IsDependency" = "11:FALSE"
             "IsolateTo" = "8:"
             }
-            
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1AE601672DEA4DC8BA85FA9474186451"
-            {
-            "SourcePath" = "8:lib\\monetdb5\\batifthen.mal"
-            "TargetName" = "8:batifthen.mal"
-            "Tag" = "8:"
-            "Folder" = "8:_B593DAA0787744D6A44D17884E0C3951"
-            "Condition" = "8:"
-            "Transitive" = "11:FALSE"
-            "Vital" = "11:TRUE"
-            "ReadOnly" = "11:FALSE"
-            "Hidden" = "11:FALSE"
-            "System" = "11:FALSE"
-            "Permanent" = "11:FALSE"
-            "SharedLegacy" = "11:FALSE"
-            "PackageAs" = "3:1"
-            "Register" = "3:1"
-            "Exclude" = "11:FALSE"
-            "IsDependency" = "11:FALSE"
-            "IsolateTo" = "8:"
-            }
             
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_1AF238588D2D4EA5A416D48291406811"
             {
             "SourcePath" = 
"8:C:\\Libraries\\iconv-1.11.1.win64-vs10\\lib\\iconv.lib"
diff --git a/gdk/Makefile.ag b/gdk/Makefile.ag
--- a/gdk/Makefile.ag
+++ b/gdk/Makefile.ag
@@ -34,7 +34,7 @@ lib_gdk = {
                gdk_scanselect_defs_str.mx \
                gdk_scanselect_defs_fix.mx \
                gdk_scanselect_defs_var.mx \
-               gdk_scanselect.mx gdk.h gdk_batop.mx \
+               gdk_scanselect.mx gdk.h gdk_batop.c \
                gdk_search.mx gdk_tm.c gdk_align.c gdk_bbp.c gdk_bbp.h \
                gdk_heap.c gdk_setop.mx gdk_utils.c gdk_utils.h gdk_atoms.c 
gdk_atoms.h \
                gdk_qsort.c gdk_qsort_impl.h gdk_ssort.c gdk_ssort_impl.h \
diff --git a/gdk/gdk.h b/gdk/gdk.h
--- a/gdk/gdk.h
+++ b/gdk/gdk.h
@@ -89,9 +89,9 @@
  * [@cite{Goblin}]
  * @end tex
  * .  A BAT is a
- * self-descriptive main-memory structure that represents the @strong{binary
- * relationship} between two atomic types.
- * The association can be defined over:
+ * self-descriptive main-memory structure that represents the
+ * @strong{binary relationship} between two atomic types.  The
+ * association can be defined over:
  * @table @code
  * @item void:
  *  virtual-OIDs: a densely ascending column of OIDs (takes zero-storage).
@@ -104,13 +104,15 @@
  * @item int:
  *  This is the C @strong{int} type (32-bit).
  * @item oid:
- *  Unique @strong{long int} values uses as object identifier. Highest bit 
cleared always.
- *         Thus, oids-s are 31-bit numbers on 32-bit systems, and 63-bit 
numbers on 64-bit systems.
+ *  Unique @strong{long int} values uses as object identifier. Highest
+ *         bit cleared always.  Thus, oids-s are 31-bit numbers on
+ *         32-bit systems, and 63-bit numbers on 64-bit systems.
  * @item wrd:
  *  Machine-word sized integers
  *  (32-bit on 32-bit systems, 64-bit on 64-bit systems).
  * @item ptr:
- * Memory pointer values. DEPRECATED.  Can only be stored in transient BATs.
+ * Memory pointer values. DEPRECATED.  Can only be stored in transient
+ * BATs.
  * @item flt:
  *  The IEEE @strong{float} type.
  * @item dbl:
@@ -120,52 +122,51 @@
  * @item str:
  *  UTF-8 strings (Unicode). A zero-terminated byte sequence.
  * @item bat:
- *  Bat descriptor. This allows for recursive adminstered tables, but
- * severely complicates transaction management. Therefore, they
- * CAN ONLY BE STORED IN TRANSIENT BATs.
+ *  Bat descriptor. This allows for recursive administered tables, but
+ *  severely complicates transaction management. Therefore, they CAN
+ *  ONLY BE STORED IN TRANSIENT BATs.
  * @end table
  *
  * This model can be used as a back-end model underlying other -higher
  * level- models, in order to achieve @strong{better performance} and
- * @strong{data independence} in one go. The relational model and
- * the object-oriented model can be mapped on BATs by vertically
- * splitting every table (or class) for each attribute. Each such a
- * column is then stored in a BAT with type @strong{bat[oid,attribute]}, where
+ * @strong{data independence} in one go. The relational model and the
+ * object-oriented model can be mapped on BATs by vertically splitting
+ * every table (or class) for each attribute. Each such a column is
+ * then stored in a BAT with type @strong{bat[oid,attribute]}, where
  * the unique object identifiers link tuples in the different BATs.
  * Relationship attributes in the object-oriented model hence are
- * mapped to @strong{bat[oid,oid]} tables, being equivalent to the concept of
- * @emph{join indexes}
- * @tex
- * [@cite{Valduriez87}]
- * @end tex
- * .
+ * mapped to @strong{bat[oid,oid]} tables, being equivalent to the
+ * concept of @emph{join indexes} @tex [@cite{Valduriez87}] @end tex .
  *
  * The set of built-in types can be extended with user-defined types
- * through an ADT interface.  They are linked with the kernel to obtain
- * an enhanced library, or they are dynamically loaded upon request.
+ * through an ADT interface.  They are linked with the kernel to
+ * obtain an enhanced library, or they are dynamically loaded upon
+ * request.
  *
- * Types can be derived from other types. They represent something different
- * than that from which they are derived, but their internal storage management
- * is equal. This feature facilitates the work of extension programmers, by
- * enabling reuse of implementation code, but is also used to keep the GDK code
- * portable from 32-bits to 64-bits machines: the @strong{oid} and 
@strong{ptr} types
- * are derived from @strong{int} on 32-bits machines, but is derived from 
@strong{lng}
- * on 64 bits machines. This requires changes in only two lines of code each.
+ * Types can be derived from other types. They represent something
+ * different than that from which they are derived, but their internal
+ * storage management is equal. This feature facilitates the work of
+ * extension programmers, by enabling reuse of implementation code,
+ * but is also used to keep the GDK code portable from 32-bits to
+ * 64-bits machines: the @strong{oid} and @strong{ptr} types are
+ * derived from @strong{int} on 32-bits machines, but is derived from
+ * @strong{lng} on 64 bits machines. This requires changes in only two
+ * lines of code each.
  *
  * To accelerate lookup and search in BATs, GDK supports one built-in
- * search accelerator: hash tables. We choose an implementation efficient
- * for main-memory: bucket chained hash
+ * search accelerator: hash tables. We choose an implementation
+ * efficient for main-memory: bucket chained hash
  * @tex
  * [@cite{LehCar86,Analyti92}]
  * @end tex
- * . Alternatively, when the table is sorted, it will resort to merge-scan
- * operations or binary lookups.
+ * . Alternatively, when the table is sorted, it will resort to
+ * merge-scan operations or binary lookups.
  *
- * BATs are built on the concept of heaps, which are large pieces of main
- * memory. They can also consist of virtual memory, in case the working
- * set exceeds main-memory. In this case, GDK supports operations that
- * cluster the heaps of a BAT, in order to improve performance of its
- * main-memory.
+ * BATs are built on the concept of heaps, which are large pieces of
+ * main memory. They can also consist of virtual memory, in case the
+ * working set exceeds main-memory. In this case, GDK supports
+ * operations that cluster the heaps of a BAT, in order to improve
+ * performance of its main-memory.
  *
  *
  * @- Rationale
@@ -175,15 +176,16 @@
  *
  * @itemize
  * @item -
- * Given the fact that CPU speed and main-memory increase in
- * current workstation hardware for the last years has been exceeding
- * IO access speed increase, traditional disk-page oriented algorithms
- * do no longer take best advantage of hardware, in most database operations.
+ * Given the fact that CPU speed and main-memory increase in current
+ * workstation hardware for the last years has been exceeding IO
+ * access speed increase, traditional disk-page oriented algorithms do
+ * no longer take best advantage of hardware, in most database
+ * operations.
  *
  * Instead of having a disk-block oriented kernel with a large memory
- * cache, we choose to build a main-memory kernel, that only under large data
- * volumes slowly degrades to IO-bound performance, comparable to
- * traditional systems
+ * cache, we choose to build a main-memory kernel, that only under
+ * large data volumes slowly degrades to IO-bound performance,
+ * comparable to traditional systems
  * @tex
  * [@cite{boncz95,boncz96}]
  * @end tex
@@ -207,20 +209,21 @@
  *
  * @item -
  * Object-oriented systems often maintain a double cache, one with the
- * disk-based representation and a C pointer-based main-memory structure.
- * This causes expensive conversions and replicated storage management.
- * GDK does not do such `pointer swizzling'. It used virtual-memory
- * (@strong{mmap()}) and buffer management advice (@strong{madvise()}) OS 
primitives to
- * cache only once. Tables take the same form in memory as on disk,
- * making the use of this technique transparent
+ * disk-based representation and a C pointer-based main-memory
+ * structure.  This causes expensive conversions and replicated
+ * storage management.  GDK does not do such `pointer swizzling'. It
+ * used virtual-memory (@strong{mmap()}) and buffer management advice
+ * (@strong{madvise()}) OS primitives to cache only once. Tables take
+ * the same form in memory as on disk, making the use of this
+ * technique transparent
  * @tex
  * [@cite{oo7}]
  * @end tex
  * .
  * @end itemize
  *
- * A RDBMS or OODBMS based on BATs strongly depends on our ability
- * to efficiently support tuples and to handle small joins, respectively.
+ * A RDBMS or OODBMS based on BATs strongly depends on our ability to
+ * efficiently support tuples and to handle small joins, respectively.
  *
  * The remainder of this document describes the Goblin Database kernel
  * implementation at greater detail. It is organized as follows:
@@ -233,56 +236,58 @@
  * @item @strong{Binary Association Tables}:
  *
  * As already mentioned, these are the primary data structure of GDK.
- * This chapter describes the kernel operations for creation, destruction
- * and basic manipulation of BATs and BUNs (i.e. tuples: Binary UNits).
+ * This chapter describes the kernel operations for creation,
+ * destruction and basic manipulation of BATs and BUNs (i.e. tuples:
+ * Binary UNits).
  *
  * @item @strong{BAT Buffer Pool:}
  *
- * All BATs are registered in the BAT Buffer Pool. This directory is used
- * to guide swapping in and out of BATs. Here we find routines that guide
- * this swapping process.
+ * All BATs are registered in the BAT Buffer Pool. This directory is
+ * used to guide swapping in and out of BATs. Here we find routines
+ * that guide this swapping process.
  *
  * @item @strong{GDK Extensibility:}
  *
- * Atoms can be defined using a unified ADT interface.
- * There is also an interface to extend the GDK library with
- * dynamically linked object code.
+ * Atoms can be defined using a unified ADT interface.  There is also
+ * an interface to extend the GDK library with dynamically linked
+ * object code.
  *
  * @item @strong{GDK Utilities:}
  *
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to