Update of /cvsroot/monetdb/MonetDB/src/gdk
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv8242/src/gdk

Modified Files:
        gdk.mx gdk_rangejoin.mx 
Log Message:
bandjoin now also got bounds (not checked yet)


Index: gdk.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/gdk/gdk.mx,v
retrieving revision 1.244
retrieving revision 1.245
diff -u -d -r1.244 -r1.245
--- gdk.mx      3 Dec 2007 11:16:55 -0000       1.244
+++ gdk.mx      30 Dec 2007 18:04:00 -0000      1.245
@@ -3152,8 +3152,6 @@
 @item BAT *
 @tab BATouterjoin (BAT *l, BAT *r, size\_t estimate)
 @item BAT *
[EMAIL PROTECTED] BATbandjoin (BAT *l, BAT *r, ptr c1, ptr c2)
[EMAIL PROTECTED] BAT *
 @tab BATthetajoin (BAT *l, BAT *r, int mode, size\_t estimate)
 @item BAT *
 @tab BATsemijoin (BAT *l, BAT *r)
@@ -3193,10 +3191,8 @@
 @
 The @%BATjoin@ over R[A, B] and S[C, D] performs an equi-join over B
 and C. It results in a BAT over A and D.  The @%BATouterjoin@
-implements a left outerjoin over the BATs involved.  The
[EMAIL PROTECTED]@ produces the associations [A, D] such that S.C-c1 <=
-R.b <= S.C + c2.  The special case c1 = 0 and c2 = infinite leads to a
-thetajoin.  The @%BATsemijoin@ over R[A, B] and S[C, D] produces the
+implements a left outerjoin over the BATs involved.  
+The @%BATsemijoin@ over R[A, B] and S[C, D] produces the
 subset of R[A, B] that satisfies the semijoin over A and C.
 @
 The full-materialization policy intermediate results in MonetDB means that a
@@ -3240,7 +3236,6 @@
 gdk_export BAT *BATthetajoin(BAT *l, BAT *r, int mode, size_t estimate);
 gdk_export BAT *BATleftthetajoin(BAT *l, BAT *r, int mode, size_t estimate);
 gdk_export BAT *BATnlthetajoin(BAT *l, BAT *r, int mode, size_t estimate);
-gdk_export BAT *BATbandjoin(BAT *l, BAT *r, ptr c1, ptr c2);   /* should 
bandjoin remain in the kernel? */
 gdk_export BAT *BATsemijoin(BAT *l, BAT *r);
 gdk_export BAT *BATmergejoin(BAT *l, BAT *r, size_t estimate);
 gdk_export BAT *BATleftmergejoin(BAT *l, BAT *r, size_t estimate);

Index: gdk_rangejoin.mx
===================================================================
RCS file: /cvsroot/monetdb/MonetDB/src/gdk/gdk_rangejoin.mx,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- gdk_rangejoin.mx    21 Dec 2007 18:28:53 -0000      1.1
+++ gdk_rangejoin.mx    30 Dec 2007 18:04:00 -0000      1.2
@@ -27,8 +27,18 @@
 
 #include "gdk.h"
 
[EMAIL PROTECTED] BAT range and band join operators
+@
+The @%BATbandjoin@ produces the associations [A, D] such that S.C-c1 <=
+R.b <= S.C + c2.  The special case c1 = 0 and c2 = infinite leads to a
+thetajoin.  
+
[EMAIL PROTECTED]
 gdk_export BAT *BATrangejoin(BAT *l, BAT *rl, BAT *rh, bit li, bit hi);
-/* Join all BUNs of the BATs that have tail values: {rl <= l <= rh}.  */
+/* Join all BUNs of the BATs that have tail values: {rl <= l <= rh}. */
+
+gdk_export BAT *BATbandjoin(BAT *l, BAT *r, ptr mnus, ptr plus, bit li, bit 
hi);
+/* Join all BUNs of the BATs that have tail values: {r-mnus <= l <= r+plus}. */
 
 #endif /* GDK_RANGEJOIN_H */
 @c
@@ -129,13 +139,15 @@
 @{
 @c
 BAT *
-BATbandjoin(BAT *l, BAT *r, ptr c1, ptr c2)
+BATbandjoin(BAT *l, BAT *r, ptr c1, ptr c2, bit li, bit hi)
 {
        BAT *bn;
 
        ERRORcheck(l == NULL, "BATbandjoin: invalid left operand");
        ERRORcheck(r == NULL, "BATbandjoin: invalid right operand");
        ERRORcheck(TYPEerror(l->ttype, r->htype), "BATbandjoin: type 
conflict\n");
+       (void)li;
+       (void)hi;
        bn = BATnew(BAThtype(l), BAThtype(r), MIN(BATcount(l), BATcount(r)));
        if (bn == NULL) 
                return bn;


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2005.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Monetdb-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-checkins

Reply via email to