Release hugegraph 0.11.2
HugeGraph 0.11.2 Release Notes(CN)
What's Changed
click to see details
- Bump up to version 0.9.0 by @Linary in #277
- Remove the restriction of port between 1024 and 10000 by @Linary in #263
- fix bug left-index-remove can't handle none-flatten query by @zhoney in #281
- keep depth and degree consistent for traverser api by @zhoney in #252
- Compatible with more date formats by @Linary in #286
- Optimize hbase with multi-get for g.V(ids) by @Linary in #279
- Remove the explicit config items about GremlinServer by @Linary in #290
- fix bug: index rebuild exceeds 80w limit and 65536 cassandra limit by @zhoney in #292
- fix bug: query vertices by ids with hasId() filter when using number id by @zhoney in #303
- Support range sortKey feature by @javeme in #296
- fix bug: the metrics of caches is lost by @javeme in #321
- Limit the name of the gremlin request less than 256 bytes by @Linary in #313
- fix bug primitive system id reservation not work by @javeme in #315
- Add travis api-test by @Linary in #299
- Avoid create index label on property which contains primary key by @Linary in #317
- improve schema serialization in BinarySerializer by @Linary in #316
- fix bug: perf example cost time should exclude time of env-init by @javeme in #329
- Some small modification by @Linary in #331
- fix race condition in BackendSessionPool.close() by @javeme in #330
- remove left index in async mode by @zhoney in #285
- Support for progress updates for async gremlin job by @javeme in #325
- Add config hbase.zookeeper.znode.parent for hbase backend by @Linary in #333
- fix bug of aysnc left index delete by @zhoney in #336
- Fix bug: Backend metrics of rocksdb disk usage can't work by @Linary in #326
- add shutdown hook to close thread pool automatically by @javeme in #355
- Throw 503 error if all workers are busy by @Linary in #343
- Fix rocksdb warning after upgrading to version 5.17.2 by @javeme in #374
- Support customized plugin when init store by @Linary in #364
- Set tx capacity lower limit be COMMIT_BATCH(500) by @zhoney in #379
- Support code coverage statistics by @Linary in #376
- prepare for mapdb backend by @javeme in #357
- delete bcloud file by @javeme in #382
- implement customized paths and crosspoints API by @zhoney in #306
- fix remove secondary index of cassandra backend exceeding 65535 limit by @zhoney in #386
- Let VertexAPI use simplified property serializer by @Linary in #332
- Support pagination when single index query by @Linary in #328
- Support paging for scan api by @zhoney in #361
- Revert "Support paging for scan api" by @javeme in #427
- Support paging for scan api by @zhoney in #428
- add PageState.page() to simplify access to page info by @javeme in #429
- add HugeGraphServer as system service by @zhoney in #170
- add skip_degree arg for shortest-path API by @zhoney in #433
- Improve schema deletion by paging for large data by @zhoney in #417
- Uniform variable name: Iterator iter by @javeme in #438
- Add replication setting for NetworkTopologyStrategy of Cassandra by @zhoney in #448
- Fix serialization tests run failed by @Linary in #450
- fix: tinkerpop test does not close graph at the end by @javeme in #453
- Fix scylladb backend doesn't support label query in page by @Linary in #455
- Fix bug in quering with joint labels by @Linary in #456
- Reduce the version of Cassandra to 3.10 for ci by @javeme in #464
- Add personalrank and neighborrank RESTful API by @Linary in #274
- optimize: don't do remove-index if it's CREATING status by @javeme in #465
- Improve some comments by @Linary in #472
- Prevent misleading warning messages with HK2 MultiException by @javeme in #492
- Bump up to version 0.10.0 by @Linary in #471
- Add unit tests for com.baidu.hugegraph.util.StringUtil by @EricHetti in #485
- update hbase zookeeper ip addresses config description in code by @oushu1zhangxiangxuan1 in #517
- Support PostgreSQL and CockroachDB backends by @zhoney in #484
- Fix remaining count error when query edge in page by @Linary in #515
- Reject request when there is too little free memory by @Linary in #476
- fix: edges cache is not cleared when clearing backend by @javeme in #488
- Uniform variable name: vertexes to vertices by @Linary in #529
- improve StringUtilTest by @javeme in #526
- suppress error log when postgre database does not exist by @javeme in #527
- Fix bug in List property by @Linary in #534
- Fix bug chinese character show garbled in MySQL by @Linary in #543
- delete useless options of postgresql by @wupengfei2 in #533
- Add api white list and rate limiter for gc by @Linary in #522
- improve error message with readable HugeType by @javeme in #546
- improve README.md thanks section by @zhoney in #548
- support negative number for index by @javeme in #513
- add conf entry jdbc.storage_engine to change storage engine by @wenzhenghu in #555
- fix existDatabase(), clearBackend() and rollback() for postgresql by @zhoney in #531
- improve implicit parameter name max_depth by @javeme in #563
- Shutdown RestServer and GremlinServer when stop by @Linary in #554
- Support to detect connection before using if needed by @Linary in #562
- fixed repeat lock in LocksTable by @zhoney in #566
- don't print non-valuable parameters for Query by @javeme in #583
- remove useless import and var by @wupengfei2 in #585
- update default config properties by @imbajin in #575
- Reduce size of the variables type used by @javeme in #581
- add cache options for rocksdb by @javeme in #567
- Add source_in_ring args for rings API by @zhoney in #528
- improve exception type if failed while waiting for async task by @javeme in #596
- fix: the vertex from edges is missing properties by @javeme in #604
- fix cross-close the underlying rocksdb session pool by @javeme in #598
- fix query limit is out of control in super node case by @javeme in #607
- Fix query by eq with range index in page only return first page data by @Linary in #614
- Support batch updating elements' property by multiple strategy by @imbajin in #493
- Not allowed perform sensitive operations via gremlin by @Linary in #176
- Support uuid id type by @javeme in #618
- fix query limit error after deleting some records by @javeme in #610
- support shard-index and vertex + sortkey prefix query by @zhoney in #574
- map indexlabel various range types to RANGE by @zhoney in #628
- Improve some metrics name in vertex/edge api by @Linary in #631
- Add G1GC & GC log config by @imbajin in #616
- fix example1 query error by @javeme in #638
- Hbase: handle partial failures in batch commit by @javeme in #634
- Split label index table by @javeme in #635
- support unique index by @zhoney in #636
- fix NPE at compareNumber() when filtering index query by @javeme in #629
- support query edges of vertex in page by @zhoney in #659
- Reduce the storage of vertex/edge property by @javeme in #650
- support rest api timeout by @javeme in #674
- encode numeric values in secondary index and primary-key by @javeme in #676
- fix bug update property to value of removed element with unique index by @zhoney in #679
- Support to verify license by @Linary in #645
- sort results of search index by matched count by @javeme in #653
- fix: left index of system type can't be deleted by @javeme in #675
- Upgrade tinkerpop version to 3.4.3 by @Linary in #648
- Reduce the storage of vertex/edge id by @javeme in #661
- support bin serialization for cassandra by @javeme in #680
- Relax restrictions on minimum memory by @Linary in #689
- Optimize update logic & add a new strategy by @imbajin in #673
- fix uuid serialize by @javeme in #694
- fix: Invalid column family specified in write batch by @javeme in #701
- support aggregate property by @zhoney in #693
- Support get schema by names by @Linary in #686
- Adapt the unit of hbase metrics value by @imbajin in #713
- remove scale index when update task status by @zhoney in #719
- delete ScyllaDB label index tables by @javeme in #717
- Let codecov contains api-test by @Linary in #711
- Fix mvn install error by @Linary in #726
- Verify md5 for public cert by @Linary in #725
- support paging for tasks API by @javeme in #720
- fix: The backend store of 'xx' has not been initialized by @javeme in #708
- Fix cassandra delete edge with label covered too many lines by @Linary in #727
- fix mistake multiple backend info as no backend info by @zhoney in #723
- open rocksdb graph store using multi-threads when multi disks by @zhoney in #721
- fix task result is null even it is COMPLETED by @javeme in #732
- Unified license related files name by @Linary in #733
- Upgrade RocksDB from v5.17.2 to v6.3.6 by @javeme in #722
- upgrade hugegraph-core jar version to 0.10.4 by @zhoney in #736
- Put some unsolvable tests into methods filter by @Linary in #714
- Upgrade version to 0.11.0 by @Linary in #739
- split travis test into two stages: core and tinkerpop by @javeme in #738
- Start service should fail quickly when occured exception by @Linary in #748
- support fusiform similarity API by @zhoney in #671
- rest api: query vertices&edges with multi properties by paging by @javeme in #759
- fix TableNotFoundException when truncate HBase store by @zhoney in #771
- fix: Requested permits (0) must be positive by @javeme in #773
- Fix start.hugegraph.sh timeout when config authentication by @Linary in #761
- fix connect failed of mysql backend when using studio gremlin by @zhoney in #765
- Delay checking for vertex non-nullable properties by @Linary in #756
- fix some warnings for v0.11 by @javeme in #789
- Record create time when create schema by @Linary in #746
- fix bug traverseByLabel() not set page every loop by @zhoney in #805
- fix mismatched exception type of unique index query by @zhoney in #797
- fix "List option must be registered..." with compression_per_level by @javeme in #775
- Fix: batch update edge with edgeId and unmatched sortKeys will create a new edge by @Linary in #819
- Not allowed empty primary values by @Linary in #847
- add some rocksdb options by @javeme in #825
- add "nodes" metadata for backends by @zhoney in #821
- Fix mac check bug by @Linary in #830
- Fix override vertex/edge on some backends by @Linary in #820
- add graph name check in gremlin and rest config by @zhoney in #854
- Fix mysql backend openWithoutDB ssl-mode not work by @Linary in #842
- fix task-cancel error with saving failure task by @javeme in #827
- Upgrade jackson version to 2.10.2 by @Linary in #859
- speed up hbase truncate with disableTableAsync() by @javeme in #868
- fix bug of missing offset with index query by @javeme in #866
- fix leak of absolute path in gremlin by @zhoney in #871
- fix NPE with reconnectIfNeeded() by @javeme in #874
- Fix postgresql JDBC_URL without suffix '/' by @zhoney in #891
- allow system async task in gremlin context by @zhoney in #892
- Fix rocksdb oom with g.V().hasLabel().count() by @javeme in #823
- sm allow cassandra backend creating thread as needed while execute cql by @zhoney in #896
- Set GremlinServer default channelizer to WsAndHttpChannelizer by @Linary in #903
- add option vertex.check_adjacent_vertex_exist by @javeme in #837
- update Thanks in README by @zhoney in #906
- Add tilde at front of userdata 'create_time' by @Linary in #909
- encode label id in string index by @javeme in #894
- check for unexpected sysprop query by @javeme in #862
- Export directions and traversal algorithms to gremlin server by @zhoney in #904
- optimize aggregate functions by @javeme in #813
- prepare for ap algo by @javeme in #921
- add 5 TP algorithm by @zhoney in #919
- Increase task result limit by @Linary in #925
- Support range query for rest api like P.gt(18)/P.lt(3.14) by @javeme in #782
- Support offheap cache by @javeme in #846
- check cache value size by @javeme in #933
- improve 5-tp algorithms by @zhoney in #936
- fix rocksdb memory statistics by @kidleaf-jiang in #937
- fix ring assert error and handle two A->B not ring by @zhoney in #939
- cache limit vertex properties size by @javeme in #941
- cache limit vertex sub-properties size by @javeme in #942
- optimize list property read by @javeme in #943
- optimize EdgeId.asString() by @javeme in #946
- add cache type option, allowed config l1 or l2 by @javeme in #945
- fix fusiform similarity not reset access number after calling by @zhoney in #947
- Let HugeTraverser.topN() support template Key by @javeme in #949
- fix: Invalid limit 10000000, must be <= capacity by @javeme in #950
- Skip query if there is no any property key in schema by @javeme in #951
- implement users store and access control by @javeme in #749
- fix permission overflow from return results by @javeme in #969
- support permission for property by @javeme in #971
- add grant permission api by @javeme in #985
- improve rocksdb count() by @javeme in #988
- support ttl for vertex and edge by @zhoney in #794
- Hbase shard improve and implement mysql/memory shard by @zhoney in #974
- support results count for kneighbor/kout/rings by @zhoney in #995
- fix auth bugs by @javeme in #1002
- throw ExistedException if create schemas with same name and properties different by @houzhizhen in #1009
- remove some conflict errors and fix warnings by @javeme in #1003
- fix neq condition matched index by @javeme in #1007
- fix auth: property of int or date type can't be filtered by @javeme in #1004
- fix not check last step of count api by @zhoney in #1013
- Unified date json format for gremlin api and rest api by @javeme in #1014
- add copy-schema support by @javeme in #1024
- add ownedBy() for HugeTraverser.Path by @javeme in #1028
- rename auth api and fix some bugs by @javeme in #1033
- close tx in vertex/edge query rest api by @zhoney in #1038
- close tx in vertex/edge query only if needed by @zhoney in #1039
- Fix gremlin-console can't work by @Linary in #1027
- Show schema status in schema API by @javeme in #1035
- fix count api bug when last step count in (degree, skipDegree) by @zhoney in #1042
- Skip expired_time when not needed by @javeme in #1044
- fix bugs: schema existence check by @javeme in #1045
- service support https access by @shzcore in #1036
- fix: change default minimum log level to TRACE by @imbajin in #1050
- small perf improve by @javeme in #1053
- bump up common 1.7.8 by @javeme in #1058
- doc: add code style config file for IDEA by @imbajin in #1060
- fix mysql execute() not always auto-commit by @zhoney in #1064
- Async job schedule by @zhoney in #1030
- fix query adjacent by filtering conditions with limit by @javeme in #1057
- Bump log4j2.version from 2.8.2 to 2.13.3 by @dependabot in #1069
- fix some warnings by @javeme in #1076
- clear cache when graph close by @javeme in #1078
- refactor expired results filter by @javeme in #1087
- fix hbase.znode_parent default value in hugegraph.properties by @zekisong in #1085
- fix task scheduler bugs: dead lock and dup server-info by @javeme in #1079
- Print heap dump error when oom by @Linary in #1093
- Fix bug: range indexlabel check not correct by @Linary in #1090
- fix remove left index bug by @zhoney in #1101
- fix ci too much exception "pk table not exist" by @zhoney in #1098
- fix exceeded 80w when query by two indexes with limit by @javeme in #1088
- lock graph when close() by @javeme in #1104
- add rebuild(boolean) for index label create by @zhoney in #1106
- Initially implement distributed consistency with jraft by @Linary in #1020
- Fix vertex number id serailized in string by @Linary in #1109
- fix auth: init-store no auth context and graphs-list with non STATUS-READ permission by @javeme in #1115
- fix NoSuchElementException of shortest path by @zhoney in #1116
- Fix hang when closeTaskTx if current thread is task worker by @javeme in #1111
- adapt tinkerpop-test for v0.11 by @javeme in #1048
- add entrance for pagerank and wcc by @zhoney in #1114
- Update cache from raft StateMachine by @Linary in #1119
- fix bug execute computer job by @zhoney in #1120
- Fix queryByRaft readIndex failed by @Linary in #1121
- fix tasks are sometimes submitted twice by @javeme in #1130
- Fix some raft backend node bugs by @Linary in #1133
- fix delete/read without READ permission throw 'no such id' by @javeme in #1134
- Fix the counter growth discontinuous in raft mode by @Linary in #1135
- Fix small date deserialize bug by @Linary in #1152
- Replace gzip compressor to lz4 when write mutations by @Linary in #1153
- fix OLTP algorithm not check if source/target vertex exist by @zhoney in #1156
- fix id compare between id types by @javeme in #1147
- improve vertex/edge delete perf by @javeme in #1150
- Add rate_limit.read to limit query rate by @Linary in #1158
- Fixed spelling errors and missing storage features.... by @echohlne in #1164
- implement RamTable by @javeme in #1183
- Solve some dependency conflicts by @Linary in #1184
- support property default value of vertex/edge by @javeme in #1182
- Add some raft options used to improve perf by @Linary in #1154
- Define loading mode to speed up when loading data by @Linary in #1188
- optimize schema cache perf through IntObjectMap(array) by @javeme in #1185
- return ajacent vertex with undefined label if custom vertex id override by @javeme in #1192
- release index-label-delete lock when do index rebuild by @zhoney in #1193
- fix schema-array-cache not update cache when updating schema by @javeme in #1197
- Use one raft node to manage three stores by @Linary in #1187
- use lz4 instead of gzip for StringEncoding compress/decompress by @zhoney in #1196
- Fix log4j error tips when run in gremlin console by @Linary in #1229
- Custom kout/kneighbor, multi-node-shortest-path, jaccard-similar and template paths by @zhoney in #1174
- set indexlabel invalid if create or rebuild failed by @zhoney in #1226
- Turn off csv reporter in default and change it's directory by @Linary in #1233
- support hbase enable kerberos authentication by @tmljob in #1234
- Let drop column family mutual exclusion with other operations by @Linary in #1202
- Support raft node control by @Linary in #1137
- add lpa/trianglecount/louvain computer api by @zhoney in #1175
- Move lz4 decompress to backend executor by @Linary in #1237
- cleanup warning for 0.11.2 by @javeme in #1243
- Fix weighted shortest path NPE by @zhoney in #1250
- unify TinkerPop spell by @zhoney in #1252
- Upgrade dependency version for release 0.11 by @Linary in #1248
- add ssl certificate file and default password by @shzcore in #1254
- rename EXPIRED_DELETE_BATCH to TASK_TTL_DELETE_BATCH by @houzhizhen in #1253
- Add raft forward operation to security check whitelist by @Linary in #1257
- Fix rocksdb instance not close properly by @Linary in #1264
- support rocksdb option level_compaction_dynamic_level_bytes by @javeme in #1262
- improve SSL options by @javeme in #1260
- Implement raft snapshot mechanism by rocksdb checkpoint by @Linary in #1247
- upgrade common version to 1.8.1 by @zhoney in #1271
- oltp concurrent requests share multi executors instead of one executor by @javeme in #1258
- Remove restserver.protocol option by @Linary in #1272
- Add Dockerfile for server & studio by @imbajin in #845
- Write snapshot explicity after truncate backend by @Linary in #1275
- Fix leader doesn't update cache for request forwarded by follower by @Linary in #1279
- fix weighted shortest path result not stable by @zhoney in #1280
New Contributors
- @EricHetti made their first contribution in #485
- @oushu1zhangxiangxuan1 made their first contribution in #517
- @wupengfei2 made their first contribution in #533
- @wenzhenghu made their first contribution in #555
- @kidleaf-jiang made their first contribution in #937
- @houzhizhen made their first contribution in #1009
- @shzcore made their first contribution in #1036
- @zekisong made their first contribution in #1085
- @echohlne made their first contribution in #1164
Full Changelog: v0.8.0...v0.11.2