Update of /cvsroot/monetdb/pathfinder/runtime
In directory sc8-pr-cvs16:/tmp/cvs-serv3348
Modified Files:
pathfinder.mx
Log Message:
Use the new built-in function densebat instead of MIL loop.
Index: pathfinder.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/runtime/pathfinder.mx,v
retrieving revision 1.354
retrieving revision 1.355
diff -u -d -r1.354 -r1.355
--- pathfinder.mx 2 May 2007 12:35:27 -0000 1.354
+++ pathfinder.mx 3 May 2007 13:27:15 -0000 1.355
@@ -2734,10 +2734,10 @@
coll_lock_unset(ws, cont, COLL_SHORTLOCK, "ws_newpage",
ws_logtime);
var pages_free := reverse(runtime.fetch(RT_LOCK_FREELIST));
- var newpids := bat(void,oid);
page_id := oid(new_pid);
- while((new_pid :+= 1) < last_pid) newpids.append(oid(new_pid));
- revert(newpids); # put in reverse order to give the pages out in
order
+ new_pid :+= 1;
+ # create a new [nil,oid] bat with densely descending tail values,
ending at new_pid
+ var newpids := densebat(wrd(last_pid -
new_pid)).seqbase(oid(new_pid)).reverse().seqbase(oid(nil)).access(BAT_WRITE).revert();
# put in reverse order to give the pages out in order
lock_set(pf_short);
err := CATCH(_shredlock_unset(colname, wsid));
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins