Async replication via BackgroundService Extension
- Dominant language
- C#
- Stars
- 2.4k
- Forks
- 658
- Avg merge
- 3d 5h
- Merged PRs (30d)
- 9
Description
### Is there an existing issue for this?
- [x] I have searched the existing issues
### Is your feature request related to a problem? Please describe the problem.
Split out from #1181, see discussion in #1182. Related to @NehanPathan's GSoC 2025 work.
It was determined to be infeasible to add async support to our existing ReplicationClient, so we should create a new approach.
### Describe the solution you'd like
We should add to the new [lucenenet-extensions repo](https://github.com/apache/lucenenet-extensions) support for an asynchronous replication client. This should be implemented as a [BackgroundService](https://learn.microsoft.com/en-us/aspnet/core/fundamentals/host/hosted-services?view=aspnetcore-10.0&tabs=visual-studio) so that we don't have to reinvent the plumbing (like was done originally in ReplicationClient). BackgroundService will also automatically let us use Microsoft.Extensions.DependencyInjection for this.
### Additional context
_No response_
Contributor guide
Research direction
Start by reading the discussion in #1181 and #1182, then review the new lucenenet-extensions repository and the linked Microsoft BackgroundService guidance. Define the asynchronous replication client as a BackgroundService with Microsoft.Extensions.DependencyInjection support; done means the extension provides this new replication approach.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- backend, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100