-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash when MMKV.mmkvWithID(String mmapID) #210
Comments
Call stack of other threads is needed. It's impossible to solve these lock-wait ANR without them. |
By the way, if you can provide MMKV's output to log cat, that will be nice. |
Is it possible that you has stored large data(10M+) inside MMKV? |
Because the anr info I can only get from google play. So i can't get log yet. But I notice that every anr case has a thread that blocked in libbreakpad.so.Does it help? |
other thread blocked at |
from the info above, it point out that the thread 'pool-5-thread-1' is blocked after using memcpy |
I need more. Provide full stack of each thread if possible. |
full traces file has been sent to your e-mail @Tencent. |
Let me check one more thing, are you using |
com.tencent.mmkv-static:1.0.16 |
Hey, any update on your last release? |
I think this is because of a crash on LGH873 : Thread 20 (crashed) |
Hi @pickpick12345 , can you send me that MMKV file which trigger this crash? |
This crash was caused by an online user, so we didn't get the logcat output or the specific data he wanted to save yet,but I sent crash files to your mailbox. |
I found a possible reason .If the actual size saved in the header of the MMKV file records the wrong value for some reason and the MMKVHandler return OnErrorRecover, a similar crash would occur. |
Thanks for this input. I'll look into this case. |
It's fixed with this commit. As has discussed before, it doesn't solve all those crash cases. For there were many cases that MMKV has finished loading without error, but crashed on getting a string value. |
Released with v1.0.18. |
Close due to inactive. |
The language of MMKV
The version of MMKV
The platform of MMKV
The installation of MMKV
What's the issue?
"main" prio=5 tid=1 Native
| group="main" sCount=1 dsCount=0 flags=1 obj=0x736a8718 self=0xe6dfb000
| sysTid=17757 nice=0 cgrp=default sched=0/0 handle=0xeb08d4b8
| state=S schedstat=( 0 0 0 ) utm=23 stm=11 core=3 HZ=100
| stack=0xff298000-0xff29a000 stackSize=8MB
| held mutexes=
#00 pc 0000000000018e40 /system/lib/libc.so (syscall+28)
#1 pc 00000000000490ef /system/lib/libc.so (__pthread_mutex_lock_with_timeout(pthread_mutex_internal_t*, bool, timespec const*)+518)
#2 pc 000000000000fe6d /data/app/sg.bigo.live-2iOoZ9rP5uC4FrwyGiQtaQ==/lib/arm/libmmkv.so (???)
at com.tencent.mmkv.MMKV.getMMKVWithID (Native method)
at com.tencent.mmkv.MMKV.y (MMKV.java:86)
another case:
"main" prio=5 tid=1 Native
| group="main" sCount=1 dsCount=0 obj=0x75b5c598 self=0xab35ff08
| sysTid=20586 nice=0 cgrp=default sched=0/0 handle=0xf7651b50
| state=S schedstat=( 392984120 914217 184 ) utm=29 stm=10 core=4 HZ=100
| stack=0xff76e000-0xff770000 stackSize=8MB
| held mutexes=
#00 pc 0000000000016998 /system/lib/libc.so (syscall+28)
#1 pc 000000000004208f /system/lib/libc.so (_ZL33__pthread_mutex_lock_with_timeoutP24pthread_mutex_internal_tPK8timespeci+326)
#2 pc 0000000000042245 /system/lib/libc.so (pthread_mutex_lock+26)
#3 pc 000000000000fe6d /data/app/sg.bigo.live-1/lib/arm/libmmkv.so (???)
at com.tencent.mmkv.MMKV.getMMKVWithID (Native method)
at com.tencent.mmkv.MMKV.y (MMKV.java:86)
The text was updated successfully, but these errors were encountered: