Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BREAKING CHANGE(server): disable legacy backends include MySQL/PG/c*(.etc) #2746

Open
wants to merge 10 commits into
base: master
Choose a base branch
from

Conversation

Pengzna
Copy link
Collaborator

@Pengzna Pengzna commented Mar 15, 2025

as title.

sub task of #2724

in 1.7.0, we tend to disable cassandra, mysql, postgresql, cockroachdb or palo as backend.
only hstore, rocksdb, hbase, memory are supported for backend.

if user want to use cassandra, mysql, postgresql, cockroachdb or palo as backend, please find a version before 1.7.0 of apache hugegraph for your application.

@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. store Store module labels Mar 15, 2025
Copy link

codecov bot commented Mar 15, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 34.38%. Comparing base (c99cfcd) to head (265f2aa).
Report is 1 commits behind head on master.

❗ There is a different number of reports uploaded between BASE (c99cfcd) and HEAD (265f2aa). Click for more details.

HEAD has 6 uploads less than BASE
Flag BASE (c99cfcd) HEAD (265f2aa)
7 1
Additional details and impacted files
@@              Coverage Diff              @@
##             master    #2746       +/-   ##
=============================================
- Coverage     46.95%   34.38%   -12.57%     
+ Complexity      821      375      -446     
=============================================
  Files           745      745               
  Lines         60076    60068        -8     
  Branches       7672     7672               
=============================================
- Hits          28210    20656     -7554     
- Misses        29043    37128     +8085     
+ Partials       2823     2284      -539     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@imbajin imbajin requested a review from Copilot March 30, 2025 10:07
Copilot

This comment was marked as outdated.

@dosubot dosubot bot added size:XL This PR changes 500-999 lines, ignoring generated files. and removed size:L This PR changes 100-499 lines, ignoring generated files. labels Apr 2, 2025
Pengzna added 3 commits April 2, 2025 18:39
…into 1.7/remote-unnecessary-backend

# Conflicts:
#	hugegraph-server/hugegraph-core/src/main/java/org/apache/hugegraph/backend/store/BackendProviderFactory.java
@imbajin imbajin requested a review from Copilot April 2, 2025 12:14
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR disables backends that are no longer supported in version 1.7.0 of HugeGraph by removing registrations, enforcing allowed backends in the core provider, updating documentation, and restricting backend testing in CI.

  • Removed backend registration calls for Cassandra, ScyllaDB, MySQL, and Palo in the example utility.
  • Enforced allowed backend values in the provider factory and updated the instantiation method.
  • Updated both server and global README files and the CI workflow to reflect the supported backends.

Reviewed Changes

Copilot reviewed 7 out of 22 changed files in this pull request and generated no comments.

Show a summary per file
File Description
hugegraph-server/hugegraph-example/src/main/java/org/apache/hugegraph/example/ExampleUtil.java Removed calls to register unsupported backends.
hugegraph-server/hugegraph-core/src/main/java/org/apache/hugegraph/backend/store/BackendProviderFactory.java Added an ALLOWED_BACKENDS check, made providers final, and updated instance creation.
hugegraph-server/README.md Updated supported backend list to display only allowed backends.
README.md Revised backend support details in the plug-in backend driver section.
.github/workflows/server-ci.yml Limited CI testing matrix to supported backends.
Files not reviewed (15)
  • .github/outdated/.travis.yml: Language not supported
  • hugegraph-cluster-test/hugegraph-clustertest-dist/src/assembly/static/conf/hugegraph.properties.template: Language not supported
  • hugegraph-server/hugegraph-dist/docker/scripts/detect-storage.groovy: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/build.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/config.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/deploy.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/jenkins.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/publish.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/jenkins/test.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/static/conf/graphs/hstore.properties.template: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/static/conf/graphs/hugegraph.properties: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/travis/install-backend.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/assembly/travis/start-server.sh: Language not supported
  • hugegraph-server/hugegraph-dist/src/main/resources/backend.properties: Language not supported
  • hugegraph-server/hugegraph-example/src/main/resources/hugegraph.properties: Language not supported
Comments suppressed due to low confidence (1)

hugegraph-server/hugegraph-core/src/main/java/org/apache/hugegraph/backend/store/BackendProviderFactory.java:70

  • [nitpick] The 'backend' variable is already lowercased upon retrieval; consider removing the redundant toLowerCase() call to improve clarity.
E.checkState(ALLOWED_BACKENDS.contains(backend.toLowerCase()),

@imbajin imbajin changed the title chore(backend): disable unnecssary backends BREAKING CHANGE(server): disable legacy backends include MySQL/PG/c*(.etc) Apr 2, 2025
Copy link
Member

@imbajin imbajin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remember to update the project version to 1.7.0 later (maybe in next PR?)

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Apr 2, 2025
@imbajin imbajin added this to the 1.7.0 milestone Apr 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm This PR has been approved by a maintainer size:XL This PR changes 500-999 lines, ignoring generated files. store Store module
Projects
Status: In progress
Development

Successfully merging this pull request may close these issues.

3 participants