Commit Graph

482 Commits

Author SHA1 Message Date
SunnyBoy-WYH 869fc81811
feat(api): support embedded arthas agent in hugegraph-server (#2278) 2023-10-20 10:15:51 +08:00
SunnyBoy-WYH fc9bc2866e
feat(api): support metric API Prometheus format & add statistic metric api (#2286) 2023-10-08 20:21:09 +08:00
Wu Chencan 8e99d85d33
feat(api-core): support label & property filtering for both edge and vertex & support kout dfs mode (#2295)
- 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>
2023-09-10 16:47:45 +08:00
DanGuge d12f5734e6
feat(api&core): in oltp apis, add statistics info and support full info about vertices and edges (#2262)
* 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
2023-08-19 13:41:08 +08:00
conghuhu 5df28fa2ca
feat(perf): support JMH benchmark in HG-test module (#2238)
* chore: add param to max cap

* chore: add non argument constructor to IntMapByEcSegment

---------

Co-authored-by: shiyi <congguoqing.cgq@alibaba-inc.com>
2023-07-17 16:50:35 +08:00
Liu Xiao 5227248799
fix(core): support order by id (#2233)
* revert sslmode
2023-06-21 18:12:02 +08:00
Liu Xiao 324cbb2c1f
collect option ssl_mode for hugegraph-test (#2235) 2023-06-21 17:46:21 +08:00
Bond 4b74ab6cec
feat: use an enhanced CypherAPI to refactor it (#2143)
Co-authored-by: lynn.bond <liyan75@baidu.com>
Co-authored-by: imbajin <jin@apache.org>
2023-03-15 22:36:13 +08:00
vaughn 31c6c6df13
feat: support task auto manage by server role state machine (#2130) 2023-03-08 23:20:36 +08:00
imbajin 6c0d596eac
refact: use standard UTF-8 charset & enhance CI configs (#2095) 2023-03-07 23:10:31 +08:00
vaughn eed6103359
fix: some reference url and 3rd-party file license (#2100) 2023-02-07 23:44:05 +08:00
imbajin fc6e3702da
refact: update with release branch (#2091)
* fix: add style file back for building

* fix: script no permission

* chore: add NOTICE and LICENSE to binary package and add DISCLAIMER file

Co-authored-by: Simon Cheung <ming@apache.org>
Co-authored-by: vaughn <vaughn@apache.org>
Co-authored-by: 青年 <1043706593@qq.com>
2023-01-17 01:51:26 +08:00
青年 91a616bb38
fix: support null value for gremlin test (#2061)
* fix(core): adapt HugeVertex.property() with null values

Co-authored-by: imbajin <jin@apache.org>
2023-01-16 22:53:24 +08:00
青年 b385c45c35
chore:remove copyright in license header (#2090)
Co-authored-by: imbajin <jin@apache.org>
2023-01-13 23:26:52 +08:00
Jermy Li eb7a65c440
refact: fallback queryNumber() if there are uncommitted records (#2060) 2022-12-29 15:26:53 +08:00
vaughn 6c3170c496
chore: fix TinkerPop unit test (#2055)
* chore: don't support persistence for memory backend
* chore: setup graph by first step graph when graph is null
* chore: apply relations optimize logic
* chore: don't support null properties
* fix: g.V().has(empty).count() and g.V().count().as('a').select('a')
* fix: specify the code generation directory for raft.proto (#2057)
* fix: tinkerpop unit schema no define
* fix the style & clean some outdated code

Co-authored-by: Simon Cheung <ming@apache.org>
Co-authored-by: imbajin <jin@apache.org>
2022-12-26 22:41:46 +08:00
vaughn 85499f389b
fix: keep binary file (#2052) 2022-12-15 16:07:34 +08:00
imbajin 9cbb61862c
chore: prepare for apache v1.0.0 release (#2048)
* chore: apache release

* chore: update release script & remove redundant pom config
2022-12-14 17:52:01 +08:00
Simon Cheung 510b12ed6e
chore: update mysql scope to test (#2043)
* remove mysql dependency
* add mysql for hugegraph-test
* update run-api-test.sh
2022-12-05 20:23:38 +08:00
青年 3b44568e8b
fix outdated manifest version & use project.version instead (#2033)
Co-authored-by: imbajin <jin@apache.org>
2022-11-26 22:40:33 +08:00
Cong Zhao 6c9fe3a874
Fix tx leak in tests (#2031) 2022-11-25 18:57:56 +08:00
青年 67a689c86c refact: adapt all to apache package and dependencies (Breaking Changes) 2022-11-23 21:16:14 +08:00
青年 57462b057e
Feat/fix codeql (#2022)
* fix ConfigUtil.java CodeQL

* fix code checkstyle

Co-authored-by: Jermy Li <jermy@apache.org>
2022-11-20 18:39:43 +08:00
zyxxoo 19ef0ac203
remove word dependency to remove GPL license (#1998) 2022-10-31 12:05:22 +08:00
zyxxoo 66b167422f
fix: User-controlled data in numeric cast [#1987] (#1996)
* fix: User-controlled data in numeric cast [#1987]
2022-10-30 23:29:50 +08:00
seagle cc80d27745
fix redundant Checkstyle (#1896)
* add redundant

* add redundant check

* merge line

* update alignment

* delete duplicates check MissingSwitchDefault

* update wrap line

* update code style

* merge dev

* merge master
2022-10-30 16:16:21 +08:00
Jade Peng 07810249a5
refact(core): update dependencies version & adopt the new analyzer (#1989)
jraft 1.3.9->1.3.11
ohc-core 0.7.0->0.7.4
org.apdplat.word 1.3->1.3.1
hanlp portable-1.5.0->portable-1.8.3
lucene-analyzers-smartcn,lucene-core 7.4.0->8.11.2
jcseg-core->2.2.0 ->2.6.2
lz4-java 1.7.1->1.8.0
eclipse-collections 10.4.0->11.1.0
fastutil 8.1.0->8.4.0
jjwt 0.11.2->0.11.5

Co-authored-by: jadepeng <jqpeng@iflytek.com>
2022-10-26 23:11:30 +08:00
Jade Peng 88a8d782b8
improve analyzer code (#1990)
Co-authored-by: jadepeng <jqpeng@iflytek.com>
2022-10-26 22:57:41 +08:00
青年 8abf3d5524
chore: support check license header with RAT & fill the gaps (#1988) 2022-10-26 19:43:41 +08:00
xiaoleizi2016 b699c5cd62
refact: modify abnormal logs (#1948) 2022-10-08 19:27:38 +08:00
zyxxoo 51d29ac3a0
feat(core): cluster role automatic management (#1943)
* #1869 cluster role automatic management

* improve code

* FIX bug

* improve code

* improve code

* improve code

* improve code

* improve code

* improve code
2022-09-16 10:53:06 +08:00
Jermy Li 1d4b834c59
fix: can't shutdown when starting with exception (#1902)
Change-Id: If312aa4368bfd7af540818bc299ed219f4e9f335
2022-07-04 17:43:59 +08:00
Jermy Li a1055fe866
fix: Traversal.graph is empty in StepStrategy.apply() with `count().is(0)` (#1903) 2022-07-01 14:48:01 +08:00
Jermy Li bc43e5e943
bump up rocksdb version to 6.22 (#1742)
* bump up rocksdb version to 6.22
* comment siged delete-range key test due to rocksdb issue #8239
* bump to rocksdb 7.2.2
* add memtable_whole_key_filtering option
* add index_type option

Change-Id: I357f0c2ced0c63d1e357b52f7397fb936255b411
2022-06-07 11:21:32 +08:00
zyxxoo 2af01bc92d
Add system schema store (#1891)
* 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>
2022-06-02 16:42:46 +08:00
Linary 8609968e66
Improve some action for install snapshot and add peer (#1527)
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>
2022-05-16 19:34:25 +08:00
YangJiaqi bb88c36976
fix checkstyle : CypherApiTest (#1877) 2022-05-13 17:00:10 +08:00
Jade Peng cd09304f39
feat: support query data by use cypher language (#1866)
implement #1748

Co-authored-by: jadepeng <jqpeng@iflytek.com>
2022-05-12 14:38:56 +08:00
YangJiaqi 2d25938370
refact: move java class to test/java & fix test code check-style (#1842) 2022-05-12 12:29:21 +08:00
seagle f6f8c3eda6
fix checkstyle core-util issue (#1855) 2022-05-11 15:34:17 +08:00
Jermy Li 044a15e569
cassandra metrics workaround: translate ipv4 to ipv6 (#1853)
* log cassandra probe host

* Translate IPv4 to IPv6 to fix issue #1843

* enable cassandra/scylladb metrics test case

* resume debug log
2022-04-29 14:53:28 +08:00
zyxxoo 85b01b2333
chore: java 11 version support (#1653) 2022-04-25 19:13:30 +08:00
Jermy Li e6a24fc6a4
fix cassandra metrics: Malformed IPv6 address at index (#1844)
* log cassandra probe host

Change-Id: Ida6b7f2675c86b6b241977075f0ef137a38fdd8d

* log error info

Change-Id: I18314c3b713304048e1570584ab81998c66366b3

* Translate IPv4 to IPv6 to fix issue #1843

Change-Id: I1e04122d9e0cd7cd5986e9b33b0fad74d22c1937

* remove '[]' from NodeProbe.fmtUrl

Change-Id: I1a8ef310227acfc00c023104c172779a5a511cbe

* log Patch NodeProbe.fmtUrl

Change-Id: I20291e6a00875f4287d2ae1960693cae354f4f38

* revert setFinalInternalState() since ineffective

Change-Id: I5627e9af13f89e0593ffed320f213c8b5b330735

* disable cassandra/scylladb metrics test case as workaround

Change-Id: I35b6f99468cfbb1ecc0dc066fbc8f1f95498a3da
2022-04-25 14:31:29 +08:00
Jermy Li 8d52abb2a0
HugeGraph-622: Bump up to version 0.13.0 (#1740) 2022-04-21 14:15:46 +08:00
Jermy Li 1f5d502e0e
fix: query by within + Text.contains (#1803)
fix #1794
2022-04-19 19:11:58 +08:00
Jermy Li 74c0e2dc8a
BackendEntry.columns() var-arg to single-arg avoid array-construct (#1787) 2022-04-18 14:35:22 +08:00
May c3c9f2a8b8
remove unused import (#1821) 2022-04-16 12:05:39 +08:00
YangJiaqi 035a03e1df
feat(hbase): support hash rowkey struct & pre-init tables (#1696) 2022-04-06 17:17:49 +08:00
Josh Soref 5368f3205e
Spelling corrections (#1798)
Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>
Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2022-03-30 17:12:18 +08:00
imbajin b591f7d8b3
refact: fix some bugs & clean code (#1741)
* 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>
2022-03-21 17:26:38 +08:00