Skip to content

Conversation

uglide
Copy link
Contributor

@uglide uglide commented Oct 8, 2025

No description provided.

@uglide uglide requested a review from Copilot October 8, 2025 13:09
@uglide uglide force-pushed the im/remove-deprecated-constructors branch from 0d6d75e to 3a757ae Compare October 8, 2025 13:10
Copy link
Contributor

@Copilot 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

This PR removes deprecated sharding functionality from the Jedis Redis client library, including the complete JedisSharding class and related components.

  • Removes deprecated JedisSharding class and ShardedConnectionProvider
  • Removes deprecated base classes TransactionBase and PipelineBase
  • Updates class inheritance to use newer abstract base classes

Reviewed Changes

Copilot reviewed 20 out of 20 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/test/java/redis/clients/jedis/builders/UnifiedJedisConstructorReflectionTest.java Removes reference to ShardedConnectionProvider from constructor safety check
src/test/java/redis/clients/jedis/benchmark/ShardingBenchmark.java Completely removes benchmark test for sharding functionality
src/test/java/redis/clients/jedis/benchmark/ShardedBenchmark.java Completely removes already commented-out benchmark test
src/test/java/redis/clients/jedis/ShardingTest.java Completely removes integration tests for JedisSharding
src/test/java/redis/clients/jedis/ShardedPipelineTest.java Completely removes tests for sharded pipeline functionality
src/test/java/redis/clients/jedis/ShardedConnectionTest.java Completely removes sharded connection tests
src/main/java/redis/clients/jedis/providers/ShardedConnectionProvider.java Completely removes the sharded connection provider implementation
src/main/java/redis/clients/jedis/mcf/MultiDbTransaction.java Updates to extend AbstractTransaction instead of deprecated TransactionBase
src/main/java/redis/clients/jedis/mcf/MultiDbPipeline.java Updates to extend AbstractPipeline instead of deprecated PipelineBase
src/main/java/redis/clients/jedis/UnifiedJedis.java Removes deprecated sharding constructors and updates return types
src/main/java/redis/clients/jedis/TransactionBase.java Completely removes deprecated base class
src/main/java/redis/clients/jedis/Transaction.java Updates to extend AbstractTransaction instead of TransactionBase
src/main/java/redis/clients/jedis/ShardedPipeline.java Completely removes sharded pipeline implementation
src/main/java/redis/clients/jedis/ShardedCommandObjects.java Completely removes sharded command objects implementation
src/main/java/redis/clients/jedis/ShardedCommandArguments.java Completely removes sharded command arguments implementation
src/main/java/redis/clients/jedis/ReliableTransaction.java Updates to extend AbstractTransaction instead of TransactionBase
src/main/java/redis/clients/jedis/PipelineBase.java Completely removes deprecated base class
src/main/java/redis/clients/jedis/Pipeline.java Updates to extend AbstractPipeline instead of PipelineBase
src/main/java/redis/clients/jedis/MultiNodePipelineBase.java Updates to extend AbstractPipeline instead of PipelineBase
src/main/java/redis/clients/jedis/JedisSharding.java Completely removes the main JedisSharding class

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link

github-actions bot commented Oct 8, 2025

Test Results

   280 files   -  3     280 suites   - 3   11m 36s ⏱️ +8s
10 063 tests  - 12  10 018 ✅ +399  45 💤  - 411  0 ❌ ±0 
 2 701 runs   - 12   2 701 ✅  -  12   0 💤 ±  0  0 ❌ ±0 

Results for commit fb59887. ± Comparison against base commit 5db1a39.

This pull request removes 12 tests.
redis.clients.jedis.ShardedConnectionTest ‑ checkConnections
redis.clients.jedis.ShardedConnectionTest ‑ checkFailedJedisServer
redis.clients.jedis.ShardedConnectionTest ‑ checkResourceIsCloseable
redis.clients.jedis.ShardedPipelineTest ‑ constructorClientConfig
redis.clients.jedis.ShardedPipelineTest ‑ constructorPoolConfig
redis.clients.jedis.ShardedPipelineTest ‑ shardedPipelineSync
redis.clients.jedis.ShardingTest ‑ checkCloseable
redis.clients.jedis.ShardingTest ‑ checkKeyTags
redis.clients.jedis.ShardingTest ‑ testGeneralCommand
redis.clients.jedis.ShardingTest ‑ trySharding
…

♻️ This comment has been updated with latest results.

Copy link
Contributor

@atakavci atakavci left a comment

Choose a reason for hiding this comment

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

LGTM

@uglide uglide merged commit 158e726 into master Oct 9, 2025
15 of 17 checks passed
@uglide uglide deleted the im/remove-deprecated-constructors branch October 9, 2025 09:14
uglide added a commit that referenced this pull request Oct 9, 2025
* Remove JedisSharding

* Remove deprecated constructors in UnifiedJedis

* Clean up UnifiedJedisConstructorReflectionTest

* Remove remaining ShardedCommandArguments

* Remove deprecated PipelineBase

* Remove deprecated TransactionBase

* Remove unused attr in MultiDbTransaction
atakavci added a commit that referenced this pull request Oct 9, 2025
commit 297279e
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 13:06:10 2025 +0200

    Add v6 and v7 migration guides (#4315)

    * Add migration guide for v7

    * Move all migration guides to subfolder

    * Update readme:

    - Bump client version
    - Update list of supported Redis versions
    - Remove references to JedisPool
    - Remove reference to Google Group

    * Remove duplicated content in the migration guide

    * Update README.md

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

    * Add missing v5 to v6 migration guide

    * Fix broken link

    * Update outdated modules section in README

    ---------

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 3645601
Author: Ivo Gaydazhiev <ivo.gaydazhiev@redis.com>
Date:   Thu Oct 9 13:53:02 2025 +0300

    Dedicated profile for running Scenario tests (#4312)

    * Dedicated profile for running Scenario tests

      to run only scenario tests
      mvn -Pscenario-tests clean verify

    * format

    * remove import after rebase conflict

    * fix RedisRestAPIIT scenario test

     - increase expected bdb's count to account for additional db added to test env
     - fix incorrect bdbid used for lag-aware availablity checks
        now using bdb of'"re-active-active"

    * fix LagAwareStrategySslIT scenario test

     - Now exception is propagated in case of ssl connection errors instead of returning UNHEALTHY
     - updated the test to current expectations
     - Enhanced test to ensure untrusted default certificate

    * java 8 compatibility

    * remove @tag("integration") from IntegrationTest* to avoid multiple runs of same test

    ---------

    Co-authored-by: Igor Malinovskiy <u.glide@gmail.com>

commit 07bf3b0
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 12:00:36 2025 +0200

    [automatic failover] Update failover docs (#4314)

    Update failover docs

    - Add migration guide from 6.x to 7.0
    - Add instructions on optional deps
    - Clean up wording to refer to multiDbClient instead of connection provider

commit 158e726
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 11:14:28 2025 +0200

    Remove deprecated constructors, classes and JedisSharding (#4311)

    * Remove JedisSharding

    * Remove deprecated constructors in UnifiedJedis

    * Clean up UnifiedJedisConstructorReflectionTest

    * Remove remaining ShardedCommandArguments

    * Remove deprecated PipelineBase

    * Remove deprecated TransactionBase

    * Remove unused attr in MultiDbTransaction

commit 5db1a39
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 10:04:06 2025 +0200

    Remove spellcheck (#4309)

    Nowadays, AI reviewing tools like CoPilot catch spellcheck issues better than pyspelling without a burden of maintaining wordlist.txt
ggivo added a commit that referenced this pull request Oct 9, 2025
…4317)

* [automatic failover] Replace EchoStrategy with PingStrategy (#4313)

* - replace EchoStrategy with PingStrategy

* - fix doc

* [automatic failover] Remove UnifiedJedis experimental constructor accepting MultiDbConnectionProvider (#4316)

* Remove UnifiedJedis(MultiDbConnectionProvider) experimental constructor

The recommended way to create MultiDbClient is using MultiDbClient.builder().
Update all tests to use the builder pattern.

Fixes #4307

* revert unintentional change in MultiDbClientBuilder

* Squashed commit of the following:

commit 297279e
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 13:06:10 2025 +0200

    Add v6 and v7 migration guides (#4315)

    * Add migration guide for v7

    * Move all migration guides to subfolder

    * Update readme:

    - Bump client version
    - Update list of supported Redis versions
    - Remove references to JedisPool
    - Remove reference to Google Group

    * Remove duplicated content in the migration guide

    * Update README.md

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

    * Add missing v5 to v6 migration guide

    * Fix broken link

    * Update outdated modules section in README

    ---------

    Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

commit 3645601
Author: Ivo Gaydazhiev <ivo.gaydazhiev@redis.com>
Date:   Thu Oct 9 13:53:02 2025 +0300

    Dedicated profile for running Scenario tests (#4312)

    * Dedicated profile for running Scenario tests

      to run only scenario tests
      mvn -Pscenario-tests clean verify

    * format

    * remove import after rebase conflict

    * fix RedisRestAPIIT scenario test

     - increase expected bdb's count to account for additional db added to test env
     - fix incorrect bdbid used for lag-aware availablity checks
        now using bdb of'"re-active-active"

    * fix LagAwareStrategySslIT scenario test

     - Now exception is propagated in case of ssl connection errors instead of returning UNHEALTHY
     - updated the test to current expectations
     - Enhanced test to ensure untrusted default certificate

    * java 8 compatibility

    * remove @tag("integration") from IntegrationTest* to avoid multiple runs of same test

    ---------

    Co-authored-by: Igor Malinovskiy <u.glide@gmail.com>

commit 07bf3b0
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 12:00:36 2025 +0200

    [automatic failover] Update failover docs (#4314)

    Update failover docs

    - Add migration guide from 6.x to 7.0
    - Add instructions on optional deps
    - Clean up wording to refer to multiDbClient instead of connection provider

commit 158e726
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 11:14:28 2025 +0200

    Remove deprecated constructors, classes and JedisSharding (#4311)

    * Remove JedisSharding

    * Remove deprecated constructors in UnifiedJedis

    * Clean up UnifiedJedisConstructorReflectionTest

    * Remove remaining ShardedCommandArguments

    * Remove deprecated PipelineBase

    * Remove deprecated TransactionBase

    * Remove unused attr in MultiDbTransaction

commit 5db1a39
Author: Igor Malinovskiy <u.glide@gmail.com>
Date:   Thu Oct 9 10:04:06 2025 +0200

    Remove spellcheck (#4309)

    Nowadays, AI reviewing tools like CoPilot catch spellcheck issues better than pyspelling without a burden of maintaining wordlist.txt

---------

Co-authored-by: Ivo Gaydazhiev <ivo.gaydazhiev@redis.com>
@ggivo ggivo added the breakingchange Pull request that has breaking changes. Must include the breaking behavior in release notes. label Oct 10, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breakingchange Pull request that has breaking changes. Must include the breaking behavior in release notes.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants