From: Wolfgang M. M. <wol...@us...> - 2004-07-19 13:06:34
|
Update of /cvsroot/exist/eXist-1.0/src/org/exist/xupdate In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv25772/src/org/exist/xupdate Modified Files: Modification.java Log Message: Fixed another locking issue which led to dirty reads if one thread tried to read index data from elements.dbx while another thread had been updating exactly the same data pages. Index: Modification.java =================================================================== RCS file: /cvsroot/exist/eXist-1.0/src/org/exist/xupdate/Modification.java,v retrieving revision 1.29 retrieving revision 1.30 diff -C2 -d -r1.29 -r1.30 *** Modification.java 23 Jun 2004 12:43:05 -0000 1.29 --- Modification.java 19 Jul 2004 13:06:25 -0000 1.30 *************** *** 208,216 **** * @param docs */ ! protected void checkFragmentation(DocumentSet docs) { for(Iterator i = docs.iterator(); i.hasNext(); ) { DocumentImpl next = (DocumentImpl) i.next(); if(next.getSplitCount() > broker.getFragmentationLimit()) broker.defrag(next); } } --- 208,217 ---- * @param docs */ ! protected void checkFragmentation(DocumentSet docs) throws EXistException { for(Iterator i = docs.iterator(); i.hasNext(); ) { DocumentImpl next = (DocumentImpl) i.next(); if(next.getSplitCount() > broker.getFragmentationLimit()) broker.defrag(next); + broker.consistencyCheck(next); } } |