IGNITE-16930 .NET: Thin 3.0: Add Compute.ExecuteColocated (#809)
authorPavel Tupitsyn <ptupitsyn@apache.org>
Tue, 17 May 2022 13:44:22 +0000 (16:44 +0300)
committerGitHub <noreply@github.com>
Tue, 17 May 2022 13:44:22 +0000 (16:44 +0300)
commit32afeaaf02d8eb4d0d41f8cefb49263f52976ede
tree6412e6340749f01c5ee9ee6305dc2cd3145396a8
parent8c075cdd8defd5ff811c1fa68864650d22c7d06e
IGNITE-16930 .NET: Thin 3.0: Add Compute.ExecuteColocated (#809)

* Implement `ExecuteColocated` in .NET client. Send requests to default node, partition awareness will be added later (IGNITE-16930).
* To avoid extra table request on every `ExecuteColocated` call (we need table id and schemas), cache tables by name. If a table gets dropped and created again with the same name and a different id, retry the operation.
19 files changed:
modules/platforms/dotnet/Apache.Ignite.Tests/Compute/ComputeTests.cs
modules/platforms/dotnet/Apache.Ignite.Tests/IgniteTestsBase.cs
modules/platforms/dotnet/Apache.Ignite.Tests/RawSocketConnectionTests.cs
modules/platforms/dotnet/Apache.Ignite.Tests/Table/RecordViewBinaryTests.cs
modules/platforms/dotnet/Apache.Ignite.Tests/Table/RecordViewPocoTests.cs
modules/platforms/dotnet/Apache.Ignite.Tests/Table/TablesTests.cs
modules/platforms/dotnet/Apache.Ignite.Tests/Transactions/TransactionsTests.cs
modules/platforms/dotnet/Apache.Ignite/ClientErrorCode.cs
modules/platforms/dotnet/Apache.Ignite/Compute/ICompute.cs
modules/platforms/dotnet/Apache.Ignite/IgniteClientException.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Compute/Compute.cs
modules/platforms/dotnet/Apache.Ignite/Internal/IgniteClientInternal.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Proto/ClientOp.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Proto/ClientOpExtensions.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Table/RecordView.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Table/Serialization/RecordSerializer.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Table/Table.cs
modules/platforms/dotnet/Apache.Ignite/Internal/Table/Tables.cs
modules/runner/src/integrationTest/java/org/apache/ignite/internal/runner/app/PlatformTestNodeRunner.java