Graphscope

Latest version: v0.29.0

Safety actively analyzes 681790 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 6

0.29.0

We are delighted to bring a number of improvements to GraphScope, alongside the GraphScope 0.29.0 release. This release contains many important features and improvements to GraphScope FLEX、`gsctl` command-line utility、Graph Interactive Engine (GIE) and Groot persistent storage.

We highlight the following improvements included in this release:

**1. `gsctl` command-line utility**
[gsctl](https://graphscope.io/docs/latest/utilities/gs) is a command-line utility for GraphScope. It provides a set of functionalities to make it easy to use GraphScope. These functionalities include building images and packages, managing sessions and resources, and more.

**Install/Update gsctl**
bash
$ pip3 install gsctl
or force reinstall gsctl by:
$ pip3 install gsctl --force-reinstall -U


The gsctl command-line utility supports two modes of operation: utility scripts and client/server mode. You can switch between these modes using the `gsctl connect` and `gsctl close` commands.

**Utility Scripts**
Default, the gsctl provide helper functions and utilities that can be run using gsctl alone. gsctl acts as the command-line entrypoint for GraphScope. Some examples of utility scripts are:

- `gsctl install-deps`, install dependencies for building GraphScope.
- `gsctl connect`, connect to the launched coordinator with configuration file ~/.gsctl.
- `gsctl close`, Close the connection from the coordinator.
- `gsctl flexbuild`, Build docker image for Interactive, Insight product.
- `gsctl version`, Print the client version information.
- `gsctl instance`, Deploy, destroy a GraphScope Flex instance.

**Client/Server Mode**
To switch to the client/server mode, use the gsctl connect command. By default, this command connects gsctl to a launched coordinator using the configuration file located at ${HOME}/.gsctl; If --coordinator-endpoint parameter is specified, it will treat it as current context and override the configuration file.

Once connected, you can use gsctl to communicate with the coordinator which serves the [specific Flex product](https://graphscope.io/docs/latest/flex/interactive_intro) behind it.

bash
$ gsctl use GRAPH modern_graph
Using GRAPH modern_graph


**2. 🎉 New Product: Graphscope Portal**

We are delighted to announce the release of GraphScope Portal, a user-friendly web interface designed to simplify graph data management with GraphScope. It offers one-stop access to data modeling, importing, querying, and fully supports the Interactive computing engine with the GraphScope Flex architecture.For detailed usage, please refer to: https://github.com/GraphScope/portal

![gs-portal](https://github.com/user-attachments/assets/93add757-d77e-4530-8c6f-85028152a3a1)

**3. FLEX Interactive**

- Interactive now supports executing ad-hoc Cypher queries directly, without the need to compile them into stored procedures. Users can [install Interactive](https://graphscope.io/docs/latest/flex/interactive/installation), [submit Cypher queries](https://graphscope.io/docs/latest/flex/interactive/getting_started#submit-cypher-queries), and immediately experience improved query performance.
- Offers the ability to create stored procedures using [C++](https://graphscope.io/docs/latest/flex/interactive/development/stored_procedure/cpp_procedure).
- Enhance the ability of gsctl on Interactive. Including support customizing the configuration of service, registering cpp stored procedures via gsctl.
- Adapt to the unified error code of GraphScope.
- Improve the robustness and stability.

**4. Enhancements for GIE**

- New Functionalities:
- Support PathExpand with the TRAIL option. Currently, we support PATH_OPT values: ARBITRARY (allowing the duplication of vertices or edges), SIMPLE (no duplicated nodes), and TRAIL (no duplicated edges).
- Support elementMap() for path in Gremlin, to project id, label and properties of each element in path.
- Support Optional Match in Cypher to search for the pattern described in it, while using nulls for missing parts of the pattern.
- Support UNWIND in Cypher to unfold elements from a collection type.

More details can be referred in [Cypher Support Doc](https://graphscope.io/docs/latest/interactive_engine/neo4j/supported_cypher) and [Gremlin Support Doc](https://graphscope.io/docs/latest/interactive_engine/tinkerpop/supported_gremlin_steps).

- Improve robustness and stability through extensive tests of the GOpt-based compilation stack.

- User-Friendly Improvements:
- Introducing a new benchmarking tool for comparing GIE with other systems, which supports multiple query languages such as Cypher and Gremlin, and handles versatile workloads including [LDBC IC](https://ldbcouncil.org/benchmarks/snb-interactive/) and [BI](https://ldbcouncil.org/benchmarks/snb-bi/), [LSQB](https://github.com/ldbc/lsqb), and [JOB](https://github.com/gregrahn/join-order-benchmark). For more information, please refer to the [Benchmark Tool Doc](https://graphscope.io/docs/latest/interactive_engine/benchmark_tool).
- Adaptation to the unified error code of GraphScope.

**5. Bug Fixes**

- Resolve the issue with the Java app's output.
- Resolve some memory leak problem of GAE Java SDK.
- Fixed a memory leak when reopening secondary groot instance.
- Fixed some bugs in type inference in GOpt
- Fixed some bugs in schema/statistics fetching in GOpt
- Fixed some bugs in caridinality estimation in GOpt
- Fixed result parsing for map structure in GIE
- Fixed precedence bug in Predicates expression evaluation in GIE

Docker Images

shell
Flex Interactive image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive:0.29.0

Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.29.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.29.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.29.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.29.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.29.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.29.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* refactor(interactive): Add dev_and_test tutorial for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3997
* fix(interactive): Fix metadata getting for loading config by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3915
* fix: make Groot compatible with jdk1.8 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4004
* fix(interactive): Give extra params such as snapshot id in the physical plan by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3999
* fix(interactive): Support `long_text` as primary key by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4011
* fix(interactive): Support elementMap() for a path entry in GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3992
* fix(interactive): Fix bug of loading edges with `long_text` property by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4018
* fix(interactive): Fixing error messages receiving in Python SDK. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4023
* fix(interactive): Add graph_id/proc_id type check for python sdk by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4024
* fix(interactive): Enhance input file path parsing in loadingConfig by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4026
* refactor(interactive): Add method to get `edge_num` and some code refactor by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4029
* fix(interactive): Fix Result Parsing Mismatch Errors of `Map` Structure by shirly121 in https://github.com/alibaba/GraphScope/pull/4006
* fix(interactive): Add meta data information of IMDB dataset by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4015
* fix(interactive): Support parsing quoting_char when reading header row from csv by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4031
* refactor(interactive): Refine Interactive SDK documentation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3978
* refactor(interactive): Refine the example cypher stored procedures by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4044
* fix(interactive): refine the logs in ExpStore dataloading by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4042
* fix(interactive): fix bug in hashcode() for PatternOrder by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4013
* fix: get stored procedure failed with long_text type by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4045
* docs: Update README.md by fixing typos. by Jiaohm in https://github.com/alibaba/GraphScope/pull/4007
* fix(analytical): add check direction for triangles by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4049
* refactor(interactive): Remove some unnecessary logging by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4055
* chore: bump setuptools from 65.7.0 to 70.0.0 in /coordinator by dependabot in https://github.com/alibaba/GraphScope/pull/4046
* fix: No module named 'graphscope.flex.rest.api' in gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4061
* fix(analytical): involving triangles by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4067
* refactor(interactive): Order procedures by default based on creation time. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4059
* refactor(interactive): Fix some CI problem and code support procedure-query-only mode by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4068
* fix(interactive): Improve the codegen error propagation from server to client by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4062
* fix(interactive): fix get empty store state error by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4071
* refactor(interactive): No need to restart compiler when restarting interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4076
* fix(interactive): Interactive CI hot fix by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4079
* fix(interactive): Standardized log for sls metric by bufapiqi in https://github.com/alibaba/GraphScope/pull/4073
* fix(interactive): Fix the ignoring of protoc-generated files for interactive python sdk by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4053
* fix(interactive): fix bulkloading data from csv files without header and add null_values option for arrow by liulx20 in https://github.com/alibaba/GraphScope/pull/4083
* fix(interactive): fix ci by liulx20 in https://github.com/alibaba/GraphScope/pull/4084
* refactor(interactive): Reorganize the http handler of interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4037
* fix(analytical): Resolve the issue of the Java app's results not being outputted by the context. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4082
* fix(interactive): Fix early stop in pegasus when unblock other output by lnfjpt in https://github.com/alibaba/GraphScope/pull/4086
* fix(interactive): Fix the problem of actor scope cancellation and creation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4089
* fix(interactive): move some statistics files by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4065
* chore: bump setuptools from 65.7.0 to 70.0.0 in /python by dependabot in https://github.com/alibaba/GraphScope/pull/4066
* fix(interactive): Fix multiple match problem when deserializing json string to GSDataType by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4091
* chore: update GitHub runner version by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4103
* feat(interactive): Add Create/Update/Get APIs for vertex/edge in Interactive by yqylh in https://github.com/alibaba/GraphScope/pull/4025
* feat(interactive): support adhoc query by liulx20 in https://github.com/alibaba/GraphScope/pull/4094
* fix(interactive): add orderBy operator for graphAlgo test case by liulx20 in https://github.com/alibaba/GraphScope/pull/4030
* refactor: Reorgnize error codes and unify the format of error message. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4100
* fix(interactive): add some experimental queries in paper by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4110
* fix(interactive): Fix receiver state error after reconnect in a short time by lnfjpt in https://github.com/alibaba/GraphScope/pull/4097
* docs: Update CITATION to latest GraphScope Flex paper. by yecol in https://github.com/alibaba/GraphScope/pull/4113
* refactor(interactive): Replace `CHECK` with std::runtime_error in `schema.cc` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4107
* refactor(interactive): Add test to ensure the robustness of Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4078
* feat: refactor the coordinator to support Groot under the unified schema architecture by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4087
* refactor(interactive): Refactor interactive image building by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4056
* fix(interactive): Support multiple properties edge expand by liulx20 in https://github.com/alibaba/GraphScope/pull/4115
* fix(interactive): fix bulking load with duplicate vertex id by liulx20 in https://github.com/alibaba/GraphScope/pull/4120
* refactor(interactive): Reduce the size of codegen library by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4118
* refactor(interactive): Remove some unnecessary check by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4116
* fix(interactive): add error message for file operations by liulx20 in https://github.com/alibaba/GraphScope/pull/4126
* fix(interactive): fix bugs in physical plan converter in GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4109
* fix(interactive): fix bug when concating simple path in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4102
* fix(interactive): Expose config for Glogue size and pattern decomposition size in Compiler in Charts by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4081
* fix(interactive): fix query cardinality of non-exist types or patterns by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4080
* fix(interactive): Accelerate replay speed. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4130
* fix(interactive): Make Statistics Configurable by Interface in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/4123
* fix(interactive): Fix Bugs of Property Loss of Edge Type After Type Inference by shirly121 in https://github.com/alibaba/GraphScope/pull/4032
* fix(interactive): Catch exceptions thrown by nlohmann json by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4127
* fix: Fix CI failure when building manylinux image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4122
* fix(interactive): fix sinking edge without properties. by liulx20 in https://github.com/alibaba/GraphScope/pull/4139
* fix(interactive): Fix files not closing properly after the db closed. by liulx20 in https://github.com/alibaba/GraphScope/pull/4136
* refactor: deprecate the legacy Jupyter extension by yecol in https://github.com/alibaba/GraphScope/pull/4140
* ci: Add github codeql to scan code. by yecol in https://github.com/alibaba/GraphScope/pull/4135
* chore(k8s): Add a tip about connecting with minikube by Thespica in https://github.com/alibaba/GraphScope/pull/4141
* ci: Refine docs deployment and PR check CI by yecol in https://github.com/alibaba/GraphScope/pull/4148
* ci: make codeql run less frequent by yecol in https://github.com/alibaba/GraphScope/pull/4149
* chore: add affinity to graphscope-store charts by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4155
* fix(interactive): refine Insight server error by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4152
* refactor(interactive): Introduce GOpt Doc by shirly121 in https://github.com/alibaba/GraphScope/pull/4157
* ci: Update pr-check.yml by yecol in https://github.com/alibaba/GraphScope/pull/4160
* fix(interactive): add runtime test tool by liulx20 in https://github.com/alibaba/GraphScope/pull/4156
* fix(interactive): fix some bug with GroupBy by liulx20 in https://github.com/alibaba/GraphScope/pull/4165
* feat(interactive): Add the CMake argument `OPTIMIZE_FOR_HOST` to prevent the use of host-specific CPU instructions when building images. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4159
* feat(interactive): add storage based on csr by lnfjpt in https://github.com/alibaba/GraphScope/pull/4150
* fix(interactive): fix some bug with Intersect by liulx20 in https://github.com/alibaba/GraphScope/pull/4168
* fix(interactive): Add max retry for ODPS fragment loader by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4166
* fix(interactive): fix zero property edge and schema check by yqylh in https://github.com/alibaba/GraphScope/pull/4131
* refactor(interactive): Adapt to unified error code by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4128
* fix(interactive): Fix Bugs in Dynamic Schema Fetching by shirly121 in https://github.com/alibaba/GraphScope/pull/4176
* fix(interactive): prepare more graphs for groot in ci tests by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4180
* fix(interactive): vertex with string oid is not support by liulx20 in https://github.com/alibaba/GraphScope/pull/4171
* fix(interactive): Shade Scala Package in Neo4j to Avoid Conflicts by shirly121 in https://github.com/alibaba/GraphScope/pull/4175
* fix: Improve the robustness of code by FLYLX in https://github.com/alibaba/GraphScope/pull/4170
* feat(interactive): Support `PathExpand` with `PATH_OPT=TRAIL` in GIE by fangfcg in https://github.com/alibaba/GraphScope/pull/4101
* fix(interactive): Add support for CBO on Interactive and fix some codgen errors by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3660
* Revert "feat(interactive): Support `PathExpand` with `PATH_OPT=TRAIL` in GIE" by shirly121 in https://github.com/alibaba/GraphScope/pull/4183
* feat(interactive): Support `PathExpand` with `PATH_OPT=TRAIL` in GIE by fangfcg in https://github.com/alibaba/GraphScope/pull/4184
* fix(analytical): Fix memory leak for FFI Objects by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4185
* refactor(interactive): Pass worker_id as a parameter instead of lazy_static by lnfjpt in https://github.com/alibaba/GraphScope/pull/4060
* refactor(interactive): Reduce Interactive image size by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4178
* fix(python): fix protobuf version is less than 5 error in mini test by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4186
* docs(interactive): Add customized deployment documentation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4179
* fix(interactive): Unify Error Code in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/4182
* refactor(interactive): Add Encoder/Decoder for Python SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4191
* fix(interactive): Fix robust test by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4193
* fix(interactive): Fix Bugs of Count Estimation When Feasible Plan Is Unavailable in Equivalent Set by shirly121 in https://github.com/alibaba/GraphScope/pull/4181
* feat: Reorganize install-deps in gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4154
* refactor(interactive): Rename the configuration file for Interactive, and remove some unused configuration by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4202
* fix(interactive): Refine Count Estimation of CBO to Achieve Optimal Plan When Integrating GOpt Into Neo4j by shirly121 in https://github.com/alibaba/GraphScope/pull/4198
* chore: fix several compile errors with downstream repos. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4196
* fix(interactive): Unified Query Cache for Gremlin and Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3890
* feat(interactive): Support customizing service configuration via `gsctl` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4205
* refactor(interactive): Add error handling for adhoc queries by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4188
* fix: upgrade boost version to v1.75.0 for leaf by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4211
* fix: remove openapi generated code by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4214
* fix(interactive): Fix Bugs of Type Inference in `both()` by shirly121 in https://github.com/alibaba/GraphScope/pull/4199
* fix(interactive): Fixing tutorial examples for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4212
* docs(interactive): Refine the documentation of Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4209
* refactor(interactive): Eliminate dummy installation in the Dockerfile. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4218
* refactor(interactive): Replacing nlohmann-json with rapidjson by yqylh in https://github.com/alibaba/GraphScope/pull/4194
* refactor(interactive): Support Fetching Meta By Calling Procedure in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/4215
* fix(interactive): Fix description passing for procedure creation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4223
* fix(interactive): Fix bug in scan operator by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4221
* feat: Support creating c++ stored procedure via gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4222
* fix(interactive): Fix typos by co63oc in https://github.com/alibaba/GraphScope/pull/4224
* fix(interactive): Correct the number of edge count by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4229
* refactor(interactive): Refactor the CMake configuration by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4217
* docs: update coordinator and gsctl doc by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4232
* ci: integrate install dependencies script of Interactive into gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4234
* fix(interactive): Support more cases for var in expression by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4230
* fix(interactive): Update flex/Dockerfile by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4236
* fix(interactive): Fix Bugs of `Pattern Not Found` in Glogue by shirly121 in https://github.com/alibaba/GraphScope/pull/4235
* docs(interactive): Add doc for creating cpp procedure with gsctl by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4231
* feat(interactive): Introduce new version of graph_algo example graph by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4153
* ci: fix ci problem during release gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4238
* feat(interactive): Support optional expand in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4213
* feat(interactive): Support builtin app in Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4242
* fix(interactive): Reuse the graph schema preprocessing to create the default graph schema when the service starts by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4239
* fix(interactive): fix `Predicates` to correctly process precedence in expression by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4041
* refactor(interactive): Support `Unfold` Operation in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/4241
* fix(interactive): Fix memory leak when reopening rocksdb instance by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4250
* refactor(interactive): Support User Defined Functions in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/4240
* feat(interactive): Introduce a new benchmark tool for GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4245
* fix(interactive): add cis for Insight with GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4200
* ci: improve codecov coverage by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4251
* chore: exlude simple and log4j jar from groot assembly by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4254
* chore: fix log configuration format by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4255
* chore: refine logs of groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/4258
* feat(interactive): Introduce `imdb` as another example graph for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4208
* fix(interactive): Fix the behavior the service restarting from workspace by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4259
* fix: codecov uploading problem by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4257
* ci: release interactive image nightly by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4262
* fix: hot fix for building interactive image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4264
* fix(interactive): Some fix in the Benchmark Tool by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4261
* fix: install-deps fails on macOS(intel) platform by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4266
* refactor(interactive): Refine the documentation of Interactive SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4268
* fix(interactive): Fix Concurrent Bugs in Graph Optimizer by shirly121 in https://github.com/alibaba/GraphScope/pull/4269
* fix(interactive): refine the logs when fetching statistics from groot by BingqingLyu in https://github.com/alibaba/GraphScope/pull/4267
* fix: fails of building learning image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/4273

New Contributors
* Jiaohm made their first contribution in https://github.com/alibaba/GraphScope/pull/4007
* Thespica made their first contribution in https://github.com/alibaba/GraphScope/pull/4141
* fangfcg made their first contribution in https://github.com/alibaba/GraphScope/pull/4101

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.28.0...v0.29.0

0.28.0

We are delighted to bring a number of improvements to GraphScope, alongside the GraphScope 0.28.0 release. This release contains many important features and improvements to GraphScope FLEX、`gsctl` command-line utility、Graph Interactive Engine (GIE) and Groot persistent storage.

We highlight the following improvements included in this release:

**1. FLEX Interactive**

**New functionality:**

- `gsctl`
- Support to deploy and destroy Interactive instance by `gsctl instance deploy/destroy --type interactive`
- Support to build Interactive image by `gsctl flexbuild interactive --app docker`
- Support connect and manage Interactive resource(schema, data loading, stored procedure) by `gsctl`
- Add Metadata store for interactive, and provide file-based implementation
- Release Interactive Java/Python SDK
- pip3 install gs_interactive:
- https://graphscope.io/docs/latest/flex/interactive/development/python/python_sdk
- https://graphscope.io/docs/latest/flex/interactive/development/java/java_sdk
- Support string type as vertex primary key
- Support devloping interactive in graphscope dev container.

**Refactor**

- Clean the data directory if bulk loading fails
- Adapt to the new schema and data type definition
- Fix signal handling and compiler launching
- Upgrade arrow version
- Refactor and reorganize the stored procedure interface.

**2. Enhancements for GIE**

Integrated GOpt, a new graph-native query optimizer, into GIE to boost query performance, featuring:

- Various heuristic optimization rules in Rule-Based Optimization (RBO), such as NotMatchToAntiJoinRule,FilterIntoJoinRule,FilterMatchRule, ExpandGetVFusionRule etc.
- A new Cost-Based Optimizer (CBO) leveraging high-order statistics for optimal plan selection.
- Enhanced s-t pathfinding with CBO to enable more efficient bidirectional searches.

More details can be reffered in the [paper](https://arxiv.org/pdf/2401.17786) and [doc](https://graphscope.io/docs/interactive_engine/optimizer).

Support some new functionality, including:

- elementId() to obtain the inner id of graph vertices or edges in Cypher and Gremlin
- support CASE WHEN in Cypher
- values() or valueMap() to obtain properties of each element in path in Gremlin

More details can be referred in [Cypher Support Doc](https://graphscope.io/docs/latest/interactive_engine/neo4j/supported_cypher) and [Gremlin Support Doc](https://graphscope.io/docs/latest/interactive_engine/tinkerpop/supported_gremlin_steps).


**3. Enhancements for Groot**

- Support add properties to existed label [3887](https://github.com/alibaba/GraphScope/pull/3887)


Docker Images

shell
Flex Interactive image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive:0.28.0

Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.28.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.28.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.28.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.28.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.28.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.28.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* fix(python): filetype should be in read_options by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3683
* fix(interactive): Introduce Calcite-Based CBO Optimizer in GIE Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3672
* fix(interactive): Support Intersect with PathExpand in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3600
* feat(learning): Integrate GLTorch with GraphScope in Server-Client Mode with K8S Deployment Supports by husimplicity in https://github.com/alibaba/GraphScope/pull/3624
* fix(interactive): Support Gremlin Subquery in Calcite-Based IR Layer by shirly121 in https://github.com/alibaba/GraphScope/pull/3636
* fix(interactive): Support Optional Match in Graph Optimizer by shirly121 in https://github.com/alibaba/GraphScope/pull/3687
* Pre-release v0.28.0 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3686
* fix(interactive): add `MovieTest` in the new compilation stack by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3690
* feat(interactive): Support stopping query service by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3698
* refactor(interactive): Return the correct http code by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3700
* refactor(interactive): Support Arithmetic Operations on Temporal Types by shirly121 in https://github.com/alibaba/GraphScope/pull/3701
* feat(interactive): support adding a store pod as a backup by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3703
* fix(interactive): Concurrent compact by bufapiqi in https://github.com/alibaba/GraphScope/pull/3706
* fix: Add mocking examples for Portal CI test by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3691
* fix(interactive): Clean data_dir when bulk_loader fails or cancelled by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3705
* Update README.md by wenyuanyu in https://github.com/alibaba/GraphScope/pull/3714
* chore: fix CI problems by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3712
* refactor(interactive): Introduce MetaDataStore for Interactive and provide file-based implementation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3696
* fix(interactive): Fix Bug of Duplicated Plan Id Generation After Failover by shirly121 in https://github.com/alibaba/GraphScope/pull/3710
* fix(interactive): Make rust log location conform to LOG_DIR environment variable. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3716
* fix(analytical): make clustering support undirected graph by acezen in https://github.com/alibaba/GraphScope/pull/3715
* fix(learning): Update graphlearn-torch image version by husimplicity in https://github.com/alibaba/GraphScope/pull/3721
* build(python): adjust the networkx version by haoxins in https://github.com/alibaba/GraphScope/pull/3463
* fix(interactive): Integrate multi-pod and one-pod charts into one. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3720
* feat(python): Unify the graph level load_from and save to API & Bump up vineyard to v0.22.0 by acezen in https://github.com/alibaba/GraphScope/pull/3610
* fix(interactive): Support Gremlin Match in Calcite-Based IR Layer by shirly121 in https://github.com/alibaba/GraphScope/pull/3694
* fix(interactive): Identify pk when it is fused with other predicates in IRCore by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3723
* fix(interactive): add a simpler `PhysicalPlanPrinter` in Insight Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3733
* fix(interactive): Fix Interactive CI test by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3738
* refactor(interactive): Add plugin loading test by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3743
* refactor(interactive): add plugin into graph meta by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3744
* feat(interactive): Adapt to new data type definition by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3749
* feat(interactive): Adapt to new unified schema by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3725
* fix(interactive): Make sure admin service always return response in `application/json` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3752
* chore: adapt to unified schema by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3750
* refactor(interactive): Remove `is_builtin` in GraphMeta by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3754
* fix(interactive): Fix some implementation of MetaService by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3759
* refactor(interactive): Support `elementId` Operator to Get Node Identifier in Cypher by shirly121 in https://github.com/alibaba/GraphScope/pull/3758
* fix(learning): Automate graphlearn-torch docker-build by husimplicity in https://github.com/alibaba/GraphScope/pull/3753
* feat(interactive): Introduce Interactive Java/Python SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3602
* fix(interactive): add error handling during file operations by liulx20 in https://github.com/alibaba/GraphScope/pull/3763
* fix(analytical): Fix `MessageStrategy` customization for java apps by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3762
* fix(interactive): Fix Bugs of `count()` in Gremlin Based on Calcite-IR Layer by shirly121 in https://github.com/alibaba/GraphScope/pull/3751
* fix(interactive): Fix waiting compiler ready by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3770
* fix(interactive): Fix Bugs of `Where Subquery` in Gremlin by shirly121 in https://github.com/alibaba/GraphScope/pull/3757
* fix(interactive): put pegasus hosts to configmap.yaml by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3777
* fix(interactive): Fix interactive doc and image building by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3767
* chore: Export realtime write and submitting query metrics in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3776
* feat(interactive): Implement API get_graph_schema for AdminService by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3780
* fix(interactive): Fix signal handling for interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3764
* fix(interactive): Support Join of Path Expand in Compiler & Runtime by shirly121 in https://github.com/alibaba/GraphScope/pull/3747
* refactor(interactive): Add more detail tracer for query handler by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3782
* fix(interactive): Do not use otel java agent to reduce export size by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3784
* fix(interactive): Fix the bug of plugin not being deleted when deleting graph by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3785
* fix(interactive): support a general `Intersect` implementation in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3689
* feat(interactive): Add current running graph meta info in `GetServiceStatus` API's response. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3793
* fix(interactive): Resolve bulk_loader path discovery issue by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3795
* chore: Support connecting to uptrace in kubernetes cluster. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3796
* fix(interactive): force flush epoch after reopened rocksdb by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3797
* fix(interactive): Fix some issues of AdminService by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3761
* fix(interactive): refine rust otel export by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3810
* fix(interactive): Fix bug in `ExpandGetVFusionRule`, and optimize when `GetV` has imprecise types by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3804
* chore: Add estimate memory usage command for gsctl by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3816
* fix(interactive): Refine `generate_sdk.sh` for interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3807
* fix(interactive): throw unsupported exception for multi-edge patterns in GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3805
* fix(interactive): Minor fix for interactive service by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3827
* chore: add an example of mpi-operator by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3828
* fix(interactive): Fix c++ procedure gen and codegen by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3835
* feat(interactive): Track the start_time of `hqps_service` and return in `get_service_status` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3838
* docs: Update the domain name of GraphScope PlayGround by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3825
* fix(learning): Adjust setting for ack cluster by husimplicity in https://github.com/alibaba/GraphScope/pull/3842
* fix(interactive): Remove dummy code by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3840
* fix(interactive): Support identical plugin names for distinct plugins across graphs. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3846
* feat(interactive): Refine `AppBase` and refactor procedure calling, implement call_proc in SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3815
* fix(interactive): Fix Bugs of Type Inference in `PathExpand` by shirly121 in https://github.com/alibaba/GraphScope/pull/3837
* fix(interactive): Introduce Statistics Interface Abstraction in MetaData by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3843
* fix(interactive): Fix submitting cpp procedure with raw input format by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3850
* fix(interactive): Fix `stored_procedure` parsing in old-version schema and refactor CI by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3853
* fix(interactive): Fix CI and add `list_graphs` test by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3858
* fix(interactive): Fix Bugs of Primary Key Identification in Gremlin Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3830
* fix(interactive): Support using string as primary key by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3857
* fix(interactive): Fix `creation_time` error by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3851
* fix(interactive): avoid introduce pb to stored procedure by liulx20 in https://github.com/alibaba/GraphScope/pull/3861
* fix(learning): enable glt in config by husimplicity in https://github.com/alibaba/GraphScope/pull/3852
* fix(interactive): Fix interactive `openapi.yaml` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3867
* fix(interactive): Minor fix: service status is stopped after initialized. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3871
* fix(interactive): Install `nlohmann/json.hpp` as it is needed by procedure compilation by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3872
* fix(interactive): Fix Bugs of GOpt Caused By Multiple Filters of Single Vertex by shirly121 in https://github.com/alibaba/GraphScope/pull/3831
* fix(interactive): add `memory level` option for interactive server by liulx20 in https://github.com/alibaba/GraphScope/pull/3877
* fix(interactive): fix the compact thread count by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3882
* refactor(interactive): Refine Interactive SDK `call_proc` API design by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3881
* Update Latest News on README.md by yecol in https://github.com/alibaba/GraphScope/pull/3885
* feat(analytical): Support using customized writable as vdata,edata for Giraph apps by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3873
* fix(interactive): Introduce API to Get Meta Data From Remote Service by shirly121 in https://github.com/alibaba/GraphScope/pull/3879
* fix(interactive): persist latest kafka queue offset before stopped by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3800
* fix(analytical): Fix java sdk support for builtin libs by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3884
* feat(interactive): Implement the `get_graph_statistics` for AdminService by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3859
* feat(interactive): Release interactive java/python sdk by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3886
* fix(interactive): Support add property with exist label by bufapiqi in https://github.com/alibaba/GraphScope/pull/3887
* fix(interactive): Fix `get_service_status` returns "stopped" after service initialized by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3888
* fix(interactive): Support Path Expand Until Condition in Gremlin-Calcite by shirly121 in https://github.com/alibaba/GraphScope/pull/3878
* refactor: reorganize the Coordinator and gsctl to adapt to the unified schema on FLEX Interactive by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3718
* fix(interactive): support `CaseWhen` in GIE runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3868
* fix(interactive): Support Nested Map in Compiler & Runtime to Facilitate Queries like `select('a', 'b').by(valueMap())` by shirly121 in https://github.com/alibaba/GraphScope/pull/3839
* fix(interactive): Fix Type Inference Bugs in Path Expand After Optimization by shirly121 in https://github.com/alibaba/GraphScope/pull/3889
* fix(interactive): update the integration tests in GOpt-based compilation by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3786
* refactor(interactive): Upgrade arrow to 15.0.2 by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3892
* ci: Auto release gsctl wheel package and Interactive image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3901
* fix(python): Decode the k8s node selector and convert it as a dict. by dashanji in https://github.com/alibaba/GraphScope/pull/3477
* fix(interactive): Fix parsing empty edge_type list when creation graph by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3902
* fix(interactive): fix backup conflict checking, refine log recycling by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3909
* refactor(interactive): Revision interactive from 0.0.3 to 0.3 by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3905
* docs(interactive): Add document about `column_mapping` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3912
* fix(interactive): Check the number of edge properties when creating graph schema by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3916
* fix(interactive): Support Statistics in Groot Storage by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3856
* feat: Start the service when switching graph context on Interactive by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3910
* fix(interactive): Fix Result Parser Issue of Gremlin `select('a', 'b').by(valueMap())` by shirly121 in https://github.com/alibaba/GraphScope/pull/3919
* fix(interactive): Refine Query Timeout Configuration in GIE Doc by shirly121 in https://github.com/alibaba/GraphScope/pull/3917
* fix(interactive): Fix Gremlin Alias Issue in GraphBuilder by shirly121 in https://github.com/alibaba/GraphScope/pull/3918
* fix(interactive): Fix Errors Caused by Conflict Merge With Main by shirly121 in https://github.com/alibaba/GraphScope/pull/3921
* fix(interactive): consider path direction in path concat by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3920
* fix(interactive): Fix python sdk packing by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3928
* fix(interactive): append query type in graph_db_ic_handler by liulx20 in https://github.com/alibaba/GraphScope/pull/3932
* fix(interactive): `sync_to_file` not work when `swap` called by liulx20 in https://github.com/alibaba/GraphScope/pull/3933
* fix(interactive): Avoid redundant traversal when building lf_indexer by liulx20 in https://github.com/alibaba/GraphScope/pull/3934
* fix(interactive): Fixed bug that wasted disk space by yqylh in https://github.com/alibaba/GraphScope/pull/3929
* fix(interactive): close csr and free memory after dumped by liulx20 in https://github.com/alibaba/GraphScope/pull/3936
* fix(interactive): Allow duplicate vertices and edge with invalid vertex id in source data by liulx20 in https://github.com/alibaba/GraphScope/pull/3939
* feat(interactive): supports multithreaded bulk loading by liulx20 in https://github.com/alibaba/GraphScope/pull/3943
* fix(interactive): Fix a bug in Groot `values.yaml` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3955
* ci: fix some problems in Flex Interactive CI by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3931
* fix(interactive): Support specifying vertex/edge properties as null by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3956
* feat(interactive): add `use-mmap-vector` and `build-csr-in-mem` option for bulk loading by liulx20 in https://github.com/alibaba/GraphScope/pull/3957
* chore: update the invitation link of dingtalk by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3960
* refactor(interactive): Unify `devcontainer.json` of graphscope-dev and flex by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3866
* fix(interactive): Add `data_source` in schema_mapping by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3953
* Fix typos by co63oc in https://github.com/alibaba/GraphScope/pull/3951
* fix: support deploy, destroy instance by gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3963
* ci: find the gsctl wheel package correctly by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3968
* fix(interactive): Only allow using of `var_char` and `long_text` on edge property for string type by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3967
* fix(analytical): Fix ret type of `getIntData` and `getDoubleData` for arrow fragment java wrapper by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3969
* fix(interactive): Fix ref column creation issues by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3970
* fix(interactive): Fix bugs in Gremlin `expr` Grammar by shirly121 in https://github.com/alibaba/GraphScope/pull/3958
* fix(interactive): Support NULL Value in expression in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3972
* refactor(interactive): Support timezone info for timestamp type. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3975
* fix(interactive): add tcp write time & fix block mode by lnfjpt in https://github.com/alibaba/GraphScope/pull/3976
* fix(interactive): Implement `HttpIrMetaReader` to Get Meta Data From Remote Http Service by shirly121 in https://github.com/alibaba/GraphScope/pull/3908
* feat(interactive): support multiple properties on edge by liulx20 in https://github.com/alibaba/GraphScope/pull/3962
* feat(interactive): Support project the properties of elements in Path in GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3941
* fix(interactive): Introduce 'mimalloc' as an alternative memory allocator in GIE Backend by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3946
* feat(interactive): Automatically upload local file when bulk loading by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3966
* fix: correct nslookup behavior for Groot helm charts by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3974
* fix(interactive): Support std::string as member of Any and rename kString to kStringView by liulx20 in https://github.com/alibaba/GraphScope/pull/3979
* fix: fix VERSION not found in gsctl by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3983
* fix(interactive): fix some update interface not work by liulx20 in https://github.com/alibaba/GraphScope/pull/3987
* fix(learning): fix graph-learn CI by LiSu in https://github.com/alibaba/GraphScope/pull/3985
* fix(CI): differentiate how protobuf is found in mac and linux in graph-learn cmakelist by LiSu in https://github.com/alibaba/GraphScope/pull/3993
* fix(interactive): handle the case when meta or statistics are not ready in GOpt by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3986
* refactor(interactive): Add more options to `LoadingConfig` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/4000
* refactor(interactive): Support customizing ports when deploy interactive in local mode and connect via SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3990
* fix(interactive): Fix some bug of interactive admin service by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3938
* ci: fix analytical engine CI by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3996

New Contributors
* yqylh made their first contribution in https://github.com/alibaba/GraphScope/pull/3929
* co63oc made their first contribution in https://github.com/alibaba/GraphScope/pull/3951

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.27.0...v0.28.0

0.27.0

We are delighted to bring a number of improvements to GraphScope, alongside the GraphScope 0.27.0 release. This release contains many important features and improvements to GraphScope FLEX、gsctl command-line utility、Graph Interactive Engine (GIE) and Groot persistent storage.

We highlight the following improvements included in this release:

**1. `gsctl` command-line utility**

`gsctl` is a command-line utility designed to simplify the usage of GraphScope. With gsctl, users can easily interact with [GraphScope Flex](https://github.com/alibaba/GraphScope/tree/main/flex) product, such as Interactive(for high QPS queries) and Insight(for online BI analysis), build binaries and docker images, and perform various utility tasks related to GraphScope. See more detailed informaton from [doc](https://graphscope.io/docs/latest/utilities/gs).

**Key Features of gsctl**

- Utility Scripts: gsctl provides a collection of utility scripts that simplify common tasks such as installing dependencies, building binaries and docker images, and running test suites.
- Client/Server Mode: With the client/server mode, users can connect to a launched coordinator and interact with specific GraphScope products behind it. This mode enables managing sessions, resources, and other product-specific functionalities.
- Scope Management: gsctl allows users to switch between global and local scopes, enabling them to work with graphs and resources at different levels. This flexibility enhances productivity and enables efficient management of graph computation tasks.
- Configuration Management: gsctl includes configuration options that can be customized to suit specific requirements. Users can specify a custom coordinator endpoint and manage other configuration settings as needed.

**2. [GraphScope FLEX](https://github.com/alibaba/GraphScope/tree/main/flex)**
- Support build docker images through `gsctl flexbuild` command.
bash
$ git clone https://github.com/alibaba/GraphScope.git && cd GraphScope
$ python3 gsctl.py flexbuild insight/interactive --app docker


- Support deploy `Interactive` and `Insight` product through docker image.
bash
$ docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.27.0-flex
launch engine and coordinator service: 12312 gremlin endpoint, 55556 grpc endpoint, 8080 coordinator endpoint
$ docker run -p 12312:12312 -p 55556:55556 -p 8080:8080 registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.27.0-flex /usr/local/groot/bin/start_local_cluster.sh

- Connect to a launched coordinator and interact with the products
bash
graphscopehost:/work/python$ gsctl connect --coordinator-endpoint http://127.0.0.1:8081
[SUCCESS] Connected to http://127.0.0.1:8081, coordinator is serving with GRAPHSCOPE_INSIGHT mode.

Try 'gsctl --help' for help.

graphscopehost:/work/python$ gsctl ls
schema
├── vertex types
│ ├── person
│ │ ├── Property(name: id, type: LONG, is_primary_key: True)
│ │ ├── Property(name: name, type: STRING, is_primary_key: False)
│ │ └── Property(name: age, type: LONG, is_primary_key: False)
│ └── software
│ ├── Property(name: id, type: LONG, is_primary_key: True)
│ ├── Property(name: name, type: STRING, is_primary_key: False)
│ └── Property(name: lang, type: STRING, is_primary_key: False)
└── edge types
├── (person) -[created]-> (software)
│ ├── Property(name: edge_id, type: LONG, is_primary_key: False)
│ └── Property(name: weight, type: DOUBLE, is_primary_key: False)
└── (person) -[knows]-> (person)
├── Property(name: edge_id, type: LONG, is_primary_key: False)
└── Property(name: weight, type: DOUBLE, is_primary_key: False)


**3. Enhancements for Groot**
- Integrate a prototype of OpenTelemetry into Groot, users could switch on option `trace.enabled=true`, which will have a jaeger container that collect traces. And it will serve a website on `POD_IP:16686`.

Docker Images

shell
Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.27.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.27.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.27.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.27.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.27.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.27.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* feat(flex): refactor memory management of mmap_array to support Hugepage. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3505
* fix(interactive): Fix install_dependency.sh by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3500
* fix(flex): Fixed the usage of storage strategy. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3506
* fix(interactive): Fix building flex with `-DBUILD_HQPS=OFF` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3497
* fix(interactive): 离线全量导入时, 新增wait参数, 在download全部完成后, wait指定时间(单位ms), 再进行提交 by bufapiqi in https://github.com/alibaba/GraphScope/pull/3509
* ci: Fix ci failure and pre-release v0.27.0 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3512
* feat(flex): Configure the memory strategy with memory-level. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3511
* refactor: coordinator and gsctl under FLEX architecture by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3481
* chore(deps): bump werkzeug from 0.16.1 to 2.3.8 in /flex/coordinator by dependabot in https://github.com/alibaba/GraphScope/pull/3518
* chore(deps): bump flask from 2.1.1 to 2.2.5 in /flex/coordinator by dependabot in https://github.com/alibaba/GraphScope/pull/3519
* docs(interactive): Update doc by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3514
* ci: fixes a syntax error in CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3521
* fix(interactive): Fix argument passing in hqps_app by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3522
* chore: change manylinux2014-ci to manylinux2014 by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3529
* feat(flex): Implemented Immutable Csrs. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3527
* fix(interactive): Fix interactive building Dockerfile by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3528
* fix(interactive): Fix error when loading edge with string properties by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3523
* feat(interactive): Update graph `graph_algo` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3486
* fix(interactive): support non-blocking data loading interface in coordinator and fix failure during flexbuild process by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3530
* feat(interactive): Decouple ingestor and store, remote direct RPC connections. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3525
* Update README.md for SIGMOD 2024 paper by wenyuanyu in https://github.com/alibaba/GraphScope/pull/3534
* fix(interactive): Integrate Gremlin Into New Compilation Stack by shirly121 in https://github.com/alibaba/GraphScope/pull/3332
* fix(k8s): Bump up vineyard to v0.20.3 by dashanji in https://github.com/alibaba/GraphScope/pull/3532
* fix(interactive): Fix sinking `ElementID` for TwoLabelVertexSet by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3535
* fix(interactive): Fix `PathExpand` related bugs by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3538
* fix(interactive): fix install_dependencies by liulx20 in https://github.com/alibaba/GraphScope/pull/3539
* fix(flex): Fix warning when compiling with `AOCC` compilers by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3510
* fix(interactive): Fix `test_gremlin_timeout` in Python Unit Tests by shirly121 in https://github.com/alibaba/GraphScope/pull/3536
* fix(interactive): Fix Bugs of Group Returning Results from Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3533
* ci: fixes some dependencies issues by sighingnow in https://github.com/alibaba/GraphScope/pull/3553
* chore: Spelling comments by jsoref in https://github.com/alibaba/GraphScope/pull/3549
* docs: fixes typos in documentation by jsoref in https://github.com/alibaba/GraphScope/pull/3554
* fix(analytical): Fix Louvain algorithm's move on const message by songqing in https://github.com/alibaba/GraphScope/pull/3551
* docs: fixes typos in YAML configurations by jsoref in https://github.com/alibaba/GraphScope/pull/3555
* feat: Impl the file upload interface for FLEX dataloading by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3557
* fix(interactive): support src and dst of an edge with different type by liulx20 in https://github.com/alibaba/GraphScope/pull/3552
* feat(interactive): Support PTHash indexer by liulx20 in https://github.com/alibaba/GraphScope/pull/3558
* fix(interactive): Fix secondary catchup error by reopening secondary by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3567
* fix(interactive): Fix a bug in pkscan with expected values given in `Within` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3540
* fix(analytical): fix bug that flash app can not run on string oid graph by acezen in https://github.com/alibaba/GraphScope/pull/3570
* fix: Spelling python graphscope tests by jsoref in https://github.com/alibaba/GraphScope/pull/3568
* docs: fixes typos in flex coordinator by jsoref in https://github.com/alibaba/GraphScope/pull/3556
* fix(interactive): Fix typo in cypher query examples by jsoref in https://github.com/alibaba/GraphScope/pull/3559
* fix(analytical): trim the physical memory usage when unloading graphs by sighingnow in https://github.com/alibaba/GraphScope/pull/3548
* fix(interactive): snapshot id may lag behind in some scenarios by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3576
* feat(interactive): Add profile to build compiler fat-jar by lnfjpt in https://github.com/alibaba/GraphScope/pull/3574
* ci: fixes typos in flex coordinator by jsoref in https://github.com/alibaba/GraphScope/pull/3572
* fix(interactive): Drop unused classes and modules in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3577
* fix: fixes typos/spelling in flex engines by jsoref in https://github.com/alibaba/GraphScope/pull/3582
* fix: fixes typos/spelling in flex codegen by jsoref in https://github.com/alibaba/GraphScope/pull/3581
* fix(interactive): Migrating Physical Layer into New Compilation Stack by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3560
* fix: fixes the compiler error under rust >= 1.76.0 by sighingnow in https://github.com/alibaba/GraphScope/pull/3584
* fix(interactive): 离线全量导入支持vipserver发现endpoint, 支持replay, 支持compact, 支持reopen by bufapiqi in https://github.com/alibaba/GraphScope/pull/3585
* fix(python): Fixes `graph.unload()`: makes the warning loudly, and use the new DelData API by sighingnow in https://github.com/alibaba/GraphScope/pull/3593
* fix: fixes spelling errors in analytical engine java by jsoref in https://github.com/alibaba/GraphScope/pull/3588
* fix(interactive): Use a larger version upper bound by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3595
* fix(interactive): Rename `modern_graph.yaml` to `graph.yaml` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3603
* feat(interactive): Add `entrypoint.sh` for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3604
* refactor(interactive): Wrap schema parsing errors by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3607
* fix(analytical): remove `scripts/install_deps.sh` and update the related document by acezen in https://github.com/alibaba/GraphScope/pull/3608
* fix(interactive): Fix Bug When Global Id Parameters Having Long Type by shirly121 in https://github.com/alibaba/GraphScope/pull/3597
* feat(interactive): Add flag files to track bulk loading progress by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3605
* fix(interactive): Fix Bug in Operator Precedence of `not` by shirly121 in https://github.com/alibaba/GraphScope/pull/3598
* fix(interactive): Migrating Physical Layer (Repartition) into New Compilation Stack by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3586
* fix(interactive): Fix `interactive-runtime.Dockerfile` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3614
* fix: fixes spelling in analytical engine core by jsoref in https://github.com/alibaba/GraphScope/pull/3587
* fix(analytical): Fix graph template parsing in Java SDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3617
* fix(analytical): Fix documentation for GRAPE-JDK by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3618
* fix(interactive): use pk hash to generate eid if has pk by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3621
* fix(interactive): Support Gremlin `union` Step in Calcite-Based IR Layer by shirly121 in https://github.com/alibaba/GraphScope/pull/3594
* refactor(interactive): Add type and queryStr for `StoredProcedureMeta` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3622
* feat(interactive): Add OpenTelemetry instrument for flex interactive by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3628
* fix(interactive): fix a bug in PathExpand with 'PATH_OPT' as 'SIMPLE' by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3623
* fix(interactive): Add Cypher Queries used in GOpt Benchmark by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3625
* fix(python): Enable the BUILD_VINEYARD_GRAPH_WITH_GAR compile option in gsctl by acezen in https://github.com/alibaba/GraphScope/pull/3627
* fix(interactive): Fix CMakeLists.txt when otel not found in flex by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3633
* ci: Building vineyard-dev image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3635
* fix(learning): fix gltorch wheel building by LiSu in https://github.com/alibaba/GraphScope/pull/3629
* refactor(interactive): Fix bug and use `ServiceConfig` to gather all configurations by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3634
* fix(interactive): Fix CI for HQPS engine by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3638
* fix(interactive): Fix argument parsing for `enable-admin-service` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3640
* feat(interactive): Support gremlin query. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3575
* feat: Integrate groot into flex architecture by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3566
* fix(interactive): Fix Timeout Bug & Process Results From Pegasus Synchronously by shirly121 in https://github.com/alibaba/GraphScope/pull/3630
* feat(interactive): Integrate otel into groot, and add charts for one-pod by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3641
* fix(interactive): Fix CI Bug Caused By PR 3630 by shirly121 in https://github.com/alibaba/GraphScope/pull/3647
* fix(interactive): Minor typo fix by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3643
* refactor(interactive): Support Gremlin Expression in Calcite-Based IR Layer by shirly121 in https://github.com/alibaba/GraphScope/pull/3637
* fix(interactive): Fix the incorrect casting from int into string when converting from `YAML` to `JSON` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3649
* refactor: Make gsctl to be more like a database design by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3648
* refactor: Make gsctl to be more like a database design for Groot storage by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3651
* fix(interactive): Fix failing to install Arrow by liulx20 in https://github.com/alibaba/GraphScope/pull/3652
* fix(interactive): Introduce the high-order statistics provider `GLogue` into the new Compilation Stack by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3609
* feat(interactive): Enable starting compiler as a subprocess of interactive server by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3650
* fix(interactive): Prevent persist invalid meta during abnormal shutdown. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3661
* ci: Fixes CI failure on macOS by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3662
* fix(interactive): add store-state service back by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3664
* fix(interactive): Fix the occasionally incorrect pegasus server routing configuration by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3673
* fix(learning): Fix torch version to be compatible with gcc8 and python3.7 by LiSu in https://github.com/alibaba/GraphScope/pull/3677
* fix(interactive): Fix unexpected alias when fusion `Expand` + `GetV` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3676
* fix(learning): specify proper torch version for macos by LiSu in https://github.com/alibaba/GraphScope/pull/3679
* fix(interactive): fix the bug in missing metadata in `PathExpand` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3667

New Contributors
* jsoref made their first contribution in https://github.com/alibaba/GraphScope/pull/3549

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.26.0...v0.27.0

0.26.0

We are delighted to bring a number of improvements to GraphScope, alongside the GraphScope 0.26.0 release. This release contains many important features and improvements to GraphScope FLEX and Graph Interactive Engine (GIE), including secondary instance and type inference in GIE, loading from distributed data source and Macs deployment in FLEX Interactive.

We highlight the following improvements included in this release:


**1. FLEX Interactive**


- Support use `GraphScope Interactive` on macos. Download the latest release to give it a shot [interactive-latest](https://interactive-release.oss-cn-hangzhou.aliyuncs.com/interactive-latest.zip)
- Support bulk loading with odps table as data source. Here is an example
yaml
graph: dd_graph
loading_config:
data_source:
scheme: odps file, odps
import_option: init init, overwrite
format:
type: arrow
vertex_mappings:
- type_name: Person must align with the schema
inputs:
- your_proj_name/table_name/partition_col_name=paritition_name
column_mappings:
- column:
index: 0 can be omitted if the index is the same as the property index
name: user_id can be omitted if the name is not known
property: id
edge_mappings:
- type_triplet:
edge: Knows
source_vertex: Person
destination_vertex: Person
inputs:
- your_proj_name/table_name/partition_col_name=paritition_name
source_vertex_mappings:
- column:
index: 0
name: src_user_id
property: id
destination_vertex_mappings:
- column:
index: 1
name: dst_user_id
property: id


**2. Enhancements for GIE**

- Support secondary instance in Groot. It enables user open another read-only instance along with the original instance, providing additional read qps to users.
- How to use: Set `secondary.enabled=true` in helm charts to enable secondary mode. Other options could remain unchanges with the primary instance.
- Note in secondary instance it could only be queried upon, the modification of schema and data should be routed to primary instance.
- See more details in the [doc](https://graphscope.io/docs/latest/storage_engine/groot#secondary-instance)

- Support automatic type inference in graph queries, which can affect query execution in two ways:
- Checking if vertex and edge types in the graph conform to user-defined schemas

Now compiler can infer that 'kno' is a nonexistent edge type and returns error
Match (a:person)-[b:kno]->(c) Return a, b, c;

- Inferring vertex and edge types in the graph.

Now compiler can infer a and b must both be person types, and execution can be more efficient
Match (a)-[:knows]->(b) Return labels(a), labels(b)
=> Match (a:person)-[:knows]->(b:person) Return labels(a), labels(b)

See more details in the [doc](https://graphscope.io/docs/latest/interactive_engine/optimizer)

**3. Other enhancements and bug fixes**
- Introduce `graph_algo` as another example graph. https://github.com/alibaba/GraphScope/tree/main/flex/interactive/examples/graph_algo.
- Support String `DT_STRING` as edge property type.
- Refactor Flex/CMakeLists.txt to support use installed flex via `find_package(flex)`.
- Fix decode error in Groot
- Fix memory leak in Pegasus and data race in Groot
- Fix GIE peers_contains bugs in count operator in subtasks
- Fix Pegasus unexpect result of operator aggregate() + iterate()
- Refine Log Printing Messages in Compiler
- Fix bugs of Groot bulk loading when it retry to download source files
- Fix bugs in GIE for edge filtering

Docker Images

shell
Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.26.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.26.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.26.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.26.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.26.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.26.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* ci: fixes failure during pushing image and pre-release v0.26.0 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3339
* fix(interactive): Fix decode error in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3340
* fix(interactive): Check vertex existence whenever queried by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3343
* feat(interactive): Support more data types for vertex/edge property by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3346
* feat(interactive): Support fold_partiton_by_key by lnfjpt in https://github.com/alibaba/GraphScope/pull/3324
* fix(interactive): fix a memory leak bug in IR Core by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3349
* fix(interactive): replace `ok_or()` by `ok_or_else()` for lazy evaluation by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3350
* feat(flex): support LFIndexer resize by liulx20 in https://github.com/alibaba/GraphScope/pull/3351
* refactor(interactive): Refactor CSVFragmentLoader to remove redundant code by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3352
* fix(interactive): Fix support for PathExpand for multiple triplets. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3335
* fix(interactive): Remove Unnecessary JNA Structure Creation to Save Memory Consumption by shirly121 in https://github.com/alibaba/GraphScope/pull/3354
* fix(interactive): extension use hash(srcId, dstId, edgeLabelId, edgePks) instead of increase eid by bufapiqi in https://github.com/alibaba/GraphScope/pull/3357
* fix(interactive): Comparison between `std::shared_ptr<arrow::DataType>` should use `Equals()` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3361
* chore: fixes the missing tzdata issue in graphscope ubuntu-22.04 based images by sighingnow in https://github.com/alibaba/GraphScope/pull/3363
* chore: make sure tzdata can be installed by sighingnow in https://github.com/alibaba/GraphScope/pull/3365
* fix(interactive): fix memory leak in pegasus by lnfjpt in https://github.com/alibaba/GraphScope/pull/3367
* fix(interactive): add some optimizer microbenchmark queries by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3369
* fix(interactive): Fix memory leak in pegasus and data race in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3371
* chore: Add writer interface for groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3373
* fix(interactive): Add a new release-with-debug-info profile by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3372
* fix(interactive): fix the bug in filtering after intersection in GIE Runtime in distributed computation by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3359
* feat(interactive): Add Rate Limiter for Control Flow by shirly121 in https://github.com/alibaba/GraphScope/pull/3368
* refactor(interactive): Improve the code of checking if a given label sets contain all labels in the schema by longbinlai in https://github.com/alibaba/GraphScope/pull/3374
* feat(interactive): Implement admin http service for hqps engine by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3322
* fix(interactive): Support Start Tag for Graph Operators in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3376
* fix(interactive): Fix documentation for interactive. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3384
* docs: Fix GIE Benchmark Readme bug by JackyYangPassion in https://github.com/alibaba/GraphScope/pull/3389
* feat(interactive): Enable replay WAL records from offset of timestamp in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3385
* refactor(interactive): flex storage with mmap array by liulx20 in https://github.com/alibaba/GraphScope/pull/3356
* fix(interactive): event message error by lnfjpt in https://github.com/alibaba/GraphScope/pull/3380
* fix(interactive): fix peers_contains bugs in count operator in subtasks by lnfjpt in https://github.com/alibaba/GraphScope/pull/3390
* fix(interactive): fix unexpect result of operator aggregate() + iterate() by lnfjpt in https://github.com/alibaba/GraphScope/pull/3391
* fix(interactive): Fix Start Time Metric in Compiler Log by shirly121 in https://github.com/alibaba/GraphScope/pull/3393
* fix(interactive): Refine Log Printing Messages in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3381
* feat(interactive): Introduce explicit barrier for actors when switching query service to a different graph by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3395
* feat(interactive): Add support for loading graph with odps table as data source by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3305
* refactor(interactive): Support Logical Operator `within` in Index Predicate by shirly121 in https://github.com/alibaba/GraphScope/pull/3398
* feat(interactive): support string as edge property type by liulx20 in https://github.com/alibaba/GraphScope/pull/3403
* fix(interactive): Pass acid by liulx20 in https://github.com/alibaba/GraphScope/pull/3415
* fix(python): fixes the result validation for edge sets by sighingnow in https://github.com/alibaba/GraphScope/pull/3421
* fix(coordinator): Fix coordinator monitor bug by JackyYangPassion in https://github.com/alibaba/GraphScope/pull/3420
* chore: bump vineyard version to 0.18.2 by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3392
* fix(python): fixes the error handling of starting analytical engine process by sighingnow in https://github.com/alibaba/GraphScope/pull/3422
* ci: skip some GIE test cases due to the upgrade of vineyard by sighingnow in https://github.com/alibaba/GraphScope/pull/3424
* fix(interactive): Remove gcc option `-mno-avx512f` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3429
* feat(interactive): Import `VARCHAR` to GraphScope interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3404
* refactor(interactive): Remove dummy config `incoming/outgoing_edge_strategy` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3434
* fix(interactive): Fix bugs of Groot Bulk Load When Retrying to Download Source Files by shirly121 in https://github.com/alibaba/GraphScope/pull/3438
* feat(analytical): Support extend label data for graph in eager mode. by SighingSnow in https://github.com/alibaba/GraphScope/pull/3288
* ci: bump the required glt version to fixes MacOS CI failure by sighingnow in https://github.com/alibaba/GraphScope/pull/3440
* feat(interactive): Add helm chart for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3387
* fix(interactive): fix `isnull` in expression evaluation by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3423
* ci: fixes the destination dir of ossutil64 download for `helm repo index` by sighingnow in https://github.com/alibaba/GraphScope/pull/3445
* chore: probing analytical engine in coordinator shouldn't be warnings by sighingnow in https://github.com/alibaba/GraphScope/pull/3446
* feat(interactive): Introduce `graph_algo` as another example graph by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3344
* feat(interactive): Pegasus return status codes of rpc by lnfjpt in https://github.com/alibaba/GraphScope/pull/3427
* fix(interactive): Support using interactive on macos by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3416
* feat(interactive): Implemented memory-only mode for storage of Interactive. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3444
* fix(interactive): Fix bugs When Counting on Multiple Columns by shirly121 in https://github.com/alibaba/GraphScope/pull/3442
* fix(interactive): Convert Label Condition to Type Constraint by shirly121 in https://github.com/alibaba/GraphScope/pull/3441
* fix(interactive): Fix the Invalid cross-device link error occurring with copy_file_range in the Docker environment. by liulx20 in https://github.com/alibaba/GraphScope/pull/3454
* fix(interactive): Fix bug in `ODPSFragmentLoader` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3460
* fix(interactive): fix dead lock caused by write lock by lnfjpt in https://github.com/alibaba/GraphScope/pull/3459
* fix(interactive): fix test error of groot and unsafe static reference by longbinlai in https://github.com/alibaba/GraphScope/pull/3469
* refactor(interactive): revert encoding of groot by longbinlai in https://github.com/alibaba/GraphScope/pull/3471
* feat(interactive): Introduce Graph Type Inference in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3375
* refactor(flex): Refactor CMakeLists.txt to support be imported by find_package by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3478
* feat(interactive): Support secondary instance of groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3479
* fix(analytical): fix the louvain algorithm that the result is not consistent with 183 by acezen in https://github.com/alibaba/GraphScope/pull/3472
* feat(flex): Implemented compaction. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3482
* feat(flex): Implemented basic support for hugepages. by luoxiaojian in https://github.com/alibaba/GraphScope/pull/3489
* fix(analytical): Fix vineyard image is not set correctly by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3491
* fix(analytical): Fix the rapidjson find_package by acezen in https://github.com/alibaba/GraphScope/pull/3492
* fix(python): prevent the GAE been blocked if GIE failed to generate subgraphs during subgraph queries by sighingnow in https://github.com/alibaba/GraphScope/pull/3499
* fix(core): enable date and time types support in vineyard-graph (and GIE) by sighingnow in https://github.com/alibaba/GraphScope/pull/3498
* Try fixes macos nightly CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3502
* fix(interactive): fix a bug in runtime for edge filtering by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3494
* fix(interactive): Remove assert & unwrap used in pegasus by lnfjpt in https://github.com/alibaba/GraphScope/pull/3488
* ci: Disable to publish images and packages on the aarch64 platform by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3503

New Contributors
* bufapiqi made their first contribution in https://github.com/alibaba/GraphScope/pull/3357
* JackyYangPassion made their first contribution in https://github.com/alibaba/GraphScope/pull/3389
* SighingSnow made their first contribution in https://github.com/alibaba/GraphScope/pull/3288

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.25.0...v0.26.0

0.25.0

We are thrilled to introduce a range of enhancements to GraphScope, with the GraphScope 0.25.0 release. This release encompasses significant features and improvements in Interactive Engine (GIE), FLEX Interactive, and bug fix.

**1. Interactive under GraphScope Flex Architecture**

- Release [GraphScope Interactive](https://graphscope.io/docs/latest/flex/interactive_intro).
- Enrich the movie graph schema and example query statements.
- Implement a query cache to avoid recompiling the same adhoc query.
- Support using the property of string type as primary key for vertex.

**2. Enhancements for GIE**

- Support get disk status in groot, user could retrieve the total space and free space of the store pod via Python/Java client. Example API is [here](https://github.com/alibaba/GraphScope/blob/8235b2909e642e15e7d668b7cc579fbd5268c9da/python/graphscope/client/connection.py#L180)
- Enhancements to count(): We've implemented two primary optimizations to accelerate the count() operation:
- Optimized Counting of Vertices/Edges: Operations like g.V().count() that previously required a complete enumeration of vertices followed by a count, are now streamlined into a single fused operator. This operator efficiently counts vertices or edges in tandem with their iteration.
- Improved Worker Utilization: The prior count() implementation was limited to using a single worker per machine for counting tasks, irrespective of the available configured workers. Now, count() operations are distributed across all configured workers, leveraging parallel processing to boost performance.
- Users can now interact with GIE using [natural language](https://graphscope.io/docs/latest/interactive_engine/neo4j/llm_assistant). We've integrated the capability to call OpenAI-compatible APIs within GIE, enabling the translation of human language inputs into Cypher queries. This advancement allows for a more intuitive and accessible query experience. For instance, users can utilize our Python API to execute the following code:

python
from graphscope.langchain_prompt.query import query_to_cypher
endpoint = "https://xxx" # use your endpoint
api_key = "xxx" replace to your own api key
question = "贾宝玉是谁的儿子?"
cypher_sentence = query_to_cypher(graph, question, endpoint=endpoint, api_key=api_key)
print(cypher_sentence)


Docker Image
--------------

shell
Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.25.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.25.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.25.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.25.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.25.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.25.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* refactor(interactive): Generate Stored Procedure Config Automatically in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3140
* feat(interactive): Support `length()` Operator in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3166
* fix(interactive): Fix bug in computing path length in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3172
* ci: Support to build GraphScope Images(both x86 and arm64) in CI workflow by FLYLX in https://github.com/alibaba/GraphScope/pull/3152
* ci: fixes failure of building images by adding actions/checkout step by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3174
* ci: Pre-release v0.25.0 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3175
* chore: fixes the link for the flex directory by sighingnow in https://github.com/alibaba/GraphScope/pull/3176
* fix(interactive): Fix the bug in the RexNode to Proto Conversion by shirly121 in https://github.com/alibaba/GraphScope/pull/3171
* feat(interactive): Support `[]` Operator in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3168
* refactor(interactive): Parse Graph Schema from Yaml Configuration by shirly121 in https://github.com/alibaba/GraphScope/pull/3145
* feat(python): Refactor coordinator for operator by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3148
* fix(interactive): don't require openssl-sys during building GIE by sighingnow in https://github.com/alibaba/GraphScope/pull/3181
* feat(interactive): Enable clear properties for groot node by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3180
* refactor(interactive): Support Nested Branch Logical Plan by MeloYang05 in https://github.com/alibaba/GraphScope/pull/3151
* refactor(interactive): Support `head(collect(XX))` in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3178
* fix(python): fix default field in py311 by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3183
* feat(interactive): Support `IS_NULL` and `IS_NOT_NULL` in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3167
* feat(interactive): Support Unfold step in GIE by Louyk14 in https://github.com/alibaba/GraphScope/pull/3143
* remove google-java-format.jar by Louyk14 in https://github.com/alibaba/GraphScope/pull/3196
* feat(interactive): Add schema management ability for groot java sdk by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3193
* refactor(interactive): Support DateFormats in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3197
* fix(interactive): Fix bugs of Chinese Encoding by shirly121 in https://github.com/alibaba/GraphScope/pull/3195
* refactor(flex): Replace the Adhoc csv reader with Arrow CSV reader by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3154
* refactor(interactive): Support `Date` Type and `EXTRACT` Operator in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3169
* ci: Update pr-check.yml by yecol in https://github.com/alibaba/GraphScope/pull/3207
* feat(interactive): support project properties of a `path` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3213
* feat(interactive): Enhancement pieces for groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3217
* fix(interactive): Fix bugs in Label Name to Id Conversion by shirly121 in https://github.com/alibaba/GraphScope/pull/3221
* feat(interactive): Support LDBC SNB IC1,4,7,10 for HQPS Engine by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3147
* chore: don't reinstall (may trigger upgrade) if libarrow-dev has already been installed by sighingnow in https://github.com/alibaba/GraphScope/pull/3241
* ci: fixes the Python dependency error in CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3242
* fix(interactive): Not requiring eid in update/delete edges in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3240
* fix(python): default session needs to be aware of g.set_option(num_workers=...) by sighingnow in https://github.com/alibaba/GraphScope/pull/3246
* refactor(interactive): Refactor the user interface of `Interactive` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3201
* feat(interactive): support unfold path entry in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3236
* fix(interactive): Fix several bugs in data-load-tools by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3249
* fix(interactive): Fix NPE when update/delete vertices by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3250
* build(interactive): Reduce image size by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3247
* fix(interactive): Support fusion of scan+count in GIE Runtime for optimization by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3233
* fix(flex): Support set edge strategy on each `vertex_type_pair_relation` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3257
* feat(learning): Integrate GLTorch into GraphScope by LiSu in https://github.com/alibaba/GraphScope/pull/3230
* feat(interactive): Support `labels` and `type` Functions in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/3255
* build(learning): bump torch from 1.13 to 1.13.1 in /python by dependabot in https://github.com/alibaba/GraphScope/pull/3264
* refactor(interactive): Introduce a new test set for Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3251
* docs(interactive): Add docs for GraphScope Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3267
* fix: Flex add rt_bench and fix some bug by liulx20 in https://github.com/alibaba/GraphScope/pull/3268
* chore: Enable retrieve disk status of store node from client by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3274
* fix(interactive): clear download path when start store service by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3276
* ci: requires macos 12 as homebrew (and apple) do not provide support for this old version by sighingnow in https://github.com/alibaba/GraphScope/pull/3278
* fix(interactive): Fix Implicit Type Conversion Issues in HQPS by shirly121 in https://github.com/alibaba/GraphScope/pull/3256
* fix(interactive): block service until graph schema is synced by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3280
* chore: Increase the disk size of minikube cluster by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3283
* fix(interactive): Increase ingestor queue buffer size by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3284
* fix(analytical): reduce louvain memory usage by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3273
* ci: fixes the check of libarrow-dev existence on Ubuntu by sighingnow in https://github.com/alibaba/GraphScope/pull/3291
* ci: fixes the handling the pytorch dependency by sighingnow in https://github.com/alibaba/GraphScope/pull/3290
* ci: increasing the default timeout setting for pip install by sighingnow in https://github.com/alibaba/GraphScope/pull/3292
* ci: free disk spaces and install correct torch without download many from pypi by sighingnow in https://github.com/alibaba/GraphScope/pull/3293
* ci: run test cases in subprocess with pytest-sdist by sighingnow in https://github.com/alibaba/GraphScope/pull/3294
* docs: fixes the filename of loading graphs page by sighingnow in https://github.com/alibaba/GraphScope/pull/3295
* feat(interactive): support extract intervals from temporal types in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3229
* fix(interactive): Support Index predicate for dynamic params in IR-Core by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3282
* fix(interactive): Support Index predicate with multiple expected values given via P.within() by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3300
* ci: macos: make sure $HOME/.local/bin present in PATH by sighingnow in https://github.com/alibaba/GraphScope/pull/3302
* refactor(coordinator): and gsctl to support FLEX interactive by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3297
* fix(interactive): Fix Bugs in Dynamic Params by shirly121 in https://github.com/alibaba/GraphScope/pull/3279
* fix(interactive): Distinguish 'label equals' or 'unique key equals' from Filter Conditions by shirly121 in https://github.com/alibaba/GraphScope/pull/3285
* fix(interactive): Introduce Cypher CI Tests for GIE on Experimental Store by shirly121 in https://github.com/alibaba/GraphScope/pull/3303
* feat(flex): Support using property of string type as primary key for vertex by liulx20 in https://github.com/alibaba/GraphScope/pull/3296
* chore: use target instead of name resolver factory by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3306
* fix(interactive): Update example movie graph and fix some bug by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3304
* feat(interactive): Add groot charts that start all components within one pod by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3308
* fix(interactive): Fix the problem of not returning properties together when returning a vertex/edge. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3298
* feat(interactive): Reuse compiled native lib for same physical plan by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3301
* feat(interactive): Support Regex Match for String Values by shirly121 in https://github.com/alibaba/GraphScope/pull/3286
* fix(interactive): Ad-hoc Handling for Connection Validation in Gremlin by shirly121 in https://github.com/alibaba/GraphScope/pull/3315
* fix(interactive): fix bug in release cstr pointer in compiler by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3307
* fix(interactive): Fix Bugs in Converting Match into Join by shirly121 in https://github.com/alibaba/GraphScope/pull/3311
* fix(interactive): fix parallel scan in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3317
* feat: Enabling Natural Language Graph Queries in GraphScope with chatGPT 2648 by Suchun-sv in https://github.com/alibaba/GraphScope/pull/3271
* [doc] add llm doc index by longbinlai in https://github.com/alibaba/GraphScope/pull/3319
* fix(interactive): Implement Field Trimmer Rule in Compiler by JialuGong in https://github.com/alibaba/GraphScope/pull/3200
* feat(interactive): Fix Type Inference in 'ARRAY_VALUE_CONSTRUCTOR' and 'MAP_VALUE_CONSTRUCTOR' by shirly121 in https://github.com/alibaba/GraphScope/pull/3287
* fix(interactive): Fuse Source With Count to Optimize in Gremlin by shirly121 in https://github.com/alibaba/GraphScope/pull/3320
* fix(interactive): implement count with efficiency by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3326
* fix(interactive): download to a tmp file then move by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3331
* ci: explicitly set python version on MacOS CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3329
* ci: fixes build failure with apache-arrow 14 by sighingnow in https://github.com/alibaba/GraphScope/pull/3333
* fix(interactive): Make Pegasus Related Settings Configurable Per Query by shirly121 in https://github.com/alibaba/GraphScope/pull/3321
* fix(interactive): Introduce `Degree Fusion` RBO Rules by shirly121 in https://github.com/alibaba/GraphScope/pull/3312
* feat(interactive): Support cancel in interactive by lnfjpt in https://github.com/alibaba/GraphScope/pull/3310
* fix(interactive): Fix a bug for CSVFragmentLoader by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3336
* ci: Fixes release failure of groot image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3337

New Contributors
* Suchun-sv made their first contribution in https://github.com/alibaba/GraphScope/pull/3271
* JialuGong made their first contribution in https://github.com/alibaba/GraphScope/pull/3200

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.24.0...v0.25.0

0.24.0

We are thrilled to introduce a range of enhancements to GraphScope, with the GraphScope 0.24.0 release. This release encompasses significant features and improvements in Interactive Engine (GIE), Learning Engine(GLE), and Deployment.

We highlight the following improvements included in this release:

**1. Enhancements for GIE**

Key Features:
- Support the `sample()` step of Gremlin to randomly pick up a given number of traversers from a Gremlin traversal. Additionally, `coin()` step can now follow any step in a Gremlin traversal, instead of just `V()` and `E()`. For example,
groovy
g.V().sample(10) // Sample 10 traversers from `g.V()`
g.V().out().coin(0.2) // Randomly pick up 20% among all vertices' out neighbors

- Support the `union` step of Gremlin to combine the traversers from multiple traversals. For example,
groovy
g.V().union(out(), out().out()) // the results would now be one-hop (out once) and two-hop (out twice) neighbors of all vertices.

- Support the `unfold` step of Gremlin, which is a reversed operator of `fold` that flattens a collection of traversers into discrete elements. For example,
groovy
g.V().fold().unfold() // must obtain `g.V()` again

- Support the `identity()` step of Gremlin, which simply returns the current traversers, and is often used together with `union` step. For example,
groovy
g.V().union(identity(), out()) // return `V()` and its one-hop neighbors

- Support `isNull` in the `expr()` for verifying wether a certain property has `NULL` value. For example,
groovy
g.V().where(expr(".age isNull")) // the vertices without the field of `age` will be pruned


But fixes:
- Fix a bug of `count()` step followed by `order()` and `limit()` that can cause the `gaia` engine to abort unexpectedly. Now the following Gremlin query can be executed smoothly:
groovy
g.V().order().by('id', asc).limit(1).out().count()



**2. Enhancements for Deployment**

- All GraphScope Images support both `x86` and `arm64` platform
- This release includes the gsctl command-line utility for building and testing GraphScope. The gsctl tool provides several commands and options to streamline the development and deployment process. You can use the following command to install the graphscope-client package and then use gsctl:

bash
$ pip3 install graphscope-client
$ gsctl --help



**3. Other enhancements and bug fixes**

- Reduced the size of GRAPE-java shaded jar,reduce shaded jars' total size from 94MB to 58MB.
- Introduce Hiactor-based High-QPS Engine for Flex.
- Refine the schema definition for flex `rt_mutable_graph`
- Fix the `Py_None` reference count issue in GLE
- Fix the bug that GLE client only connects with a single server in distributed training
- Update the GLE-related tutorials

Docker Image
--------------

shell
Coordinator Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/coordinator:0.24.0

Graph Analytical Engine(GAE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/analytical:0.24.0

Frontend component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-frontend:0.24.0
Executor component of Graph Interactive Engine(GIE) image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/interactive-executor:0.24.0

Graph Learning Engine(GLE) Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/learning:0.24.0

GraphScope persistent storage, user can only perform GIE query on it.
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-store:0.24.0

Develop Image
docker pull registry.cn-hongkong.aliyuncs.com/graphscope/graphscope-dev:latest


What's Changed
* Fixes the docs generation for tagged releases by sighingnow in https://github.com/alibaba/GraphScope/pull/2970
* Fixes compliation error for non-builtin frames on MacOS by sighingnow in https://github.com/alibaba/GraphScope/pull/2972
* Fix memory leak in groot and add trace logs by siyuan0322 in https://github.com/alibaba/GraphScope/pull/2971
* Refine GC related codes in groot by siyuan0322 in https://github.com/alibaba/GraphScope/pull/2973
* Bump grpc-protobuf from 1.47.0 to 1.53.0 in /analytical_engine/java by dependabot in https://github.com/alibaba/GraphScope/pull/2977
* Bump up the version of kubernetes-log-export-action to v5 by dashanji in https://github.com/alibaba/GraphScope/pull/2976
* [GIE Compiler] Set Cypher Query Timeout from System Configurations by shirly121 in https://github.com/alibaba/GraphScope/pull/2975
* Support cypher query in python by andydiwenzhu in https://github.com/alibaba/GraphScope/pull/2952
* [Coordinator] Fix issue 2734: unifying timeout parameter in coordinators by TaoLbr1993 in https://github.com/alibaba/GraphScope/pull/2915
* [Bug Fix] Fix bugs of time counter in gremlin service by shirly121 in https://github.com/alibaba/GraphScope/pull/2906
* [GIE Compiler] Support Procedure Call in Cypher Queries by shirly121 in https://github.com/alibaba/GraphScope/pull/2927
* Pre-release 0.24.0 by lidongze0629 in https://github.com/alibaba/GraphScope/pull/2986
* Make GraphPlanner able to accept file as input by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/2980
* [Flex] Some modification on Flex code by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/2990
* [GIE] Introduce Aggregate.First proto definition by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/2991
* Update GLE tutorials and bump GLE version by LiSu in https://github.com/alibaba/GraphScope/pull/2983
* [GIE] Fix unbalanced data routing in DefaultRouter in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/2994
* Use arrow::LargeStringArray in trivial_tensor_t to store data larger than 2GB by acezen in https://github.com/alibaba/GraphScope/pull/2999
* Revised groot-client and add release phrase by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3000
* Retry download when checksum failed in groot data-loading process by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3006
* [Flex] Upgrade `libgrape-lite`version by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3004
* Add deprecated decorator and apply it on gremlin by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3007
* [GIE Doc] Refine Docs for Cypher by shirly121 in https://github.com/alibaba/GraphScope/pull/2995
* [GIE] Add LSQB QuerySet into Benchmark Tool by BingqingLyu in https://github.com/alibaba/GraphScope/pull/2997
* [GIE Compiler] Make Config path Configurable from User Given Parameters by shirly121 in https://github.com/alibaba/GraphScope/pull/2982
* unit test for pegasus timeout by lnfjpt in https://github.com/alibaba/GraphScope/pull/2964
* [GIE Test] Add Timeout CI Test in Python by shirly121 in https://github.com/alibaba/GraphScope/pull/2989
* Fix figure display issues in GIE LDBC tutorial by MeloYang05 in https://github.com/alibaba/GraphScope/pull/3009
* update libgrape-lite's commit id in Flex dockerfile by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3016
* [BugFix] Fix bug when process pk scan of multiple labels by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3013
* [Flex] Update flex dockerfile by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3020
* [Flex] Introducing Hiactor-based HQPS Engine into flex by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/2981
* Upgrade to latest vineyard (v0.16.1) by sighingnow in https://github.com/alibaba/GraphScope/pull/3019
* Enable perfect hash support in GAE by sighingnow in https://github.com/alibaba/GraphScope/pull/2959
* Fixes the Python version detection in MacOS CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3022
* Update README.md by yecol in https://github.com/alibaba/GraphScope/pull/3027
* [Flex] Introducing Hiactor-based HQPS Engine into flex by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3024
* Fixed jdk_1.8 version for data-loading-tool by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3031
* unify gae, python and groot proto into proto directory by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3023
* Implement grin interface for flex by liulx20 in https://github.com/alibaba/GraphScope/pull/3010
* ci: Add check for conventional commit and docs by yecol in https://github.com/alibaba/GraphScope/pull/3033
* [GIE Compiler] Introduce LDBC CI Tests for Cypher Query by shirly121 in https://github.com/alibaba/GraphScope/pull/2984
* Update README.md to reflect GraphScope Flex by wenyuanyu in https://github.com/alibaba/GraphScope/pull/3035
* doc: Update README.md by adding latest news section by yecol in https://github.com/alibaba/GraphScope/pull/3036
* revise ldbc apps by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3034
* [Bug Fix] Fix Incremental Query Id Issues in Multiple Frontend by shirly121 in https://github.com/alibaba/GraphScope/pull/3026
* Fixes the implementation of adjlist in flatten fragment by sighingnow in https://github.com/alibaba/GraphScope/pull/3042
* Fixes resolve protobuf library on MacOS. by sighingnow in https://github.com/alibaba/GraphScope/pull/3043
* Propogate error message about argument mismatch to Python client by sighingnow in https://github.com/alibaba/GraphScope/pull/3044
* Fixes MacOS CI for UDFs by correcting the library path using install_name_tool by sighingnow in https://github.com/alibaba/GraphScope/pull/3045
* [BugFix] Fix networkx add edge segment fault bug by acezen in https://github.com/alibaba/GraphScope/pull/3032
* Add the performance & tunning page for GAE by sighingnow in https://github.com/alibaba/GraphScope/pull/3046
* Integrate sdk-common into common for simplisity by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3050
* fix: make LDBC metadata consistent in experiment store with other storages by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3048
* ci: add conventional checks for PR title and docs by yecol in https://github.com/alibaba/GraphScope/pull/3054
* fix: Fixes error in docs generation by removing the submodule by sighingnow in https://github.com/alibaba/GraphScope/pull/3056
* fix: Fix Incorrect Hyperlinks in GIE Doc `supported_gremlin_steps.md` by shirly121 in https://github.com/alibaba/GraphScope/pull/3057
* feat(analytical): Add the Graph.consolidate_columns() interface in Python client by sighingnow in https://github.com/alibaba/GraphScope/pull/3060
* feat(analytical): support use int32_t as vid_t to save memory for small graphs by sighingnow in https://github.com/alibaba/GraphScope/pull/3063
* refactor(analytical): Remove `nativeLibLoader` in GRAPE-jdk by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3065
* fix(analytical): fixes wrong result when flatten from projected arrow fragment by hanjf12 in https://github.com/alibaba/GraphScope/pull/3066
* ci: address the failure of packaging graphscope wheels on MacOS by sighingnow in https://github.com/alibaba/GraphScope/pull/3068
* Add config to enable multiple frontend support in groot deployment by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3073
* ci: Add GitHub workflow to build graphscope-dev:wheel image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3072
* docs: add loading graphs doc by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3075
* ci: fixes workflow of building GraphScope wheel image by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3083
* ci(flex): Add flex in pr-check's scopes by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3084
* feat(analytical): Enable cython app on local vertex map graph by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3081
* chore: Refine the logic to probe GRAPHSCOPE_HOME by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3082
* refactor(analytical): Reduce shaded jar size. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3076
* fix(interactive): fix unexpected results for some group().by() queries by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3099
* docs: add a note about the pip version requirements by sighingnow in https://github.com/alibaba/GraphScope/pull/3105
* fix(k8s): fixes the dockerfile to download kubectl using correct arch by sighingnow in https://github.com/alibaba/GraphScope/pull/3104
* fix(interactive): fix a bug of count operator by lnfjpt in https://github.com/alibaba/GraphScope/pull/3067
* fix(interactive): Fix Examples in GIE Doc by shirly121 in https://github.com/alibaba/GraphScope/pull/3108
* feat(interactive): Refine the GrootClient for concurrent and async write. by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3113
* fix(learning): bump GLE version to include the latest bug fix by LiSu in https://github.com/alibaba/GraphScope/pull/3115
* refactor(flex): Refine the schema definition of `rt_mutable_graph` by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3079
* chore: bump up vineyard version to v0.16.4 by sighingnow in https://github.com/alibaba/GraphScope/pull/3106
* chore: bump up gremlinpython to 3.7.0 by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3119
* refactor(interactive): Join operator in pegasus will repartition stream before join by lnfjpt in https://github.com/alibaba/GraphScope/pull/3118
* Update README.md to fix a spell error by xiezheng-XD in https://github.com/alibaba/GraphScope/pull/3123
* ci: fixes doc generation failure on CI by sighingnow in https://github.com/alibaba/GraphScope/pull/3125
* feat(interactive): Implement GraphScope Interactive by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3030
* fix(interactive): throw unsupported error when query `PathExpand()` within subtask by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3133
* chore: allow user pass variables for substitutions by siyuan0322 in https://github.com/alibaba/GraphScope/pull/3135
* fix(flex): Fix hqps engine's support for some simple `MATCH` queries by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3086
* fix(interactive): fix the docs of interactive engine by longbinlai in https://github.com/alibaba/GraphScope/pull/3131
* feat(interactive): support isNull expression evaluation in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3128
* feat(interactive): Support Identity step in GIE by Louyk14 in https://github.com/alibaba/GraphScope/pull/3111
* fix(interactive): fix bug in unfold case `g.V().fold().as("a").unfold()` in GIE Runtime by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3130
* feat(interactive): Support `Sample()` and `Coin()` steps in GIE by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3091
* refactor: Upgrade the build phase of image in CI with gsctl by FLYLX in https://github.com/alibaba/GraphScope/pull/3142
* fix(interactive): Support Multiple Matches in IR Core by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3134
* refactor(flex): Small modifications to the graph schema to fit the GIE compiler. by zhanglei1949 in https://github.com/alibaba/GraphScope/pull/3150
* refactor(interactive): Initiate Compiler Service with Yaml Configuration by shirly121 in https://github.com/alibaba/GraphScope/pull/3141
* ci: Support to build dev images(both x86 and aarch64) in CI workflow by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3153
* fix(interactive): fixes some unsafe rust code that cannot be compiled with recent stable rust compilers by sighingnow in https://github.com/alibaba/GraphScope/pull/3160
* refactor: Upgrade gsctl and modify files associated with gsctl by FLYLX in https://github.com/alibaba/GraphScope/pull/3149
* ci: fixes failure in building GraphScope wheel package by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3164
* feat(interactive): Support Optional Match and Where Not(subquery) in Compiler by shirly121 in https://github.com/alibaba/GraphScope/pull/3088
* refactor(interactive): refactor the implementation of `PathExpand` by BingqingLyu in https://github.com/alibaba/GraphScope/pull/3159
* Differentiating between arm64 and x86 wheel's name by lidongze0629 in https://github.com/alibaba/GraphScope/pull/3165

New Contributors
* hanjf12 made their first contribution in https://github.com/alibaba/GraphScope/pull/3066
* xiezheng-XD made their first contribution in https://github.com/alibaba/GraphScope/pull/3123
* Louyk14 made their first contribution in https://github.com/alibaba/GraphScope/pull/3111
* FLYLX made their first contribution in https://github.com/alibaba/GraphScope/pull/3142

**Full Changelog**: https://github.com/alibaba/GraphScope/compare/v0.23.0...v0.24.0

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.