zkteco-home / redis-windows

Native port of Redis for Windows,it can be installed as service.
MIT License
1.84k stars 167 forks source link

redis-server 7.2.3 there are several issues #55

Closed thful closed 9 months ago

thful commented 10 months ago

I am sorry to disturb in your busy schedule, I have a few questions to ask you, inappropriate, please forgive me windows server 2022 21H2 + redis-windows 7.2.3, It is a single-instance deployment.

  1. windows events often have some error logs. Faulting application name: redis-server.exe, version: 7.2.3.0, time stamp: 0x6547eeb3 Faulting module name: redis-server.exe, version: 7.2.3.0, time stamp: 0x6547eeb3 Exception code: 0xc0000409 Fault offset: 0x0000000000139b79 Faulting process id: 0x2d44 Faulting application start time: 0x0000000000139b79 Faulting application path: D:\redis_7.2.3\redis-server.exe Faulting module path: D:\redis_7.2.3\redis-server.exe cc77b5d9-1e13-4f19-988e-c6d84c5d3a6e

The Redis logs at that time looked like this: [piY6Uf0.md.jpg] There are almost 1 to 2 instances of the 0xc0000005 error every day, while the 0xc0000409 error has occurred only once today.

  1. occasionally there is missing characters in the stored data, this happens about once every 2 to 3 days. [piY6ZTA.md.jpg] However, the AOF logs that were written at that time appear to be normal. [piY61Og.jpg]

Thank you in advance for your time.

Today, there were 4 error issues, two of which were related to 0xc0000409 and another two were related to 0xc0000005. Below are the corresponding system events and Redis logs. pittY4g.md.png

thful commented 10 months ago

redis.conf:

save 3600 1 300 100 60 10000 stop-writes-on-bgsave-error no appendonly yes appendfilename 'appendonly.aof' appendfsync everysec rdbchecksum no

zkteco-home commented 10 months ago

did you use redis 7.2.2?i want to know if bcz 7.2.3 changed something

zkteco-home commented 10 months ago

you know,like this issue,it's very difficuty to check,it's very weird

zkteco-home commented 10 months ago

you can try to change rdbchecksum yes

thful commented 10 months ago

I know how to reproduce this problem 100% now. It occurs when writing data to a Hash type continuously for around 5 minutes. Enabling the rdbchecksum switch does not have a decisive impact on this issue. Yesterday, it recurred more than ten times. The same issue also occurred when using 7.0.11 in the past.

image

zkteco-home commented 10 months ago

i dont understand how to reproduce it,what should i do?

thful commented 9 months ago

In Redisson, to quickly write a large amount of data into Hash type

public static void setMap(final String key, final Map<String, T> dataMap) { RMap<String, T> rMap = CLIENT.getMap(key); rMap.putAll(dataMap); }

public static void setMapValue(final String key, final String hKey, final T value) { RMap<String, T> rMap = CLIENT.getMap(key); rMap.put(hKey, value); }

zkteco-home commented 9 months ago

Fixed in 7.2.4