7:15 AM PT – Swapped Kingston Class 4 4G sdcards for 00_23_76_96_cc_6f_nexus-one and c8_aa_21_ac_0c_b5_droid-pro after repeated failures checking for the device root.
19:00 PM PT – Both 00_23_76_96_cc_6f_nexus-one and c8_aa_21_ac_0c_b5_droid-pro showed an inability to properly detect and use the external sdcard. I cycled through most of the previously used sdcards attempting to find ones that worked. After checking almost all of the remaining older cards, I found one that worked in the droid-pro but could not find a card that would work with the nexus-one. In my attempt to get a working patch for bug 933842 – Add ability to specify test root in SUTAgent.ini, I realized that mozdevice’s devicemanager.getDeviceRoot() caches the reported value of the test root. Since the autophone workers survive the rebooting of a device, the cached test root value is reused until the device’s worker is restarted. This means that once an incorrect test root is detected, it will not be corrected by rebooting the device. I am testing an preliminary version of the patch for bug 933842 on the nexus one which forces the test root to /mnt/sdcard. I have resubmitted all builds from 2013-10-31 to now for both nexus ones and the droid pro. Hopefully the devices will be more reliable. It may also be the case that the older sdcards are not as unreliable as initially thought.
I also noticed that Autophone’s workers use devicemanager’s getDeviceRoot() to determine if a device is still responsive. Since the value is cached, this test is ineffective in determining if a device is still responding.