Skip to content

IGNITE-28320 Move client integration tests to ignite-client module#7832

Merged
ptupitsyn merged 7 commits intoapache:mainfrom
myskov:ignite-28320
Mar 23, 2026
Merged

IGNITE-28320 Move client integration tests to ignite-client module#7832
ptupitsyn merged 7 commits intoapache:mainfrom
myskov:ignite-28320

Conversation

@myskov
Copy link
Contributor

@myskov myskov commented Mar 20, 2026

https://issues.apache.org/jira/browse/IGNITE-28320

Test duration:

Before

Integration Runner - ~26 mins
All Other tests - 10 mins

After

Integration Runner - ~16 mins
All other tests - 17 mins

The Review Checklist

  • Formal criteria: TC status, codestyle, mandatory documentation. Also make sure to complete the following:
    - There is a single JIRA ticket related to the pull request.
    - The web-link to the pull request is attached to the JIRA ticket.
    - The JIRA ticket has the Patch Available state.
    - The description of the JIRA ticket explains WHAT was made, WHY and HOW.
    - The pull request title is treated as the final commit message. The following pattern must be used: IGNITE-XXXX Change summary where XXXX - number of JIRA issue.
  • Design: new code conforms with the design principles of the components it is added to.
  • Patch quality: patch cannot be split into smaller pieces, its size must be reasonable.
  • Code quality: code is clean and readable, necessary developer documentation is added if needed.
  • Tests code quality: test set covers positive/negative scenarios, happy/edge cases. Tests are effective in terms of execution time and resources.

Notes

Copy link
Contributor

@ptupitsyn ptupitsyn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@myskov
Copy link
Contributor Author

myskov commented Mar 20, 2026

@ptupitsyn, I made new changes to platform tests to fix some tests, please take one more look

@ptupitsyn
Copy link
Contributor

@myskov looks good to me, thank you for taking care of this!

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Moves thin client integration tests into the ignite-client module to rebalance the CI pipeline and centralize shared test jobs used across Java/.NET/C++ platform tests.

Changes:

  • Added integrationTest suite to modules/client and wired required module/testFixtures dependencies.
  • Relocated/renamed client integration tests (package move from org.apache.ignite.internal.runner.app.clientorg.apache.ignite.internal.client) and adjusted proxy packages accordingly.
  • Consolidated cross-platform compute test jobs/exceptions into modules/runner test fixtures (Jobs) and updated .NET/C++ references.

Reviewed changes

Copilot reviewed 41 out of 47 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
modules/runner/src/testFixtures/java/org/apache/ignite/internal/runner/app/Jobs.java Adds shared compute jobs/exceptions (used by multiple platform tests).
modules/platforms/dotnet/Apache.Ignite.Tests/Compute/ComputeTests.cs Updates expected Java exception class names in compute tests.
modules/platforms/dotnet/Apache.Ignite.Tests.Common/Compute/JavaJobs.cs Switches job/task descriptors to org.apache.ignite.internal.runner.app.Jobs$....
modules/platforms/dotnet/Apache.Ignite.Benchmarks/Compute/PlatformJobBenchmarks.cs Updates benchmark job class name to Jobs$EchoJob.
modules/platforms/cpp/tests/client-test/ignite_runner_suite.h Updates C++ job class name constants to Jobs$....
modules/platforms/cpp/tests/client-test/compute_test.cpp Updates (commented) expected exception class reference.
modules/client/src/integrationTest/java/org/apache/ignite/internal/streamer/ItServerDataStreamerTest.java Adds server-side data streamer IT entrypoint.
modules/client/src/integrationTest/java/org/apache/ignite/internal/streamer/ItClientDataStreamerTest.java Adds client-side data streamer IT entrypoint.
modules/client/src/integrationTest/java/org/apache/ignite/internal/streamer/ItClientDataStreamerLoadTest.java Adds a high-load data streamer test using multiple thin clients.
modules/client/src/integrationTest/java/org/apache/ignite/internal/streamer/ItAbstractDataStreamerTest.java Fixes wait utility usage and updates method signature accordingly.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/proxy/IgniteClientProxyInitializer.java Moves proxy test utilities to org.apache.ignite.internal.client.proxy package.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/proxy/IgniteClientProxyFrontendHandler.java Same package move for proxy handler.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/proxy/IgniteClientProxyBackendHandler.java Same package move for proxy handler.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/proxy/IgniteClientProxy.java Same package move for proxy server.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinConnectionFailoverTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientUninitializedClusterTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTupleComputeMarshallingTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTransactionsWithReplicasTest.java Package relocation + updated static import to new package.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTransactionsWithBrokenReplicatorTest.java Package relocation + updated static import to new package.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTransactionsTest.java Package relocation + updated expected class name string.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTransactionCleanupTest.java Package relocation + updated static import to new package.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTablesTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientTablesGetListTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientSqlTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientSchemaSynchronizationTest.java Package relocation + updated expected type names in assertions.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientPojoComputeMarshallingTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientPartitionAwarenessTest.java Package relocation + updated proxy import to new package.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientObservationTsTest.java Package relocation + removed unused internal client imports.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientMultistatementSqlTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientMarshallingTest.java Package relocation + updated expected type names in assertions.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientMarshallingEmbeddedTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientDdlQueriesTrackerTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientConnectionTest.java Package relocation + removed unused internal client imports.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientComputeTypeCheckMarshallingTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientComputeTest.java Uses shared Jobs test fixture for compute jobs/exceptions.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientComputeMarshallingTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientChannelValidatorTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItThinClientAuthenticationTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItNullsThinClientTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItNullsEmbeddedClientTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItCustomKeyColumnOrderEmbeddedTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItCustomKeyColumnOrderClientTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItClientObservableTimeTest.java Adds observable-time SQL tests for thin client.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItClientGetTableSchemaTest.java Adds test for schema retrieval when version isn’t yet available on a node.
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItClientDirectMappingTest.java Adds transaction direct-mapping test (incl. compat feature bit toggle).
modules/client/src/integrationTest/java/org/apache/ignite/internal/client/ItAbstractThinClientTest.java Package relocation to org.apache.ignite.internal.client.
modules/client/build.gradle Enables integrationTest suite and declares required integration-test deps.
Comments suppressed due to low confidence (1)

modules/runner/src/testFixtures/java/org/apache/ignite/internal/runner/app/Jobs.java:544

  • ToStringJob.executeAsync calls arg.toString() without handling null, but ComputeJob.executeAsync allows arg to be null. This will throw NPE if a caller submits the job with a null argument; consider returning null (or the string "null") when arg is null, similar to other ToString jobs in the codebase.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@ptupitsyn ptupitsyn merged commit 56fd827 into apache:main Mar 23, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants