From 7ccde3c75f7b59f5835bdb5659b38c796f17e0f8 Mon Sep 17 00:00:00 2001 From: Francisco Date: Wed, 27 Aug 2025 17:07:44 +0700 Subject: [PATCH 1/2] hotfix: use pipeline without tx --- keeper.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keeper.go b/keeper.go index 52d6d32..fc3ccdd 100644 --- a/keeper.go +++ b/keeper.go @@ -562,7 +562,7 @@ func (k *keeper) StoreMultiHashMembers(ctx context.Context, mapIdentifiersToMemb return nil } - pipeline := k.connPool.TxPipeline() + pipeline := k.connPool.Pipeline() for i, items := range mapIdentifiersToMembers { for _, v := range items { err = pipeline.HSet(ctx, i, v.GetKey(), v.GetValue()).Err() From 74be6d8788bfbab4141b19a14482cd2ab73e718e Mon Sep 17 00:00:00 2001 From: Francisco Date: Thu, 28 Aug 2025 10:59:36 +0700 Subject: [PATCH 2/2] bump: update changelog --- CHANGELOG.md | 11 +++++++++-- VERSION | 2 +- keeper.go | 3 +++ 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index de5419e..b5a5e1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,9 +1,15 @@ # cacher-v2 + +## [v2.8.2] - 2025-08-27 +### Fixes +- use pipeline without tx + + ## [v2.8.1] - 2025-08-21 ### Other Improvements -- downgrade go-redis version to v9.11.0 +- downgrade go-redis version to v9.11.0 ([#61](https://github.com/kumparan/cacher/issues/61)) @@ -618,7 +624,8 @@ ## v1.0.0 - 2019-04-01 -[Unreleased]: https://github.com/kumparan/cacher/compare/v2.8.1...HEAD +[Unreleased]: https://github.com/kumparan/cacher/compare/v2.8.2...HEAD +[v2.8.2]: https://github.com/kumparan/cacher/compare/v2.8.1...v2.8.2 [v2.8.1]: https://github.com/kumparan/cacher/compare/v2.8.0...v2.8.1 [v2.8.0]: https://github.com/kumparan/cacher/compare/v1.20.0...v2.8.0 [v1.20.0]: https://github.com/kumparan/cacher/compare/v1.19.0...v1.20.0 diff --git a/VERSION b/VERSION index 9d6007f..dde70c4 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -cacher@v2.8.1 +cacher@v2.8.2 diff --git a/keeper.go b/keeper.go index fc3ccdd..200942a 100644 --- a/keeper.go +++ b/keeper.go @@ -562,6 +562,9 @@ func (k *keeper) StoreMultiHashMembers(ctx context.Context, mapIdentifiersToMemb return nil } + // using Pipeline instead of TxPipeline because TxPipeline force operation on multiple keys + // to be done in 1 cluster slot, so it doesn't support multiple slot operation + // reference: https://stackoverflow.com/a/38042895 pipeline := k.connPool.Pipeline() for i, items := range mapIdentifiersToMembers { for _, v := range items {