tips:
- this feat works when auth mode was set.
- this feat works when white ip status was enabled.
because now PD is unavailable,just use java list; when pd ready , we can checkout pd.
- Support label & property filtering for both edge and vertex and the filtering is implemented in Kout Post and Kneighbor - Post Apis, reducing unnecessary graph searches through pruning
- Support Kout dfs mode in Kout Post Api
Originally only edge label filtering was supported, now label and property filtering for edge and vertex is supported.
- add classes VEStepEntity and VEStep to support serialization in request
- add class Steps to support filtering of edge and vertex in runtime(core)
- add new method edgesOfVertex(Id source, Steps steps) to support label and property filtering for both edge and vertex in HugeTraverser.java
---------
Co-authored-by: imbajin <jin@apache.org>
* chore: improve gitignore file
* feat: add ApiMeasure to collect runtime data
ApiMeasure will count the number of vertices and edges traversed at runtime, and the time the api takes to execute
* feat: Add ApiMeasure to JsonSerializer and Modify the Serializer interface
* JsonSerializer: return measure information in api response
* Serializer: fit the feature that returns complete information about vertices and edges
* refactor: format code based on hugegraph-style.xml
* feat: Add statistics information in all oltp restful apis response and Support full information about vertices and edges
Statistics information:
* add vertexIterCounter and edgeIterCounter in HugeTraverser.java to track traversed vertices and edges at run time
* modify all oltp restful apis to add statistics information in response
Full information about vertices and edges:
* add 'with_vertex' and 'with_edge' parameter option in apis
* modify oltp apis to support vertex and edge information in api response
* add EdgeRecord in HugeTraverser.java to record edges at run time and generate the edge information returned in api response
* modify Path and PathSet in HugeTraverser.java to support full edge information storage
* modify all traversers to support track of edge information at run time
* fix: numeric cast
* fix: Jaccard Similarity api test
* fix: adjust the code style and naming convention
* Empty commit
* Empty commit
* fix:
1. change System.currentTimeMillis() to System.nanoTime();
2. modify addCount()
* fix: rollback change in .gitignore
* fix: rollback ServerOptions.java code style
* fix: rollback API.java code style and add exception in else branch
* fix: fix code style
* fix: name style & code style
* rename edgeRecord to edgeResults
* fix Request class code style in SameNeighborsAPI.java
* support updateIfPresent/updateIfAbsent operation
Change-Id: I63f179e0b6c2e2f86e6ae185ce3a7115a4da7657
* implement for other backends
Change-Id: Iab9ab42ba0504664ce3320c8905b2d92d01d849a
* fix mysql/pgsql
Change-Id: I397fd5d300c563cd9298b76ab336bff78f2564ea
* call updateIfAbsent() for schema insert
Change-Id: I02989962791fa369600f8dedbfd56e2b40c79077
* add updateSchema() api for schema tx
Change-Id: I760db3c964f913d3c552c1d85193d9f3e0d401a4
* Do schema update in the lock block
Change-Id: I2daad8825939b04ff9b1374fff930ac9c4173f72
* fix '~task_status' not indexed in label '~task'
Change-Id: I6383df825a003ff0e3f619398ee7c2873194eb56
* Add meta table into system store
* Add system schema store
* Add test case for read version
* Let AbstractBackendStore impl default storedVersion()
* fix small bug og HugeProject
* add test for SystemSchemaStore
* fix initStore schema missed
Change-Id: I5c9d65c4ae022cb84592e8f2aa57bd7485cd12e4
Co-authored-by: liningrui <liningrui@baidu.com>
1. Fix bug that relative path need normalize when load snapshot
2. Use zip decompresser since decompress tar file may lead dead loop
3. Move raft.group_peers from graph-config into rest-server-config
4. Pass raft.endpoint and raft.group_peers from server to core
5. Let RestServer start before GremlinServer
6. Use read-index to ensure the raft log caught up for new node
7. Let add_peer and remove_peer API work in async job
8. Use shared rpc server and delete raft.endpoint
Change-Id: I7de3d98cb51c3b7c32a4f19a0d99ed622f78d331
Co-authored-by: Zhangmei Li <lizhangmei@baidu.com>
* feat(api): Support adamic-adar & resource-allocation algorithms
* split into 2 class
* enhance a string of code logic
* keep NO_LIMIT now
* Update EdgeStep.java
Co-authored-by: imbajin <imbajin@users.noreply.github.com>