diff --git a/.github/workflows/pd-store.yml b/.github/workflows/pd-store.yml
index 65fb3ccc9..7c45e0faa 100644
--- a/.github/workflows/pd-store.yml
+++ b/.github/workflows/pd-store.yml
@@ -49,3 +49,45 @@ jobs:
uses: codecov/codecov-action@v3.0.0
with:
file: ${{ env.REPORT_DIR }}/*.xml
+
+ store:
+ # TODO: avoid duplicated env setup
+ runs-on: ubuntu-latest
+ env:
+ USE_STAGE: 'true' # Whether to include the stage repository.
+ TRAVIS_DIR: hugegraph-server/hugegraph-dist/src/assembly/travis
+ REPORT_DIR: target/site/jacoco
+
+ steps:
+ - name: Install JDK 11
+ uses: actions/setup-java@v3
+ with:
+ java-version: '11'
+ distribution: 'zulu'
+
+ - name: Cache Maven packages
+ uses: actions/cache@v3
+ with:
+ path: ~/.m2
+ key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
+ restore-keys: ${{ runner.os }}-m2
+
+ - name: Checkout
+ uses: actions/checkout@v3
+ with:
+ fetch-depth: 2
+
+ - name: use staged maven repo settings
+ if: ${{ env.USE_STAGE == 'true' }}
+ run: |
+ cp $HOME/.m2/settings.xml /tmp/settings.xml
+ mv -vf .github/configs/settings.xml $HOME/.m2/settings.xml
+
+ - name: Run common test
+ run: |
+ mvn test -pl hugegraph-store/hg-store-test -am -P store-common-test
+
+ - name: Upload coverage to Codecov
+ uses: codecov/codecov-action@v3.0.0
+ with:
+ file: ${{ env.REPORT_DIR }}/*.xml
diff --git a/hugegraph-store/.gitignore b/hugegraph-store/.gitignore
new file mode 100644
index 000000000..afb9ae837
--- /dev/null
+++ b/hugegraph-store/.gitignore
@@ -0,0 +1,2 @@
+# Exclude the generated PB files
+hg-store-grpc/src/main/java/
diff --git a/hugegraph-store/README.md b/hugegraph-store/README.md
index bef8b53c8..cd2dedb90 100644
--- a/hugegraph-store/README.md
+++ b/hugegraph-store/README.md
@@ -1,5 +1,8 @@
-# HugeGraph Store
+> Note: From revision 1.5.0, the code of HugeGraph-Store will be adapted to this location (WIP).
-HugeGraph Store is a new built-in storage backend, which uses RocksDB as the distributed backend storage engine.
+# HugeGraph Store (BETA)
-> Note: Currently, the contents of this folder are empty. Starting from revision 1.5.0, the code of HugeGraph Store will be adapted to this location (WIP).
+HugeGraph Store is a new built-in storage backend, which uses RocksDB as the distributed backend
+storage engine.
+
+> BTW, if you meet any problem when using HugeGraph Store, please feel free to contact us for help
diff --git a/hugegraph-store/pom.xml b/hugegraph-store/pom.xml
new file mode 100644
index 000000000..0bb8cd96e
--- /dev/null
+++ b/hugegraph-store/pom.xml
@@ -0,0 +1,317 @@
+
+
+
+
+
+ 4.0.0
+
+ hugegraph-store
+ ${revision}
+ pom
+
+
+ org.apache.hugegraph
+ hugegraph
+ ${revision}
+ ../pom.xml
+
+
+
+ hg-store-common
+ hg-store-grpc
+ hg-store-client
+ hg-store-test
+
+
+
+
+
+
+
+
+
+ 1.5.0
+ 11
+ 11
+ 2.15.0
+ ${project.basedir}/..
+
+
+
+
+
+
+ org.apache.hugegraph
+ hg-store-common
+ ${project.version}
+
+
+ org.apache.hugegraph
+ hg-store-grpc
+ ${project.version}
+
+
+
+
+
+
+
+ org.apache.hugegraph
+ hg-store-client
+ ${project.version}
+
+
+
+
+
+
+
+
+
+
+
+
+ org.apache.logging.log4j
+ log4j-slf4j-impl
+ 2.15.0
+
+
+
+
+
+
+ junit
+ junit
+ 4.13.2
+ test
+
+
+
+
+
+
+ org.jacoco
+ jacoco-maven-plugin
+ 0.8.4
+
+
+
+ prepare-agent
+
+
+
+
+
+ org.codehaus.mojo
+ flatten-maven-plugin
+ 1.2.7
+
+ true
+ resolveCiFriendliesOnly
+
+
+
+ flatten
+ process-resources
+
+ flatten
+
+
+
+ flatten.clean
+ clean
+
+ clean
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-clean-plugin
+
+
+
+ ${project.basedir}/
+
+ *.tar
+ *.tar.gz
+ .flattened-pom.xml
+
+ dist/**
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ store-common-test
+
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 2.20
+
+
+ store-common-test
+
+ test
+
+ test
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index ff448ffc2..273270f9d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -92,8 +92,7 @@
hugegraph-server
hugegraph-pd
-
-
+ hugegraph-store
@@ -177,8 +176,11 @@
**/hbase-*/**
**/apache-cassandra-*/**
**/pid
+
+ **/tmp/**
**/src/main/java/org/apache/hugegraph/pd/grpc/**
+ **/src/main/java/org/apache/hugegraph/store/grpc/**
true