Skip to content

Deadlock on background thread running query #299

Closed
@yoavramov

Description

@yoavramov

Hi,

I faced a deadlock on 5 background threads which got stocked on @synchronized(lock) when running parse queries. I didn't run at the same moment all the 5 queries, but since the user hasn't received a response, the user left the page and return it (which cause the query to run once again).

This is not the first time I faced a deadlock in Parse SDK.
I also find out that calling to PFUser.currentUser() can cause a deadlock on main thread because BFTask use semaphore with "wait for ever"
One more deadlock I faced is which accessing a Parse object from the main thread to read one of its properties while a background thread is updating the object from a query result

The two last deadlocks I've mentioned are locking the main thread, therefore the app is freeze and after a short time the OS terminating it.
The first deadlock is only on background thread, so the app isn't freeze, but the user won't receive any data from server.

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