-
Notifications
You must be signed in to change notification settings - Fork 642
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
[ISSUE #4331]Add top-level interfaces of jdbc source connector #4332
Conversation
affad10
to
56db18c
Compare
Codecov Report
@@ Coverage Diff @@
## master #4332 +/- ##
============================================
- Coverage 17.80% 17.49% -0.32%
- Complexity 1516 1544 +28
============================================
Files 611 663 +52
Lines 25598 26441 +843
Branches 2377 2439 +62
============================================
+ Hits 4559 4627 +68
- Misses 20601 21364 +763
- Partials 438 450 +12
... and 1 file with indirect coverage changes 📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
f3d124f
to
a078984
Compare
02b93b1
to
bbd17f6
Compare
@mxsm too many files changed, could you please split it? |
I will |
bdfe4f7
to
07febc5
Compare
@mxsm The way I was looking this implementation is a bit different. What do you think about a wrapper API around vanilla jdbc with the ability to load a database driver depending on the source(MySQL, PostgreSQL, SQL Server etc...) or the sink(MySQL, PostgreSQL, SQL Server etc..). |
@Pil0tXia @HattoriHenzo The main idea of the design is to parse the data model of the database supporting Jdbc into the corresponding EventMesh event model for processing.Provide a universal interface for interactivity with the database layer and load different database drivers through protocols. Here, I provide dynamic loading of database drivers through JdbcConnection. Later, additional database support can be added by simply including the corresponding database JDBC driver. When the module starts, it automatically loads the corresponding driver based on the configured JDBC protocol.
I will improve the code and ask for your help to review it later. |
@mxsm thanks for the details. Here is a more detailed schema that represent my approach.
|
@HattoriHenzo Thanks for the visual illustration!
The overall architecture design is basically the same as yours, but there are some differences in nomenclature and implementation details. I will split the PR into smaller chunks to facilitate code review by others. |
@mxsm Thanks for your reply. Your explanation is very clear. |
@mxsm Have you done your split? |
@qqeasonchen
After the overall MySQLConnector source is implemented, MySQL, PG, and Oracle sinks will be implemented first. |
6582689
to
dd67344
Compare
@qqeasonchen Have done |
137 file changed is too risky. |
@qqeasonchen I will remove the database abstraction module and event module, leaving only the code at the interface level. |
you can submit only jdbc-connector module in one pr, and other changes in other prs |
@qqeasonchen Based on the current PR, the changes are mainly to the jdbc connector module. During the previous implementation, the changes in PR #4131 were included, but PR #4131 has been in the code review and merge state. Now that I have made changes, only the interface-level code is included in the current PR. I was wondering if you think it’s okay to review and merge PR #4131. |
a5212cf
to
802b96c
Compare
@qqeasonchen The current code only includes the jdbcconnector module, but I need help reviewing the code in PR #4131 to solve a problem in the subsequent SPI loading. |
then we need to review #4131 first, you can ping anyone you want |
Fixes #4331
Motivation
Explain the content here.
Explain why you want to make the changes and what problem you're trying to solve.
Modifications
Describe the modifications you've done.
Documentation