-
Notifications
You must be signed in to change notification settings - Fork 162
feat(connectors): support Elasticsearch sink and source connectors #1872
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
base: master
Are you sure you want to change the base?
Conversation
Hey, Thank you for the contribution! Please check how the example connectors are implemented, by making use of either I think that your code can be refactored to support the desired plugin system. Speaking of the configuration, as well as the basic overview of the connector capabilities, you could add the separate |
@kaori-seasons have you already joined our discord? |
OK, thanks for your suggestion. I am too busy at work during weekdays, so I will take some time to read the documentation of the relevant connectors on weekends. |
My Discord shows that it does not support Chinese mobile phone numbers. |
@kaori-seasons we dont plan to use slack, we have pretty big community already on the discord. you can use github discussions if you have any questions. |
@kaori-seasons do you plan to change your code according to @spetz comments? |
I've been busy at work this week and will refactor as soon as possible. |
Thank you for the recent update, looks good now :) Could you please fix the markdown and update PR title (we use conventional commits) e.g. |
Hey @kaori-seasons just wanted to ask, whether you'll have time to complete this, or could I help you? |
Oh dear spetz, best regards, I just saw your answer. I will make the changes as soon as possible this week |
Thanks @kaori-seasons, also please check the latest changes which allow to provide the optional state for source connector (e.g. keep track of the recently fetched record ID or anything else, in the persistent way). |
OK, I will change |
@spetz Hi, dear spetz, I introduced a state manager to track the most recently fetched record ID in a persistent way, and added corresponding integration tests. Welcome your review. The purpose of the function change is as follows: Core Function
Technical Implementation
State information
How to use
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @kaori-seasons please ensure that the code compiles locally, and all the other validation such as running clippy, tests etc. also succeeds. For example, some structures are duplicated (e.g. SourceState
), there's no need for StatefulSource
or StatefulSink
traits etc.
} | ||
|
||
#[tokio::test] | ||
async fn test_state_manager_creation() { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use the simple BDD convention, such as should/given/when
, for example, state_manager_should_be_created()
and so on.
Hi, @spetz. I should have changed all the files according to your suggestion and added relevant tests. Make sure all the tests pass. Can you help me take a look when you have time? ![]() ![]() |
By the way, due to work reasons, I may not have much time in the future. I sincerely hope that this pull request can be merged as soon as possible. |
@kaori-seasons please take a look at https://github.com/apache/iggy/blob/master/CONTRIBUTING.md and https://github.com/apache/iggy/blob/master/PULL_REQUEST_TEMPLATE - on top of the required commands, please also invoke the following, to ensure the dependencies are up to date, and all the source files have the license header included.
You can either use |
Iggy Elasticsearch Connector
Related to ISSUE#1851
An Elasticsearch connector for Apache Iggy providing bidirectional data synchronization capabilities.
Features
Quick Start
Installation
cargo add iggy-elasticsearch-connector
Sink Usage Example
Source Usage Example
Configuration
Core Configuration Structures
Deployment
Docker Compose
Quick deployment:
Commit Message Rules
Remember: Your contribution is essential to the success of
iggy
. Please ensure that your PR conforms to these guidelines for a swift and smooth integration process.Thank you!