Skip to content

[feat]: MySQL R2DBC support - #4071

Closed
zqr10159 wants to merge 16 commits into
apache:masterfrom
zqr10159:mysql-r2dbc
Closed

[feat]: MySQL R2DBC support#4071
zqr10159 wants to merge 16 commits into
apache:masterfrom
zqr10159:mysql-r2dbc

Conversation

@zqr10159

Copy link
Copy Markdown
Member

This pull request introduces significant improvements to the documentation and build process for the native collector, as well as updates to Java version requirements and JDBC handling. The main highlights are the addition of a GitHub Actions workflow for native collector builds, clearer installation and usage instructions across multiple languages, and a move to Java 25 throughout the project. Additionally, the collector's JDBC query logic is refactored to improve maintainability and flexibility.

Build and Release Process:

  • Added a new GitHub Actions workflow (.github/workflows/collector-native-build.yml) to automate building and packaging of native collector releases for multiple platforms, streamlining the release process.

Documentation Updates (English, Chinese, Japanese):

  • Updated installation instructions in README.md, README_CN.md, and README_JP.md to:
    • Use the new package naming convention (apache-hertzbeat-xx-bin.tar.gz).
    • Clearly differentiate between JVM and native collector packages, and provide platform-specific details for native collector installation and startup.
    • Explain the logic for JDBC driver usage and fallback to built-in query engines, including special cases for Oracle and DB2. [1] [2] [3] [4] [5] [6] [7]

Java Version Requirement Updates:

  • Increased the required Java version from 21 to 25 in documentation (README.md, README_CN.md, README_JP.md, CONTRIBUTING.md) and Maven configuration files (hertzbeat-ai/pom.xml, hertzbeat-collector/hertzbeat-collector-basic/pom.xml). [1] [2] [3] [4] [5] [6] [7]

JDBC Handling and Codebase Improvements:

  • Refactored JDBC query logic in JdbcCommonCollect.java to utilize a new JdbcQueryRowSet abstraction, improving support for different query types and making the code more modular and maintainable.
  • Removed the direct dependency on mysql-connector-j from the collector basic module, allowing for more flexible runtime driver management. [1] [2] [3] [4]

These changes collectively improve the maintainability, usability, and clarity of the project for both developers and end users.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant