valkey-glide-sync 2.2.3__tar.gz → 2.2.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/PKG-INFO +1 -1
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/connection.rs +7 -4
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/mod.rs +2 -1
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/tokio.rs +8 -4
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/client.rs +15 -5
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_async/connections_logic.rs +1 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_async/mod.rs +1 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_client.rs +13 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cmd.rs +2 -2
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/commands/macros.rs +3 -3
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/lib.rs +3 -3
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/mod.rs +2 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/reconnecting_connection.rs +4 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/standalone_client.rs +6 -1
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/types.rs +4 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/protobuf/connection_request.proto +2 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/config.py +13 -2
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/pyproject.toml +1 -1
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/PKG-INFO +1 -1
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/MANIFEST.in +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/README.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/.cargo/config.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/.gitignore +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/.ort.yml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/DEVELOPER.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/README.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/cbindgen.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/README.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/client.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/cluster_scan_container.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/command_request.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/connection_request.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/errors.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/request_type.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/scripts_container.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-logger-core/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-logger-core/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-redis/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-redis/src/cluster_routing.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-redis/src/cluster_topology.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-redis/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-telemetry/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-telemetry/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/src/runtime.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/src/sync.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/src/task.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/rust-toolchain.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/.cargo/config.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/.ort.yml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/README.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/THIRD_PARTY_LICENSES_RUST +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/build.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/LICENSE +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/README.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/appveyor.yml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/get_command_info.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/CHANGELOG.md +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/LICENSE +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/async-await.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/async-multiplexed.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/async-pub-sub.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/async-scan.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/basic.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/release.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/connection_manager.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/multiplexed_connection.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/runtime.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_async/LICENSE +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_async/connections_container.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_async/pipeline_routing.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_pipeline.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_routing.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_slotmap.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_topology.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/commands/cluster_scan.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/commands/mod.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/connection.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/macros.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/parser.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/pipeline.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/push_manager.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/retry_strategies.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/sentinel.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/tls.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/types.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/rustfmt.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/src/main.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/value_conversion.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/cluster_scan_container.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/errors.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/iam/mod.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/protobuf/command_request.proto +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/protobuf/response.proto +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/request_type.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/rotating_buffer.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/scripts_container.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/socket_listener.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/metrics_exporter_file.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/open_telemetry.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/span_exporter_file.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/__init__.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/__init__.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/batch.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/batch_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/bitmap.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/command_args.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/core_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/ft_options/ft_aggregate_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/ft_options/ft_constants.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/ft_options/ft_create_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/ft_options/ft_profile_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/ft_options/ft_search_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/json_batch.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/server_modules/json_options.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/sorted_set.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/commands/stream.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/constants.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/exceptions.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/protobuf_codec.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/py.typed +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_shared/routes.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/__init__.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/_glide_ffi.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/config.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/glide_client.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/logger.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/py.typed +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/__init__.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/cluster_commands.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/cluster_scan_cursor.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/core.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/ft.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/glide_json.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/script.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/standalone_commands.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/logger_core/Cargo.toml +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/logger_core/src/lib.rs +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/setup.cfg +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/setup.py +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/SOURCES.txt +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/dependency_links.txt +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/requires.txt +0 -0
- {valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/top_level.txt +0 -0
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/connection.rs
RENAMED
|
@@ -419,12 +419,13 @@ where
|
|
|
419
419
|
pub(crate) async fn connect_simple<T: RedisRuntime>(
|
|
420
420
|
connection_info: &ConnectionInfo,
|
|
421
421
|
_socket_addr: Option<SocketAddr>,
|
|
422
|
+
tcp_nodelay: bool,
|
|
422
423
|
) -> RedisResult<(T, Option<IpAddr>)> {
|
|
423
424
|
Ok(match connection_info.addr {
|
|
424
425
|
ConnectionAddr::Tcp(ref host, port) => {
|
|
425
426
|
if let Some(socket_addr) = _socket_addr {
|
|
426
427
|
return Ok::<_, RedisError>((
|
|
427
|
-
<T>::connect_tcp(socket_addr).await?,
|
|
428
|
+
<T>::connect_tcp(socket_addr, tcp_nodelay).await?,
|
|
428
429
|
Some(socket_addr.ip()),
|
|
429
430
|
));
|
|
430
431
|
}
|
|
@@ -433,7 +434,7 @@ pub(crate) async fn connect_simple<T: RedisRuntime>(
|
|
|
433
434
|
log_conn_creation("TCP", format!("{host}:{port}"), Some(socket_addr.ip()));
|
|
434
435
|
Box::pin(async move {
|
|
435
436
|
Ok::<_, RedisError>((
|
|
436
|
-
<T>::connect_tcp(socket_addr).await?,
|
|
437
|
+
<T>::connect_tcp(socket_addr, tcp_nodelay).await?,
|
|
437
438
|
Some(socket_addr.ip()),
|
|
438
439
|
))
|
|
439
440
|
})
|
|
@@ -450,7 +451,8 @@ pub(crate) async fn connect_simple<T: RedisRuntime>(
|
|
|
450
451
|
} => {
|
|
451
452
|
if let Some(socket_addr) = _socket_addr {
|
|
452
453
|
return Ok::<_, RedisError>((
|
|
453
|
-
<T>::connect_tcp_tls(host, socket_addr, insecure, tls_params)
|
|
454
|
+
<T>::connect_tcp_tls(host, socket_addr, insecure, tls_params, tcp_nodelay)
|
|
455
|
+
.await?,
|
|
454
456
|
Some(socket_addr.ip()),
|
|
455
457
|
));
|
|
456
458
|
}
|
|
@@ -463,7 +465,8 @@ pub(crate) async fn connect_simple<T: RedisRuntime>(
|
|
|
463
465
|
);
|
|
464
466
|
Box::pin(async move {
|
|
465
467
|
Ok::<_, RedisError>((
|
|
466
|
-
<T>::connect_tcp_tls(host, socket_addr, insecure, tls_params)
|
|
468
|
+
<T>::connect_tcp_tls(host, socket_addr, insecure, tls_params, tcp_nodelay)
|
|
469
|
+
.await?,
|
|
467
470
|
Some(socket_addr.ip()),
|
|
468
471
|
))
|
|
469
472
|
})
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/mod.rs
RENAMED
|
@@ -29,7 +29,7 @@ pub mod tokio;
|
|
|
29
29
|
#[async_trait]
|
|
30
30
|
pub(crate) trait RedisRuntime: AsyncStream + Send + Sync + Sized + 'static {
|
|
31
31
|
/// Performs a TCP connection
|
|
32
|
-
async fn connect_tcp(socket_addr: SocketAddr) -> RedisResult<Self>;
|
|
32
|
+
async fn connect_tcp(socket_addr: SocketAddr, tcp_nodelay: bool) -> RedisResult<Self>;
|
|
33
33
|
|
|
34
34
|
// Performs a TCP TLS connection
|
|
35
35
|
async fn connect_tcp_tls(
|
|
@@ -37,6 +37,7 @@ pub(crate) trait RedisRuntime: AsyncStream + Send + Sync + Sized + 'static {
|
|
|
37
37
|
socket_addr: SocketAddr,
|
|
38
38
|
insecure: bool,
|
|
39
39
|
tls_params: &Option<TlsConnParams>,
|
|
40
|
+
tcp_nodelay: bool,
|
|
40
41
|
) -> RedisResult<Self>;
|
|
41
42
|
|
|
42
43
|
/// Performs a UNIX connection
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/tokio.rs
RENAMED
|
@@ -25,8 +25,9 @@ use crate::tls::TlsConnParams;
|
|
|
25
25
|
use super::Path;
|
|
26
26
|
|
|
27
27
|
#[inline(always)]
|
|
28
|
-
async fn connect_tcp(addr: &SocketAddr) -> io::Result<TcpStreamTokio> {
|
|
28
|
+
async fn connect_tcp(addr: &SocketAddr, tcp_nodelay: bool) -> io::Result<TcpStreamTokio> {
|
|
29
29
|
let socket = TcpStreamTokio::connect(addr).await?;
|
|
30
|
+
socket.set_nodelay(tcp_nodelay)?;
|
|
30
31
|
#[cfg(feature = "keep-alive")]
|
|
31
32
|
{
|
|
32
33
|
//For now rely on system defaults
|
|
@@ -111,8 +112,10 @@ impl AsyncRead for Tokio {
|
|
|
111
112
|
|
|
112
113
|
#[async_trait]
|
|
113
114
|
impl RedisRuntime for Tokio {
|
|
114
|
-
async fn connect_tcp(socket_addr: SocketAddr) -> RedisResult<Self> {
|
|
115
|
-
Ok(connect_tcp(&socket_addr)
|
|
115
|
+
async fn connect_tcp(socket_addr: SocketAddr, tcp_nodelay: bool) -> RedisResult<Self> {
|
|
116
|
+
Ok(connect_tcp(&socket_addr, tcp_nodelay)
|
|
117
|
+
.await
|
|
118
|
+
.map(Tokio::Tcp)?)
|
|
116
119
|
}
|
|
117
120
|
|
|
118
121
|
async fn connect_tcp_tls(
|
|
@@ -120,6 +123,7 @@ impl RedisRuntime for Tokio {
|
|
|
120
123
|
socket_addr: SocketAddr,
|
|
121
124
|
insecure: bool,
|
|
122
125
|
tls_params: &Option<TlsConnParams>,
|
|
126
|
+
tcp_nodelay: bool,
|
|
123
127
|
) -> RedisResult<Self> {
|
|
124
128
|
let config = create_rustls_config(insecure, tls_params.clone())?;
|
|
125
129
|
let tls_connector = TlsConnector::from(Arc::new(config));
|
|
@@ -127,7 +131,7 @@ impl RedisRuntime for Tokio {
|
|
|
127
131
|
Ok(tls_connector
|
|
128
132
|
.connect(
|
|
129
133
|
rustls_pki_types::ServerName::try_from(hostname)?.to_owned(),
|
|
130
|
-
connect_tcp(&socket_addr).await?,
|
|
134
|
+
connect_tcp(&socket_addr, tcp_nodelay).await?,
|
|
131
135
|
)
|
|
132
136
|
.await
|
|
133
137
|
.map(|con| Tokio::TcpTls(Box::new(con)))?)
|
|
@@ -96,6 +96,9 @@ pub struct GlideConnectionOptions {
|
|
|
96
96
|
pub connection_timeout: Option<Duration>,
|
|
97
97
|
/// Retry strategy configuration for reconnect attempts.
|
|
98
98
|
pub connection_retry_strategy: Option<RetryStrategy>,
|
|
99
|
+
/// TCP_NODELAY socket option. When true, disables Nagle's algorithm for lower latency.
|
|
100
|
+
/// When false, enables Nagle's algorithm to reduce network overhead.
|
|
101
|
+
pub tcp_nodelay: bool,
|
|
99
102
|
}
|
|
100
103
|
|
|
101
104
|
/// To enable async support you need to enable the feature: `tokio-comp`
|
|
@@ -115,7 +118,10 @@ impl Client {
|
|
|
115
118
|
let (con, _ip) = match Runtime::locate() {
|
|
116
119
|
#[cfg(feature = "tokio-comp")]
|
|
117
120
|
Runtime::Tokio => {
|
|
118
|
-
|
|
121
|
+
// Note: tcp_nodelay is hardcoded to true (default) since this deprecated API
|
|
122
|
+
// doesn't accept GlideConnectionOptions. Modern code should use
|
|
123
|
+
// get_multiplexed_async_connection which allows configuring tcp_nodelay.
|
|
124
|
+
self.get_simple_async_connection::<crate::aio::tokio::Tokio>(None, true)
|
|
119
125
|
.await?
|
|
120
126
|
}
|
|
121
127
|
};
|
|
@@ -427,7 +433,9 @@ impl Client {
|
|
|
427
433
|
where
|
|
428
434
|
T: crate::aio::RedisRuntime,
|
|
429
435
|
{
|
|
430
|
-
let (con, ip) = self
|
|
436
|
+
let (con, ip) = self
|
|
437
|
+
.get_simple_async_connection::<T>(socket_addr, glide_connection_options.tcp_nodelay)
|
|
438
|
+
.await?;
|
|
431
439
|
crate::aio::MultiplexedConnection::new_with_response_timeout(
|
|
432
440
|
&self.connection_info,
|
|
433
441
|
con,
|
|
@@ -441,6 +449,7 @@ impl Client {
|
|
|
441
449
|
async fn get_simple_async_connection<T>(
|
|
442
450
|
&self,
|
|
443
451
|
socket_addr: Option<SocketAddr>,
|
|
452
|
+
tcp_nodelay: bool,
|
|
444
453
|
) -> RedisResult<(
|
|
445
454
|
Pin<Box<dyn crate::aio::AsyncStream + Send + Sync>>,
|
|
446
455
|
Option<IpAddr>,
|
|
@@ -449,7 +458,8 @@ impl Client {
|
|
|
449
458
|
T: crate::aio::RedisRuntime,
|
|
450
459
|
{
|
|
451
460
|
let (conn, ip) =
|
|
452
|
-
crate::aio::connect_simple::<T>(&self.connection_info, socket_addr)
|
|
461
|
+
crate::aio::connect_simple::<T>(&self.connection_info, socket_addr, tcp_nodelay)
|
|
462
|
+
.await?;
|
|
453
463
|
Ok((conn.boxed(), ip))
|
|
454
464
|
}
|
|
455
465
|
|
|
@@ -519,11 +529,11 @@ impl Client {
|
|
|
519
529
|
///
|
|
520
530
|
/// let mut con = client.get_async_connection(None).await?;
|
|
521
531
|
///
|
|
522
|
-
/// con.set("key1", b"foo").await?;
|
|
532
|
+
/// con.set::<_, _, ()>("key1", b"foo").await?;
|
|
523
533
|
///
|
|
524
534
|
/// redis::cmd("SET")
|
|
525
535
|
/// .arg(&["key2", "bar"])
|
|
526
|
-
/// .query_async(&mut con)
|
|
536
|
+
/// .query_async::<_, ()>(&mut con)
|
|
527
537
|
/// .await?;
|
|
528
538
|
///
|
|
529
539
|
/// let result = redis::cmd("MGET")
|
|
@@ -1132,6 +1132,7 @@ where
|
|
|
1132
1132
|
discover_az,
|
|
1133
1133
|
connection_timeout: Some(cluster_params.connection_timeout),
|
|
1134
1134
|
connection_retry_strategy: Some(connection_retry_strategy),
|
|
1135
|
+
tcp_nodelay: cluster_params.tcp_nodelay,
|
|
1135
1136
|
};
|
|
1136
1137
|
|
|
1137
1138
|
let connections = Self::create_initial_connections(
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_client.rs
RENAMED
|
@@ -47,6 +47,7 @@ struct BuilderParams {
|
|
|
47
47
|
reconnect_retry_strategy: Option<RetryStrategy>,
|
|
48
48
|
refresh_topology_from_initial_nodes: bool,
|
|
49
49
|
database_id: i64,
|
|
50
|
+
tcp_nodelay: bool,
|
|
50
51
|
}
|
|
51
52
|
|
|
52
53
|
#[derive(Clone)]
|
|
@@ -150,6 +151,7 @@ pub struct ClusterParams {
|
|
|
150
151
|
pub(crate) reconnect_retry_strategy: Option<RetryStrategy>,
|
|
151
152
|
pub(crate) refresh_topology_from_initial_nodes: bool,
|
|
152
153
|
pub(crate) database_id: i64,
|
|
154
|
+
pub(crate) tcp_nodelay: bool,
|
|
153
155
|
}
|
|
154
156
|
|
|
155
157
|
impl ClusterParams {
|
|
@@ -182,6 +184,7 @@ impl ClusterParams {
|
|
|
182
184
|
reconnect_retry_strategy: value.reconnect_retry_strategy,
|
|
183
185
|
refresh_topology_from_initial_nodes: value.refresh_topology_from_initial_nodes,
|
|
184
186
|
database_id: value.database_id,
|
|
187
|
+
tcp_nodelay: value.tcp_nodelay,
|
|
185
188
|
})
|
|
186
189
|
}
|
|
187
190
|
}
|
|
@@ -495,6 +498,16 @@ impl ClusterClientBuilder {
|
|
|
495
498
|
self
|
|
496
499
|
}
|
|
497
500
|
|
|
501
|
+
/// Sets the TCP_NODELAY socket option.
|
|
502
|
+
///
|
|
503
|
+
/// When true, disables Nagle's algorithm for lower latency.
|
|
504
|
+
/// When false, enables Nagle's algorithm to reduce network overhead.
|
|
505
|
+
/// Defaults to true if not set.
|
|
506
|
+
pub fn tcp_nodelay(mut self, tcp_nodelay: bool) -> ClusterClientBuilder {
|
|
507
|
+
self.builder_params.tcp_nodelay = tcp_nodelay;
|
|
508
|
+
self
|
|
509
|
+
}
|
|
510
|
+
|
|
498
511
|
/// Enables timing out on slow connection time.
|
|
499
512
|
///
|
|
500
513
|
/// If enabled, the cluster will only wait the given time on each connection attempt to each node.
|
|
@@ -131,8 +131,8 @@ impl<'a, T: FromRedisValue + 'a + Unpin + Send> AsyncIter<'a, T> {
|
|
|
131
131
|
/// # async fn scan_set() -> redis::RedisResult<()> {
|
|
132
132
|
/// # let client = redis::Client::open("redis://127.0.0.1/")?;
|
|
133
133
|
/// # let mut con = client.get_async_connection(None).await?;
|
|
134
|
-
/// con.sadd("my_set", 42i32).await?;
|
|
135
|
-
/// con.sadd("my_set", 43i32).await?;
|
|
134
|
+
/// con.sadd::<_, _, ()>("my_set", 42i32).await?;
|
|
135
|
+
/// con.sadd::<_, _, ()>("my_set", 43i32).await?;
|
|
136
136
|
/// let mut iter: redis::AsyncIter<i32> = con.sscan("my_set").await?;
|
|
137
137
|
/// while let Some(element) = iter.next_item().await {
|
|
138
138
|
/// assert!(element == 42 || element == 43);
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/commands/macros.rs
RENAMED
|
@@ -32,7 +32,7 @@ macro_rules! implement_commands {
|
|
|
32
32
|
/// use redis::Commands;
|
|
33
33
|
/// let client = redis::Client::open("redis://127.0.0.1/")?;
|
|
34
34
|
/// let mut con = client.get_connection(None)?;
|
|
35
|
-
/// con.set("my_key", 42)?;
|
|
35
|
+
/// con.set::<_, _, ()>("my_key", 42)?;
|
|
36
36
|
/// assert_eq!(con.get("my_key"), Ok(42));
|
|
37
37
|
/// # Ok(()) }
|
|
38
38
|
/// ```
|
|
@@ -136,7 +136,7 @@ macro_rules! implement_commands {
|
|
|
136
136
|
/// # async fn do_something() -> redis::RedisResult<()> {
|
|
137
137
|
/// let client = redis::Client::open("redis://127.0.0.1/")?;
|
|
138
138
|
/// let mut con = client.get_async_connection(None).await?;
|
|
139
|
-
/// redis::cmd("SET").arg("my_key").arg(42i32).query_async(&mut con).await?;
|
|
139
|
+
/// redis::cmd("SET").arg("my_key").arg(42i32).query_async::<_, ()>(&mut con).await?;
|
|
140
140
|
/// assert_eq!(redis::cmd("GET").arg("my_key").query_async(&mut con).await, Ok(42i32));
|
|
141
141
|
/// # Ok(()) }
|
|
142
142
|
/// ```
|
|
@@ -149,7 +149,7 @@ macro_rules! implement_commands {
|
|
|
149
149
|
/// use redis::Commands;
|
|
150
150
|
/// let client = redis::Client::open("redis://127.0.0.1/")?;
|
|
151
151
|
/// let mut con = client.get_async_connection(None).await?;
|
|
152
|
-
/// con.set("my_key", 42i32).await?;
|
|
152
|
+
/// con.set::<_, _, ()>("my_key", 42i32).await?;
|
|
153
153
|
/// assert_eq!(con.get("my_key").await, Ok(42i32));
|
|
154
154
|
/// # Ok(()) }
|
|
155
155
|
/// ```
|
|
@@ -107,7 +107,7 @@
|
|
|
107
107
|
//! fn do_something(con: &mut redis::Connection) -> redis::RedisResult<usize> {
|
|
108
108
|
//! // This will result in a server error: "unknown command `MEMORY USAGE`"
|
|
109
109
|
//! // because "USAGE" is technically a sub-command of "MEMORY".
|
|
110
|
-
//! redis::cmd("MEMORY USAGE").arg("my_key").query(con)?;
|
|
110
|
+
//! redis::cmd("MEMORY USAGE").arg("my_key").query::<()>(con)?;
|
|
111
111
|
//!
|
|
112
112
|
//! // However, this will work as you'd expect
|
|
113
113
|
//! redis::cmd("MEMORY").arg("USAGE").arg("my_key").query(con)
|
|
@@ -312,9 +312,9 @@ use redis::AsyncCommands;
|
|
|
312
312
|
let client = redis::Client::open("redis://127.0.0.1/").unwrap();
|
|
313
313
|
let mut con = client.get_async_connection(None).await?;
|
|
314
314
|
|
|
315
|
-
con.set("key1", b"foo").await?;
|
|
315
|
+
con.set::<_, _, ()>("key1", b"foo").await?;
|
|
316
316
|
|
|
317
|
-
redis::cmd("SET").arg(&["key2", "bar"]).query_async(&mut con).await?;
|
|
317
|
+
redis::cmd("SET").arg(&["key2", "bar"]).query_async::<_, ()>(&mut con).await?;
|
|
318
318
|
|
|
319
319
|
let result = redis::cmd("MGET")
|
|
320
320
|
.arg(&["key1", "key2"])
|
|
@@ -1260,6 +1260,8 @@ async fn create_cluster_client(
|
|
|
1260
1260
|
builder =
|
|
1261
1261
|
builder.refresh_topology_from_initial_nodes(request.refresh_topology_from_initial_nodes);
|
|
1262
1262
|
|
|
1263
|
+
builder = builder.tcp_nodelay(request.tcp_nodelay);
|
|
1264
|
+
|
|
1263
1265
|
// Always use with Glide
|
|
1264
1266
|
builder = builder.periodic_connections_checks(Some(CONNECTION_CHECKS_INTERVAL));
|
|
1265
1267
|
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/reconnecting_connection.rs
RENAMED
|
@@ -123,6 +123,7 @@ async fn create_connection(
|
|
|
123
123
|
push_sender: Option<mpsc::UnboundedSender<PushInfo>>,
|
|
124
124
|
discover_az: bool,
|
|
125
125
|
connection_timeout: Duration,
|
|
126
|
+
tcp_nodelay: bool,
|
|
126
127
|
) -> Result<ReconnectingConnection, (ReconnectingConnection, RedisError)> {
|
|
127
128
|
let client = {
|
|
128
129
|
let guard = connection_backend
|
|
@@ -140,6 +141,7 @@ async fn create_connection(
|
|
|
140
141
|
discover_az,
|
|
141
142
|
connection_timeout: Some(connection_timeout),
|
|
142
143
|
connection_retry_strategy: Some(retry_strategy),
|
|
144
|
+
tcp_nodelay,
|
|
143
145
|
};
|
|
144
146
|
|
|
145
147
|
let action = || async {
|
|
@@ -224,6 +226,7 @@ impl ReconnectingConnection {
|
|
|
224
226
|
discover_az: bool,
|
|
225
227
|
connection_timeout: Duration,
|
|
226
228
|
tls_params: Option<redis::TlsConnParams>,
|
|
229
|
+
tcp_nodelay: bool,
|
|
227
230
|
) -> Result<ReconnectingConnection, (ReconnectingConnection, RedisError)> {
|
|
228
231
|
log_debug(
|
|
229
232
|
"connection creation",
|
|
@@ -242,6 +245,7 @@ impl ReconnectingConnection {
|
|
|
242
245
|
push_sender,
|
|
243
246
|
discover_az,
|
|
244
247
|
connection_timeout,
|
|
248
|
+
tcp_nodelay,
|
|
245
249
|
)
|
|
246
250
|
.await
|
|
247
251
|
}
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/standalone_client.rs
RENAMED
|
@@ -152,6 +152,8 @@ impl StandaloneClient {
|
|
|
152
152
|
DEFAULT_CONNECTION_TIMEOUT,
|
|
153
153
|
);
|
|
154
154
|
|
|
155
|
+
let tcp_nodelay = connection_request.tcp_nodelay;
|
|
156
|
+
|
|
155
157
|
let tls_params = if !connection_request.root_certs.is_empty() {
|
|
156
158
|
if tls_mode.unwrap_or(TlsMode::NoTls) == TlsMode::NoTls {
|
|
157
159
|
return Err(StandaloneClientConnectionError::FailedConnection(vec![(
|
|
@@ -192,9 +194,10 @@ impl StandaloneClient {
|
|
|
192
194
|
let discover = discover_az;
|
|
193
195
|
let timeout = connection_timeout;
|
|
194
196
|
let params = tls_params.clone();
|
|
197
|
+
let nodelay = tcp_nodelay;
|
|
195
198
|
async move {
|
|
196
199
|
get_connection_and_replication_info(
|
|
197
|
-
&address, &retry, &info, tls, &sender, discover, timeout, params,
|
|
200
|
+
&address, &retry, &info, tls, &sender, discover, timeout, params, nodelay,
|
|
198
201
|
)
|
|
199
202
|
.await
|
|
200
203
|
.map_err(|err| (format!("{}:{}", address.host, address.port), err))
|
|
@@ -692,6 +695,7 @@ async fn get_connection_and_replication_info(
|
|
|
692
695
|
discover_az: bool,
|
|
693
696
|
connection_timeout: Duration,
|
|
694
697
|
tls_params: Option<redis::TlsConnParams>,
|
|
698
|
+
tcp_nodelay: bool,
|
|
695
699
|
) -> Result<(ReconnectingConnection, Value), (ReconnectingConnection, RedisError)> {
|
|
696
700
|
let reconnecting_connection = ReconnectingConnection::new(
|
|
697
701
|
address,
|
|
@@ -702,6 +706,7 @@ async fn get_connection_and_replication_info(
|
|
|
702
706
|
discover_az,
|
|
703
707
|
connection_timeout,
|
|
704
708
|
tls_params,
|
|
709
|
+
tcp_nodelay,
|
|
705
710
|
)
|
|
706
711
|
.await?;
|
|
707
712
|
|
|
@@ -30,6 +30,7 @@ pub struct ConnectionRequest {
|
|
|
30
30
|
pub lazy_connect: bool,
|
|
31
31
|
pub refresh_topology_from_initial_nodes: bool,
|
|
32
32
|
pub root_certs: Vec<Vec<u8>>,
|
|
33
|
+
pub tcp_nodelay: bool,
|
|
33
34
|
}
|
|
34
35
|
|
|
35
36
|
/// Authentication information for connecting to Redis/Valkey servers
|
|
@@ -283,6 +284,8 @@ impl From<protobuf::ConnectionRequest> for ConnectionRequest {
|
|
|
283
284
|
.map(|cert| cert.to_vec())
|
|
284
285
|
.collect();
|
|
285
286
|
|
|
287
|
+
let tcp_nodelay = value.tcp_nodelay.unwrap_or(true);
|
|
288
|
+
|
|
286
289
|
ConnectionRequest {
|
|
287
290
|
read_from,
|
|
288
291
|
client_name,
|
|
@@ -302,6 +305,7 @@ impl From<protobuf::ConnectionRequest> for ConnectionRequest {
|
|
|
302
305
|
lazy_connect,
|
|
303
306
|
refresh_topology_from_initial_nodes,
|
|
304
307
|
root_certs,
|
|
308
|
+
tcp_nodelay,
|
|
305
309
|
}
|
|
306
310
|
}
|
|
307
311
|
}
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/protobuf/connection_request.proto
RENAMED
|
@@ -90,6 +90,8 @@ message ConnectionRequest {
|
|
|
90
90
|
bool refresh_topology_from_initial_nodes = 18;
|
|
91
91
|
string lib_name = 19;
|
|
92
92
|
repeated bytes root_certs = 20;
|
|
93
|
+
// for future backport: the number skip is due to not porting PR 4759 and 5093
|
|
94
|
+
optional bool tcp_nodelay = 24;
|
|
93
95
|
}
|
|
94
96
|
|
|
95
97
|
message ConnectionRetryStrategy {
|
|
@@ -289,15 +289,21 @@ class AdvancedBaseClientConfiguration:
|
|
|
289
289
|
tls_config (Optional[TlsAdvancedConfiguration]): The advanced TLS configuration settings.
|
|
290
290
|
This allows for more granular control of TLS behavior, such as enabling an insecure mode
|
|
291
291
|
that bypasses certificate validation.
|
|
292
|
+
tcp_nodelay (Optional[bool]): Controls TCP_NODELAY socket option (Nagle's algorithm).
|
|
293
|
+
When True, disables Nagle's algorithm for lower latency by sending packets immediately without buffering.
|
|
294
|
+
When False, enables Nagle's algorithm to reduce network overhead by buffering small packets.
|
|
295
|
+
If not explicitly set, defaults to True.
|
|
292
296
|
"""
|
|
293
297
|
|
|
294
298
|
def __init__(
|
|
295
299
|
self,
|
|
296
300
|
connection_timeout: Optional[int] = None,
|
|
297
301
|
tls_config: Optional[TlsAdvancedConfiguration] = None,
|
|
302
|
+
tcp_nodelay: Optional[bool] = None,
|
|
298
303
|
):
|
|
299
304
|
self.connection_timeout = connection_timeout
|
|
300
305
|
self.tls_config = tls_config
|
|
306
|
+
self.tcp_nodelay = tcp_nodelay
|
|
301
307
|
|
|
302
308
|
def _create_a_protobuf_conn_request(
|
|
303
309
|
self, request: ConnectionRequest
|
|
@@ -305,6 +311,9 @@ class AdvancedBaseClientConfiguration:
|
|
|
305
311
|
if self.connection_timeout:
|
|
306
312
|
request.connection_timeout = self.connection_timeout
|
|
307
313
|
|
|
314
|
+
if self.tcp_nodelay is not None:
|
|
315
|
+
request.tcp_nodelay = self.tcp_nodelay
|
|
316
|
+
|
|
308
317
|
if self.tls_config:
|
|
309
318
|
if self.tls_config.use_insecure_tls:
|
|
310
319
|
# Validate that TLS is enabled before allowing insecure mode
|
|
@@ -564,9 +573,10 @@ class AdvancedGlideClientConfiguration(AdvancedBaseClientConfiguration):
|
|
|
564
573
|
self,
|
|
565
574
|
connection_timeout: Optional[int] = None,
|
|
566
575
|
tls_config: Optional[TlsAdvancedConfiguration] = None,
|
|
576
|
+
tcp_nodelay: Optional[bool] = None,
|
|
567
577
|
):
|
|
568
578
|
|
|
569
|
-
super().__init__(connection_timeout, tls_config)
|
|
579
|
+
super().__init__(connection_timeout, tls_config, tcp_nodelay)
|
|
570
580
|
|
|
571
581
|
|
|
572
582
|
class GlideClientConfiguration(BaseClientConfiguration):
|
|
@@ -744,8 +754,9 @@ class AdvancedGlideClusterClientConfiguration(AdvancedBaseClientConfiguration):
|
|
|
744
754
|
connection_timeout: Optional[int] = None,
|
|
745
755
|
tls_config: Optional[TlsAdvancedConfiguration] = None,
|
|
746
756
|
refresh_topology_from_initial_nodes: bool = False,
|
|
757
|
+
tcp_nodelay: Optional[bool] = None,
|
|
747
758
|
):
|
|
748
|
-
super().__init__(connection_timeout, tls_config)
|
|
759
|
+
super().__init__(connection_timeout, tls_config, tcp_nodelay)
|
|
749
760
|
self.refresh_topology_from_initial_nodes = refresh_topology_from_initial_nodes
|
|
750
761
|
|
|
751
762
|
def _create_a_protobuf_conn_request(
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/Cargo.toml
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/client.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/errors.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-glide-core/src/lib.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-logger-core/Cargo.toml
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-logger-core/src/lib.rs
RENAMED
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-redis/src/cluster_routing.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-telemetry/Cargo.toml
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-telemetry/src/lib.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/ffi/miri-tests/mock-tokio/src/runtime.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/async-scan.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/examples/basic.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/aio/runtime.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_routing.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/cluster_slotmap.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/commands/mod.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/connection.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/pipeline.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/push_manager.rs
RENAMED
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/redis-rs/redis/src/sentinel.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/client/value_conversion.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/cluster_scan_container.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/src/protobuf/command_request.proto
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/open_telemetry.rs
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide-core/telemetry/src/span_exporter_file.rs
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/cluster_commands.py
RENAMED
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/cluster_scan_cursor.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/glide_sync/sync_commands/standalone_commands.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
{valkey_glide_sync-2.2.3 → valkey_glide_sync-2.2.5}/valkey_glide_sync.egg-info/top_level.txt
RENAMED
|
File without changes
|