RedisFullCheck icon indicating copy to clipboard operation
RedisFullCheck copied to clipboard

redis-full-check is used to compare whether two redis have the same data. Support redis version from 2.x to 7.x (Don't support Redis Modules).

Results 53 RedisFullCheck issues
Sort by recently updated
recently updated
newest added

在 speed.go 这个文件中,定义了一个 Qos 结构用于限速。其中启动了一个定时器,每秒往一个 chan 中放 `qps` 个 token。因为第一次放 token 是在一秒之后,这导致对某个 db 执行 VerifyAllKeyInfo 之前需要等待 1 秒,这大大拖慢了 check 的速度。 相关代码如下: ```go // limit qps qos := common.StartQoS(conf.Opts.Qps) for keyInfo...

-s, --source=SOURCE 源redis库地址(ip:port),如果是集群版,那么需要以分号(;)分割不同的db,只需要配置主或者从的其中之一。例如:10.1.1.1:1000;10.2.2.2:2000;10.3.3.3:3000。 对于集群版check,文档中写的是只需要配置主或者从的其中之一,容易产生误解,让人认为只配置集群的某一个节点就可以,然而这里必须配置全部的master或者全部的slave,否则会任务只执行在配置节点上导致漏检,希望这里能够描述更清晰一些

这里应该改成 specialErrorPrefix != "" && strings.HasPrefix(err.Error(), specialErrorPrefix) 吧 https://github.com/alibaba/RedisFullCheck/blob/5b294adc5d79868c25f840fd6ab9eddb6308f6db/src/full_check/client/client.go#L234

大佬,Redis-Shake似乎提供了ARM版本,Redis-Full-Check有没有这方面的计划呢?

- use go mod to manage dependency - remove govendor - simplify bool expression as suggested by gopls

报错信息: panic: run PipeRawCommand with commands[strlen ***(key名); strlen ***(key名);...(类似的一堆)] return element[WRONGTYPE Operation against a key holding the wrong kind of value] isn't type int64[redis.redisError] goroutine 40587 [running]: full_check/checker.(*VerifierBase).FetchTypeAndLen.func2(0xc4202c6000, 0xc420739800, 0xf7,...

full_check.go:232]: get keyspace failed[ERR backend server 'Keyspace' not found] panic: get keyspace failed[ERR backend server 'Keyspace' not found] 如上,用最新版本检测两个codis集群时,遇到上述错误,请教如何解决?

建议能自定义源redis的db几比对目标reids的db几。比如源db0来比较目标db7,而忽略其他db比较,只比较目标两个db