Work-around for system property failures
Bug: 236932163 This change adds a work-around to PropertyInvalidatedCache for failures to set a system property. Such failures cause fatal crashes in Android but it is believed that a simple retry will succeed. (Note: the failures have only been reported on partner devices and cannot be reproduced on Pixel phones, so no root-cause is available yet.) RuntimeExceptions (thrown from android_os_SystemProperties.cpp) are caught and retried. The retry limit is 5 times with a 200ms delay between attempts. This means that the maximum delay is 1s, whcih should avoid triggering an ANR. In addition to automated testing, a manual test was created with ambush code in the system property component of libc. The ambush code injected an error into the set-property logic for cache keys. It was observed that the system recovered properly. Test: atest: * FrameworksCoreTests:PropertyInvalidatedCacheTests * FrameworksCoreTests:IpcDataCacheTest Change-Id: I3a124b185c7499a45b27df7cbf889ae6d1d33377
Loading
Please register or sign in to comment