microsoftarchive / redis

Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes
http://redis.io
Other
20.82k stars 5.38k forks source link

ERROR ON SAVE #629

Open maurosys opened 5 years ago

maurosys commented 5 years ago

=== REDIS BUG REPORT START: Cut & paste starting from here === Redis version: 4.0.2.2 [9688] 12 Sep 08:24:16.675 # --- ABORT [9688] 12 Sep 08:24:16.676 # --- STACK TRACE redis-server.exe!AbortHandler(d:\dev\github\redis\src\win32_interop\win32_stacktrace.cpp:208)(0x00000016, 0x7FCEC70D3280, 0x6F6349225C2C2201, 0x1401BAED8) redis-server.exe!raise(d:\rs1\minkernel\crts\ucrt\src\appcrt\misc\signal.cpp:516)(0x0014EF01, 0x00000000, 0x00000000, 0x00000000) redis-server.exe!abort(d:\rs1\minkernel\crts\ucrt\src\appcrt\startup\abort.cpp:71)(0x6F63492200000008, 0x140195180, 0x6F6349225C2C2259, 0x00000057) redis-server.exe!zmalloc_default_oom(d:\dev\github\redis\src\zmalloc.c:129)(0x6F6349225C400000, 0x6F6349225C2C2259, 0x0014F030, 0x0014F038) redis-server.exe!zmalloc(d:\dev\github\redis\src\zmalloc.c:139)(0x7FCEC70F1370, 0x1400DA387, 0x7FCEC849EE41, 0x00000011) redis-server.exe!rdbSaveRawString(d:\dev\github\redis\src\rdb.c:405)(0x0014F240, 0x1400CF4D3, 0x0014F231, 0x7FCEC70F1370) redis-server.exe!rdbSaveObject(d:\dev\github\redis\src\rdb.c:677)(0x0014F240, 0x00000000, 0x0014F240, 0x0014F240) redis-server.exe!rdbSaveRio(d:\dev\github\redis\src\rdb.c:958)(0x004E99E0, 0x00DC0000, 0x011C2760, 0x000025D8) redis-server.exe!rdbSave(d:\dev\github\redis\src\rdb.c:1038)(0x00DC0000, 0x00000005, 0x00DC0000, 0x00000198) redis-server.exe!QForkChildInit(d:\dev\github\redis\src\win32_interop\win32_qfork.cpp:344)(0x004690B0, 0x00465070, 0x004815C0, 0x1401B8E70) redis-server.exe!QForkStartup(d:\dev\github\redis\src\win32_interop\win32_qfork.cpp:525)(0x00465070, 0x00000000, 0x00000005, 0x00000006) redis-server.exe!main(d:\dev\github\redis\src\win32_interop\win32_qfork.cpp:1284)(0x00000000, 0x00000000, 0x1401BAEF8, 0x00000000) redis-server.exe!__scrt_common_main_seh(f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)(0x00000000, 0x00000000, 0x00000000, 0x00000000) KERNEL32.DLL!BaseThreadInitThunk(f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)(0x00000000, 0x00000000, 0x00000000, 0x00000000) ntdll.dll!RtlUserThreadStart(f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)(0x00000000, 0x00000000, 0x00000000, 0x00000000) ntdll.dll!RtlUserThreadStart(f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:283)(0x00000000, 0x00000000, 0x00000000, 0x00000000) [9688] 12 Sep 08:24:16.684 # === REDIS BUG REPORT END. Make sure to include from START to END. ===

tporadowski commented 5 years ago

@maurosys please give the latest 4.0.2.3 version a try and if it still fails for you - please include more details (ideally some steps to reproduce ;) ). Please also use https://github.com/tporadowski/redis/issues for reporting problems (yup, I noticed that the link in crash report still mentions this repo).

maurosys commented 5 years ago

@tporadowski thanks for reply, I was testing memurai too, but I will try this version.

tporadowski commented 5 years ago

I've just noticed zmalloc_default_oom in that stack - OOM means "Out Of Memory", so please have a look if it's not related to that area (this might as well be related to some wrong type conversion). If you can reproduce it in any way - please let me know. Regarding Memurai - does it also fail there?