From 0912d96d6679c824a45a7cd9f47e0832da0ed9e4 Mon Sep 17 00:00:00 2001 From: Sebastian Haracz Date: Wed, 4 Oct 2023 15:19:09 +0200 Subject: [PATCH 1/2] Use fallback when executing Redis commands using Monix API (cherry picked from commit 64e228c3facfd2e8797b9bcab99637f357a5df0d) --- redis/src/main/scala/com/avsystem/commons/redis/ApiSubset.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/redis/src/main/scala/com/avsystem/commons/redis/ApiSubset.scala b/redis/src/main/scala/com/avsystem/commons/redis/ApiSubset.scala index 8bc7ed517..8911706f3 100644 --- a/redis/src/main/scala/com/avsystem/commons/redis/ApiSubset.scala +++ b/redis/src/main/scala/com/avsystem/commons/redis/ApiSubset.scala @@ -160,7 +160,7 @@ trait RedisMonixApi extends RedisExecutedApi { type Result[A] = Task[A] def execute[A](command: RedisCommand[A]): Task[A] = Task.deferFutureAction { scheduler => - executor.executeBatch(command, execConfig.copy(decodeOn = scheduler)) + executor.executeBatch(command.batchOrFallback, execConfig.copy(decodeOn = scheduler)) } def recoverWith[A](executed: => Task[A])(fun: PartialFunction[Throwable, Task[A]]): Task[A] = From 11e8247698fc9f91cdbc654d6f866c44c4fb93fa Mon Sep 17 00:00:00 2001 From: Sebastian Haracz Date: Wed, 22 Nov 2023 11:47:53 +0100 Subject: [PATCH 2/2] Hide Redis password in error message --- .../com/avsystem/commons/redis/commands/connection.scala | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/redis/src/main/scala/com/avsystem/commons/redis/commands/connection.scala b/redis/src/main/scala/com/avsystem/commons/redis/commands/connection.scala index 6999e3bbc..dd15f42f6 100644 --- a/redis/src/main/scala/com/avsystem/commons/redis/commands/connection.scala +++ b/redis/src/main/scala/com/avsystem/commons/redis/commands/connection.scala @@ -50,6 +50,10 @@ trait ConnectionConnectionApi extends NodeConnectionApi { private final class Auth(username: Opt[String], password: String) extends RedisUnitCommand with ConnectionCommand { val encoded: Encoded = encoder("AUTH").optAdd(username).add(password).result + + // hide password value in error messages + override def toString: String = + s""""AUTH" ${username.mapOr("", u => s""""$u" """)}""""" } private object Quit extends RedisUnitCommand with ConnectionCommand { @@ -60,4 +64,3 @@ trait ConnectionConnectionApi extends NodeConnectionApi { val encoded: Encoded = encoder("SELECT").add(index).result } } -