{"action":"closed","issue":{"url":"https://api.github.com/repos/BranchMetrics/android-branch-deep-linking/issues/547","repository_url":"https://api.github.com/repos/BranchMetrics/android-branch-deep-linking","labels_url":"https://api.github.com/repos/BranchMetrics/android-branch-deep-linking/issues/547/labels{/name}","comments_url":"https://api.github.com/repos/BranchMetrics/android-branch-deep-linking/issues/547/comments","events_url":"https://api.github.com/repos/BranchMetrics/android-branch-deep-linking/issues/547/events","html_url":"https://github.com/BranchMetrics/android-branch-deep-linking/issues/547","id":297555636,"number":547,"title":"Branch initialization stuck with INSTALL_REFERRER_FETCH_WAIT_LOCK","user":{"login":"mikhailmelnik","id":3161857,"avatar_url":"https://avatars0.githubusercontent.com/u/3161857?v=4","gravatar_id":"","url":"https://api.github.com/users/mikhailmelnik","html_url":"https://github.com/mikhailmelnik","followers_url":"https://api.github.com/users/mikhailmelnik/followers","following_url":"https://api.github.com/users/mikhailmelnik/following{/other_user}","gists_url":"https://api.github.com/users/mikhailmelnik/gists{/gist_id}","starred_url":"https://api.github.com/users/mikhailmelnik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikhailmelnik/subscriptions","organizations_url":"https://api.github.com/users/mikhailmelnik/orgs","repos_url":"https://api.github.com/users/mikhailmelnik/repos","events_url":"https://api.github.com/users/mikhailmelnik/events{/privacy}","received_events_url":"https://api.github.com/users/mikhailmelnik/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2018-02-15T18:48:27Z","updated_at":"2018-02-16T00:07:12Z","closed_at":"2018-02-16T00:07:12Z","author_association":"NONE","body":"It might be related only to the particular integration I'm doing but the call sequence looks legit so it feels like an issue.\r\n\r\nBasically I found that Branch SDK calls stuck when app is installed from Play Store or using `adb install` with following `adb shell am broadcast -a com.android.vending.INSTALL_REFERRER -n <package_name>/io.branch.referral.InstallListener --es referrer \"test_referrer=test\"` command.\r\n\r\nThe locking sequence is following:\r\n\r\n```\r\nrequest.addProcessWaitLock(ServerRequest.PROCESS_WAIT_LOCK.INSTALL_REFERRER_FETCH_WAIT_LOCK); at Branch.java:2316\r\nInstallListener.captureInstallReferrer(playStoreReferrerFetchTime, this); at Branch.java:2317\r\nreportInstallReferrer(); at InstallListener.java:40\r\ncallback_.onInstallReferrerEventsFinished(); at InstallListener.java:114\r\nrequestQueue_.unlockProcessWait(ServerRequest.PROCESS_WAIT_LOCK.INSTALL_REFERRER_FETCH_WAIT_LOCK); at Branch.java:1530\r\nfor (ServerRequest req : queue) at ServerRequestQueue.java:372\r\n```\r\n\r\ni.e. in the first line code sets lock on current request and tries to remove it (synchronously in my case) in the last line, but, unfortunately the call itself is not in the queue yet so stays locked forever.\r\n\r\n"}}
{"actor":{"display_login":"sojanpr"}}