Skip to content

Add basic connection interruption tests #3292

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

Merged
merged 5 commits into from
Jun 6, 2025

Conversation

uglide
Copy link
Collaborator

@uglide uglide commented May 13, 2025

  • Use reactor-netty-http client to interact with the Fault Injector
  • Test command execution and PubSub with dmc_restart, network_failure failures injected

uglide added 2 commits May 13, 2025 16:43
- Use reactor-netty-http client to interact
with Fault Injector
- Test command execution and PubSub with
dmc_restart, network_failure failures injected
Copy link
Collaborator

@kiryazovi-redis kiryazovi-redis left a comment

Choose a reason for hiding this comment

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

Good sample tests
Will prove invaluable as a starting template to further testing with fault injector
not an approver myself, though.

@tishun tishun added this to the Async milestone May 28, 2025
Copy link
Collaborator

@tishun tishun left a comment

Choose a reason for hiding this comment

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

I like it a lot.

My major question is - when / how do we run these.

@tishun tishun added the type: task A general task label Jun 2, 2025
@uglide
Copy link
Collaborator Author

uglide commented Jun 5, 2025

Run scenario tests

@uglide
Copy link
Collaborator Author

uglide commented Jun 5, 2025

Testcase Errors Failures Skipped Total
io.lettuce.scenario.ConnectionInterruptionReactiveTest 0 0 0 0

---- Details for mantainers

@uglide
Copy link
Collaborator Author

uglide commented Jun 5, 2025

Run scenario tests

1 similar comment
@uglide
Copy link
Collaborator Author

uglide commented Jun 5, 2025

Run scenario tests

@uglide
Copy link
Collaborator Author

uglide commented Jun 5, 2025

Testcase Errors Failures Skipped Total
io.lettuce.scenario.ConnectionInterruptionReactiveTest 0 3 0 4

---- Details for mantainers

@tishun
Copy link
Collaborator

tishun commented Jun 5, 2025

Testcase Errors Failures Skipped Total
io.lettuce.scenario.ConnectionInterruptionReactiveTest 0 3 0 4
---- Details for mantainers

Ah, very nice indeed!

- Use more advanced reconnection tracking
- Show reconnection information
- Test by reconnection time
@uglide
Copy link
Collaborator Author

uglide commented Jun 6, 2025

Run scenario tests

@uglide
Copy link
Collaborator Author

uglide commented Jun 6, 2025

Testcase Errors Failures Skipped Total
io.lettuce.scenario.ConnectionInterruptionReactiveTest 0 1 0 4

---- Details for mantainers

@uglide uglide merged commit c898733 into redis:main Jun 6, 2025
7 checks passed
@uglide uglide deleted the add_simple_scenario_tests branch June 6, 2025 11:26
kiryazovi-redis pushed a commit to kiryazovi-redis/lettuce-test-infra that referenced this pull request Jul 9, 2025
* Add basic connection interruption tests

- Use reactor-netty-http client to interact
with Fault Injector
- Test command execution and PubSub with
dmc_restart, network_failure failures injected

* Fix formatting

* Improve testcase displayed names

* Fix endpoint name to match currently used for Jedis

* Enhance scenario tests:

- Use more advanced reconnection tracking
- Show reconnection information
- Test by reconnection time
svc-squareup-copybara pushed a commit to cashapp/misk that referenced this pull request Aug 8, 2025
| Package | Type | Package file | Manager | Update | Change |
|---|---|---|---|---|---|
| [io.lettuce:lettuce-core](https://github.com/redis/lettuce) |
dependencies | misk/gradle/libs.versions.toml | gradle | minor |
`6.7.1.RELEASE` -> `6.8.0.RELEASE` |
| [com.squareup.wire](https://github.com/square/wire) | plugin |
misk/gradle/libs.versions.toml | gradle | patch | `5.3.7` -> `5.3.8` |
| [com.squareup.wire:wire-schema](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.7`
-> `5.3.8` |
| [com.squareup.wire:wire-runtime](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.7`
-> `5.3.8` |
| [com.squareup.wire:wire-reflector](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.7`
-> `5.3.8` |
| [com.squareup.wire:wire-moshi-adapter](https://github.com/square/wire)
| dependencies | misk/gradle/libs.versions.toml | gradle | patch |
`5.3.7` -> `5.3.8` |
| [com.squareup.wire:wire-grpc-client](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.7`
-> `5.3.8` |
| [com.squareup.wire:wire-bom](https://github.com/square/wire) |
dependencies | misk/gradle/libs.versions.toml | gradle | patch | `5.3.7`
-> `5.3.8` |

---

### Release Notes

<details>
<summary>redis/lettuce (io.lettuce:lettuce-core)</summary>

###
[`v6.8.0.RELEASE`](https://github.com/redis/lettuce/releases/tag/6.8.0.RELEASE)

[Compare
Source](redis/lettuce@6.7.1.RELEASE...6.8.0.RELEASE)

The Lettuce team is pleased to announce the Lettuce 6.8.0 minor release!

This release provides support for the newly introduced [Redis Query
Engine
support](https://redis.github.io/lettuce/user-guide/redis-search/) which
was is part of Redis 8.0 and previously - as part of RedisStack. The new
operators (`DIFF`, `DIFF1`, `ANDOR` and `ONE`) for the `BITOP` command
are also available. The team has worked on extending the contract of the
`XADD` and `XTRIM ` commands to support trimming policy, and also
introduced the new `XDELEX` and `XACKDEL` commands.

Lettuce 6.8.0 supports Redis 2.6+ up to Redis 8.x. In terms of Java
runtime, Lettuce requires at least Java 8 and
works with Java 24. The driver is tested against Redis 8.2, Redis 8.0,
Redis 7.4 and Redis 7.2.

Find the full changelog at the end of this document.
Thanks to all contributors who made Lettuce 6.8.0.RELEASE possible.

📗 Links
Reference documentation:
https://lettuce.io/core/6.8.0.RELEASE/reference/
Javadoc: https://lettuce.io/core/6.8.0.RELEASE/api/

⭐ New Features
Introduce RediSearch by [@&#8203;tishun](https://github.com/tishun) in
redis/lettuce#3375
Add support for new operations of BITOP command in Redis Community
Edition 8.2 by [@&#8203;atakavci](https://github.com/atakavci) in
redis/lettuce#3334
Add support for 8.2 stream commands by
[@&#8203;uglide](https://github.com/uglide) in
redis/lettuce#3374

🐞 Bug Fixes
NoClassDefFoundError in Lettuce 6.7.0
[#&#8203;3317](redis/lettuce#3317) by
[@&#8203;tishun](https://github.com/tishun) in
redis/lettuce#3318

💡 Other
The instance of the `ObjectMapper` can now be reused in the
`DefaultJsonParser` by [@&#8203;thachlp](https://github.com/thachlp) in
redis/lettuce#3372
Added basic connection interruption tests by
[@&#8203;uglide](https://github.com/uglide) in
redis/lettuce#3292
DOC-4758 async JSON doc examples by
[@&#8203;andy-stark-redis](https://github.com/andy-stark-redis) in
redis/lettuce#3335
Fixed SocketOptions.Builder validation messages by
[@&#8203;hubertchylik](https://github.com/hubertchylik) in
redis/lettuce#3366
Refactor tests for clarity and maintainability by
[@&#8203;Rian-Ismael](https://github.com/Rian-Ismael) in
redis/lettuce#3363
Provide support for the SVS-VMANA index
([#&#8203;3385](redis/lettuce#3385)) by
[@&#8203;tishun](https://github.com/tishun) in
redis/lettuce#3386

❤️ New Contributors## New Contributors

- [@&#8203;hubertchylik](https://github.com/hubertchylik) made their
first contribution in redis/lettuce#3366

**Full Changelog**:
redis/lettuce@6.7.0.RELEASE...6.8.0.RELEASE

</details>

<details>
<summary>square/wire (com.squareup.wire)</summary>

###
[`v5.3.8`](https://github.com/square/wire/blob/HEAD/CHANGELOG.md#Version-538)

[Compare Source](square/wire@5.3.7...5.3.8)

*2025-08-08*

##### Swift

- Fix edge case for oneof field named `self`
([#&#8203;3360](square/wire#3360) by
\[Dimitris Koutsogiorgas]\[dnkoutso])

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "after 6pm every weekday,before 2am
every weekday" in timezone Australia/Melbourne, Automerge - At any time
(no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Never, or you tick the rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Renovate
Bot](https://github.com/renovatebot/renovate).

GitOrigin-RevId: f26d0f3a5bf8e0f695433640efc9d6e93850ab60
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: task A general task
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants