Skip to content

Commit 3f30ba3

Browse files
committed
Merge branch 'master' into 3.2-merge
# Conflicts: # src/amqp/composer.json # src/async-queue/composer.json # src/cache/composer.json # src/circuit-breaker/composer.json # src/config-apollo/composer.json # src/config-center/composer.json # src/config-etcd/composer.json # src/config-nacos/composer.json # src/config/composer.json # src/constants/composer.json # src/consul/composer.json # src/crontab/composer.json # src/dag/composer.json # src/database-pgsql/composer.json # src/database-sqlite/composer.json # src/database/composer.json # src/db-connection/composer.json # src/db/composer.json # src/devtool/composer.json # src/di/composer.json # src/elasticsearch/composer.json # src/etcd/composer.json # src/exception-handler/composer.json # src/filesystem/composer.json # src/grpc-client/composer.json # src/grpc-server/composer.json # src/http-message/composer.json # src/http-server/composer.json # src/http2-client/composer.json # src/json-rpc/composer.json # src/kafka/composer.json # src/logger/composer.json # src/metric/composer.json # src/migration-generator/composer.json # src/model-cache/composer.json # src/model-listener/composer.json # src/nacos/composer.json # src/nats/composer.json # src/nsq/composer.json # src/paginator/composer.json # src/pool/composer.json # src/process/composer.json # src/rate-limit/composer.json # src/reactive-x/composer.json # src/redis/composer.json # src/resource-grpc/composer.json # src/resource/composer.json # src/retry/composer.json # src/rpc-client/composer.json # src/rpc-multiplex/composer.json # src/rpc-server/composer.json # src/rpc/composer.json # src/scout/composer.json # src/server/composer.json # src/service-governance-consul/composer.json # src/service-governance-nacos/composer.json # src/session/composer.json # src/signal/composer.json # src/snowflake/composer.json # src/socket/composer.json # src/socketio-server/composer.json # src/stringable/composer.json # src/super-globals/composer.json # src/support/composer.json # src/swagger/composer.json # src/task/composer.json # src/testing/composer.json # src/tracer/composer.json # src/translation/composer.json # src/utils/composer.json # src/validation/composer.json # src/view-engine/composer.json # src/view/composer.json # src/watcher/composer.json # src/websocket-client/composer.json # src/websocket-server/composer.json
2 parents 4dc91aa + e7157cf commit 3f30ba3

2 files changed

Lines changed: 14 additions & 6 deletions

File tree

composer.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,11 @@
1717
"require": {
1818
"php": ">=8.2",
1919
"hyperf/codec": "~3.2.0",
20+
"hyperf/collection": "~3.2.0",
21+
"hyperf/context": "~3.2.0",
2022
"hyperf/contract": "~3.2.0",
2123
"hyperf/db-connection": "~3.2.0",
2224
"hyperf/support": "~3.2.0",
23-
"hyperf/utils": "~3.2.0",
2425
"psr/container": "^1.0 || ^2.0",
2526
"psr/simple-cache": "^1.0 || ^2.0 || ^3.0"
2627
},

src/Redis/LuaManager.php

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -41,18 +41,20 @@ public function __construct(protected Config $config)
4141

4242
public function handle(string $key, array $keys, ?int $num = null)
4343
{
44-
if ($this->config->isLoadScript()) {
45-
$sha = $this->getLuaSha($key);
46-
}
47-
4844
$operator = $this->getOperator($key);
4945

5046
if ($num === null) {
5147
$num = count($keys);
5248
}
5349

54-
if (! empty($sha)) {
50+
if ($this->config->isLoadScript()) {
51+
$sha = $this->getLuaSha($key);
5552
$luaData = $this->redis->evalSha($sha, $keys, $num);
53+
if ($luaData === false) {
54+
$this->flushLuaSha($key);
55+
$script = $operator->getScript();
56+
$luaData = $this->redis->eval($script, $keys, $num);
57+
}
5658
} else {
5759
$script = $operator->getScript();
5860
$luaData = $this->redis->eval($script, $keys, $num);
@@ -81,4 +83,9 @@ public function getLuaSha(string $key): string
8183
}
8284
return $this->luaShas[$key];
8385
}
86+
87+
public function flushLuaSha(string $key): void
88+
{
89+
unset($this->luaShas[$key]);
90+
}
8491
}

0 commit comments

Comments
 (0)