alibaba / alibaba/GraphScope

[GIE CI Test] Introduce Integrated Tests for Compiler and Hiactor Functionality in GIE

Open
#2,914 4 comments 1 reaction 2 assignees Claimed by @shirly121 View on GitHub
component:gie
Dominant language
C++
Stars
3.6k
Forks
468
Avg merge
29m
Merged PRs (30d)
1

Description

**Is your feature request related to a problem? Please describe.**

The GraphScope Interactive Engine (GIE) is a powerful tool for executing Gremlin or Cypher queries against graph data. To ensure the functionality and reliability of the Compiler and Hiactor components within GIE, it is crucial to introduce integrated tests that cover their respective functionalities. This GitHub issue focuses on implementing a comprehensive test suite that consists of three parts: the test entry point, the Compiler service, and the Hiactor service.

Test Entry Point:
The test entry point encompasses the test framework and the workload. For the workload, we will introduce LDBC interactive workload written in Cypher. This workload will contain a diverse set of Cypher queries that cover various query patterns, complexities, and use cases. The test framework will utilize the Maven test command to execute the tests. Behind the scenes, the Maven test command will utilize a Neo4j driver, which will send the Cypher queries as strings to the remote Compiler service.

Compiler Service:
The Compiler service is a critical component responsible for translating Cypher queries into execution plans. Start or Stop commands need to be provided to initialize or gracefully terminate the Compiler service.

Hiactor Service:
The Hiactor service is responsible for actual execution. In addition to start and stop commands, the Hiactor service needs to load graph data for testing purposes. Specifically, we will use the LDBC benchmark data with a scale factor of 1. Loading this data will ensure realistic and representative testing scenarios.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.