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

IGNITE-21490 .NET: Add DataStreamer data removal #3560

Merged
merged 62 commits into from
Apr 8, 2024

Conversation

ptupitsyn
Copy link
Contributor

@ptupitsyn ptupitsyn commented Apr 5, 2024

Change DataStreamer API to allow data removal:

  • IDataStreamerTarget now accepts IAsyncEnumerable<DataStreamerItem<T>>
  • Simplified overload accepts IAsyncEnumerable<T> as it was before
  • DataStreamerItem<T> is a struct record (no allocations), accepts data item and DataStreamerOperationType enum
  • DataStreamerItem factory class added to simplify generics (similar to standard library KeyValuePair.Create:
    • Constructor: new DataStreamerItem<MyEntityClass<Guid>>(entity) - entity type must be specified
    • Factory: DataStreamerItem.Create(entity) - entity type is inferred

# Conflicts:
#	modules/platforms/dotnet/Apache.Ignite/Internal/Table/RecordView.cs
# Conflicts:
#	modules/platforms/dotnet/Apache.Ignite/Internal/Table/DataStreamer.cs
# Conflicts:
#	modules/platforms/dotnet/Apache.Ignite/Internal/Table/DataStreamer.cs
@ptupitsyn ptupitsyn self-assigned this Apr 5, 2024
@ptupitsyn ptupitsyn requested a review from isapego April 5, 2024 08:23
@ptupitsyn ptupitsyn merged commit 9a24cc6 into apache:main Apr 8, 2024
1 check passed
@ptupitsyn ptupitsyn deleted the ignite-21490 branch April 8, 2024 08:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants