thanks Michael i found when i use MapDbCachingIndexProvider,the old index isn't loaded, but when i use LuceneBatchInserterIndexProvider everything looks right.
在 2014年11月25日星期二UTC+8上午8时33分40秒,Michael Hunger写道: > > Good question, I don't know why it is not loaded. Is the index-cache via > mapdb still enabled ? > > > On Mon, Nov 24, 2014 at 1:13 PM, 3in <jinji...@gmail.com <javascript:>> > wrote: > >> i am using BatchInserter to update the graphdb in increments,like this: >> >> Config config = Config.convertArgumentsToConfig(args); >> File graphDb = new File(config.getGraphDbDirectory()); >> BatchInserter db = createBatchInserter(graphDb, config); >> BatchInserterIndexProvider indexProvider = new >> LuceneBatchInserterIndexProvider(db); >> Collection<IndexInfo> indexInfos = config.getIndexInfos(); >> if (indexInfos!=null) { >> for (IndexInfo indexInfo : indexInfos) { >> BatchInserterIndex index = indexInfo.isNodeIndex() ? >> nodeIndexFor(indexInfo.indexName, indexInfo.indexType) : >> relationshipIndexFor(indexInfo.indexName, indexInfo.indexType); >> indexes.put(indexInfo.indexName, index); >> } >> } >> ........ >> long id = db.createNode(data.getProperties(),labelsFor(labels)); >> >> for (Map.Entry<String, Map<String, Object>> entry : >> data.getIndexData().entrySet()) { >> final BatchInserterIndex index = indexFor(entry.getKey()); >> if (index==null) >> throw new IllegalStateException("Index >> "+entry.getKey()+" not configured."); >> index.add(id, entry.getValue()); >> } >> report.dots(); >> >> if (report.getCount() % BATCH == 0) flushIndexes(); >> } >> flushIndexes(); >> *// i can search the new add node, but can't search the old >> nodes* >> * Long tmp_id = indexes.get("node_auto_index").get("name", >> "Selma2").getSingle();* >> * System.out.println("-------------id:" + tmp_id);* >> >> before i update the graphdb using BatchInserter, the graphdb has 3 >> million nodes and 4million relationships with node_auto_index。 >> >> i success to add nodes and relationships to graphdb. >> and when i flush Indexes , i can search the new node with the >> node_auto_index >> but i can't search the old 3 million nodes with the node_auto_index. >> >> isn't the old index loaded in my program? why i can't read it ? >> >> if i want to search some pattern nodes in the old graghdb , how can i do? >> >> thank you >> >> >> >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Neo4j" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to neo4j+un...@googlegroups.com <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Neo4j" group. To unsubscribe from this group and stop receiving emails from it, send an email to neo4j+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.