} catch (BTreeException e) { LOG.debug("Exception while reindexing document: " + e.getMessage(), e); } catch (IOException e) { LOG.debug("Exception while reindexing document: " + e.getMessage(), e);
return null;
            public Object start() throws ReadOnlyException {                try {                    Value ref = new NodeRef(doc.getDocId());                    IndexQuery query = new IndexQuery(IndexQuery.TRUNC_RIGHT, ref);                    final ArrayList nodes = domDb.findKeys(query);                                      for (Iterator i = nodes.iterator(); i.hasNext();) {                        ref = (Value) i.next();                        long gid = ByteConversion.byteToLong(ref.data(), ref.start() + 4);                        if (oldDoc.getTreeLevel(gid) >= doc.getMetadata().reindexRequired()) {                            if (node != null) {                                if (NodeSetHelper.isDescendant(oldDoc, node.getGID(), gid)) {                                    domDb.removeValue(transaction, ref);                                }                            } else                                domDb.removeValue(transaction, ref);                        }                    }                } catch (BTreeException e) {                    LOG.debug("Exception while reindexing document: " + e.getMessage(), e);                } catch (IOException e) {                    LOG.debug("Exception while reindexing document: " + e.getMessage(), e);                }                return null;            }