Skip to content
This repository was archived by the owner on Oct 25, 2024. It is now read-only.
This repository was archived by the owner on Oct 25, 2024. It is now read-only.

Fail to Remove from FileObjectQueue #211

@csv8674xn

Description

@csv8674xn

Similar to this issue, we are also seeing exceptions while removing the object from the Queue.

java.lang.ArrayIndexOutOfBoundsException:length=32; regionStart=0; regionLength=-2053298290
libcore.util.throwsIfOutOfBounds ( ArrayUtils .java :40)
libcore.io.read ( IoBridge .java :508)
java.io.readBytes ( RandomAccessFile .java :387)
java.io.read ( RandomAccessFile .java :416)
java.io.readFully ( RandomAccessFile .java :475)
com.squareup.tape2.ringRead ( QueueFile .java :350)
com.squareup.tape2.remove ( QueueFile .java :631)
com.squareup.tape2.remove ( FileObjectQueue .java :51)

Impacted users are considerably low (a few per millions). However, when it happens, user will stuck in the state and app crashes whenever it tries to perform the same execution again. Therefore, the raw crash count is actually now low.

What's the best way to handle this? If we can't fix the root, we might as well just drop off all the records in the Queue and give it a clean start. Given the error happens at the time of removal, it seems unlikely we can do it tough.

Note: we've only found this issue from Android 9 and 10 by far.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions