-
Notifications
You must be signed in to change notification settings - Fork 8
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
Unable to upload samples on Android 9.0 (Huawei P20 Pro) #61
Comments
Underlying issue: Unable to store samples:
|
Seems to be caused the Thrift serializer failing to serialize the sample for some reason. Also Thrift's SimpleJson serializer fails on it. Perhaps something has changed in the Android platform so that Thrift's dependencies are no longer available? |
First things that come to mind: some weird bytes that are not UTF8? Or an interrupted write that leads to a null or corrupted sample? (This seems to happen quite often with aggressive background task limitations) https://github.com/apache/thrift/blob/master/lib/java/src/org/apache/thrift/protocol/TCompactProtocol.java#L363 |
Is this for all samples or this specific one? |
All samples. I deleted the app, reinstalled from current master to get access to current logcat. New samples fail to store on my device. At least first 4000 characters of Sample content are fine (logcat limitation). |
Weird, we might want to look into Apache Avro next (JSON based, but no server/client-gen) if we plan on moving away from Thrift. One more thing that comes to mind is that perhaps down the line Thrift is allocating a buffer of insufficient size and our samples have simply started exceeding that. |
looks normal, but error:
|
Do you get the following line in your logcat with DEBUG enabled?
I'm wondering whether the sample turns null before it reaches |
It doesn't; I have been printing it from just before the serialize call and toString() was fine. |
I was under the impression that Thrift accepted those, but might be worth checking. Otherwise the sample looks perfectly normal. |
It would make sense that it was caused by null values in an array which we probably have not had before. Thermal zones were among the last things that have been added. |
Setting thermal zones parameter to null causes the error not to show. |
The modified version has enabled my Huawei P20 Pro device to get an active battery life estimate J-Score for the first time. Permission dialogs must be fixed until the version can go public though. Here's the version for testing: https://github.com/carat-project/carat-android/releases/tag/v2.21.0-alpha |
Possibly relevant adb log:
The text was updated successfully, but these errors were encountered: