Update of /cvsroot/monetdb/pathfinder/runtime
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv32406/runtime
Modified Files:
pf_support.mx
Log Message:
propagated changes of Friday Feb 27 2009 - Saturday Feb 28 2009
from the Feb2009 branch to the development trunk
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2009/02/27 - sjoerd: runtime/pf_support.mx,1.326.2.6
Fixed bug [ 2642003 ] XQUF replace insert cycle corrupts database.
Added test.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Index: pf_support.mx
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/runtime/pf_support.mx,v
retrieving revision 1.329
retrieving revision 1.330
diff -u -d -r1.329 -r1.330
--- pf_support.mx 9 Feb 2009 08:30:59 -0000 1.329
+++ pf_support.mx 28 Feb 2009 13:00:29 -0000 1.330
@@ -4855,7 +4855,7 @@
ancestor_nid.insert(new_size.project(doccont).reverse().join(ancestors_nid));
} else {
# the inserted data fits on the current page but we may have to
- # move data around to make a hole big ineough in the right place
+ # move data around to make a hole big enough in the right place
# holesize is the size of the hole after the node where we have to
insert
var holesize := 0;
@@ -4937,8 +4937,8 @@
var upd_ancestors :=
ancestors_end.join(ancestors_oldpre).join(pre_level).access(BAT_WRITE).myupdate(ancestors_end.join(ancestors_newrid).join(rid_level_update)).uselect(chr_nil,
docinsertlevel, true, false);
# now update the sizes of these ancestors (if any)
if (upd_ancestors.count() > 0) {
- # calculate new size
- var new_size := [+](upd_ancestors.mirror().join(ancestors_size),
insertsize);
+ # calculate new size (end of hole minus ancestor's PRE)
+ var new_size :=
[-](upd_ancestors.project(int(docinsertafter_newpre)+insertsize),[int](upd_ancestors.mirror().join(ancestors_newpre)));
# figure out new and old pages since they need to be updated
differently
var upd_pages :=
[oid]([>>]([lng](upd_ancestors.mirror().join(ancestors_newrid)),
REMAP_PAGE_BITS));
var is_new_page := [isnil](upd_pages.outerjoin(map_pid));
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins