// called by SQLQueryResult iterator protected List<Document> getDocumentsById(List<Serializable> ids) { List<Document> docs = new ArrayList<Document>(ids.size()); List<Node> nodes = session.getNodesByIds(ids); for (int index = 0; index < ids.size(); ++index) { Node eachNode = nodes.get(index); if (eachNode == null) { Serializable eachId = ids.get(index); log.warn("Cannot fetch document by id " + eachId, new Throwable("debug stack trace")); continue; } Document doc; try { doc = newDocument(eachNode); } catch (NoSuchDocumentException e) { // unknown type in db, ignore continue; } docs.add(doc); } return docs; }