Fix rocksdb oom with g.V().hasLabel().count() (#823)
authorJermy Li <lizhangmei@baidu.com>
Fri, 13 Mar 2020 05:57:55 +0000 (13:57 +0800)
committerGitHub <noreply@github.com>
Fri, 13 Mar 2020 05:57:55 +0000 (13:57 +0800)
commit9166c269fe7bec04f4fbb38496f39caead4730d6
tree260a6daa743b119db7248f500b6735e4b39f4027
parent44c555dd1d6e5069a6b7400f5191093eacf84515
Fix rocksdb oom with g.V().hasLabel().count() (#823)

* fix iter gloabal
* Manually close the iterators
* catch locks in every batch
* limit iterator to list
* improve cache iter
* fix system index-label graph() return null
* add QueryResults.one() method
* fix BatchIdHolder dead loop with batchSize=0
* fix test iterators don't be closed
* add option query.batch_size
* force limit BatchIdHolder.all()
* adapt ListIterator.list() return Collection<T>
* set default value of check_customized_id_exist option to false
* fix cassandra oom
* fix offset bug
* Increase limit for intersection
* fix check subRows().size() <= INLINE_BATCH_SIZE

Change-Id: I13daaa513b2f5ddc69bcae4d548f263ad1f5b08d
45 files changed:
hugegraph-api/src/main/java/com/baidu/hugegraph/api/API.java
hugegraph-api/src/main/java/com/baidu/hugegraph/api/graph/VertexAPI.java
hugegraph-api/src/main/java/com/baidu/hugegraph/api/traversers/FusiformSimilarityAPI.java
hugegraph-cassandra/src/main/java/com/baidu/hugegraph/backend/store/cassandra/CassandraTables.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/cache/CachedBackendStore.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/cache/CachedGraphTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/page/IdHolder.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/page/IdHolderList.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/page/PageEntryIterator.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/page/QueryList.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/page/SortByCountIdHolderList.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/ConditionQuery.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/IdPrefixQuery.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/IdQuery.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/IdRangeQuery.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/Query.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/query/QueryResults.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryBackendEntry.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/serializer/BinaryEntryIterator.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/store/BackendEntryIterator.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/store/memory/InMemoryDBTable.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/tx/AbstractTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/tx/GraphIndexTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/tx/GraphTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/tx/SchemaIndexTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/backend/tx/SchemaTransaction.java
hugegraph-core/src/main/java/com/baidu/hugegraph/config/CoreOptions.java
hugegraph-core/src/main/java/com/baidu/hugegraph/structure/HugeEdge.java
hugegraph-core/src/main/java/com/baidu/hugegraph/structure/HugeVertex.java
hugegraph-core/src/main/java/com/baidu/hugegraph/task/TaskScheduler.java
hugegraph-core/src/main/java/com/baidu/hugegraph/traversal/optimize/TraversalUtil.java
hugegraph-core/src/main/java/com/baidu/hugegraph/variables/HugeVariables.java
hugegraph-hbase/src/main/java/com/baidu/hugegraph/backend/store/hbase/HbaseTables.java
hugegraph-mysql/src/main/java/com/baidu/hugegraph/backend/store/mysql/MysqlEntryIterator.java
hugegraph-mysql/src/main/java/com/baidu/hugegraph/backend/store/mysql/MysqlTable.java
hugegraph-mysql/src/main/java/com/baidu/hugegraph/backend/store/mysql/MysqlTables.java
hugegraph-palo/src/main/java/com/baidu/hugegraph/backend/store/palo/PaloTables.java
hugegraph-rocksdb/src/main/java/com/baidu/hugegraph/backend/store/rocksdb/RocksDBTable.java
hugegraph-test/src/main/java/com/baidu/hugegraph/core/EdgeCoreTest.java
hugegraph-test/src/main/java/com/baidu/hugegraph/core/EdgeLabelCoreTest.java
hugegraph-test/src/main/java/com/baidu/hugegraph/core/IndexLabelCoreTest.java
hugegraph-test/src/main/java/com/baidu/hugegraph/core/VertexCoreTest.java
hugegraph-test/src/main/java/com/baidu/hugegraph/core/VertexLabelCoreTest.java
hugegraph-test/src/main/java/com/baidu/hugegraph/unit/core/QueryTest.java
hugegraph-test/src/main/resources/hugegraph.properties