{"action":"created","issue":{"url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/267","labels_url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/267/labels{/name}","comments_url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/267/comments","events_url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/267/events","html_url":"https://github.com/ParsePlatform/Parse-SDK-Android/issues/267","id":118725323,"number":267,"title":"Installation fails to save: Attempted to change an objectId to one that's already known to the Offline Store.","user":{"login":"alexblack","id":148930,"avatar_url":"https://avatars.githubusercontent.com/u/148930?v=3","gravatar_id":"","url":"https://api.github.com/users/alexblack","html_url":"https://github.com/alexblack","followers_url":"https://api.github.com/users/alexblack/followers","following_url":"https://api.github.com/users/alexblack/following{/other_user}","gists_url":"https://api.github.com/users/alexblack/gists{/gist_id}","starred_url":"https://api.github.com/users/alexblack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexblack/subscriptions","organizations_url":"https://api.github.com/users/alexblack/orgs","repos_url":"https://api.github.com/users/alexblack/repos","events_url":"https://api.github.com/users/alexblack/events{/privacy}","received_events_url":"https://api.github.com/users/alexblack/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/labels/needs%20more%20info","name":"needs more info","color":"ffd182"}],"state":"open","locked":false,"assignee":{"login":"grantland","id":277030,"avatar_url":"https://avatars.githubusercontent.com/u/277030?v=3","gravatar_id":"","url":"https://api.github.com/users/grantland","html_url":"https://github.com/grantland","followers_url":"https://api.github.com/users/grantland/followers","following_url":"https://api.github.com/users/grantland/following{/other_user}","gists_url":"https://api.github.com/users/grantland/gists{/gist_id}","starred_url":"https://api.github.com/users/grantland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/grantland/subscriptions","organizations_url":"https://api.github.com/users/grantland/orgs","repos_url":"https://api.github.com/users/grantland/repos","events_url":"https://api.github.com/users/grantland/events{/privacy}","received_events_url":"https://api.github.com/users/grantland/received_events","type":"User","site_admin":false},"milestone":null,"comments":33,"created_at":"2015-11-24T23:23:52Z","updated_at":"2016-01-26T01:05:17Z","closed_at":null,"body":"```\r\nNon-fatal Exception: java.lang.Exception: java.lang.RuntimeException: Attempted to change an objectId to one that's already known to the Offline Store.\r\n       at com.aadhk.woinvoice.util.ParseInit$2.then(ProGuard:195)\r\n       at com.aadhk.woinvoice.util.ParseInit$2.then(ProGuard:173)\r\n       at bolts.Task$15.run(ProGuard:839)\r\n       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)\r\n       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)\r\n       at java.lang.Thread.run(Thread.java:841)\r\nCaused by java.lang.RuntimeException: Attempted to change an objectId to one that's already known to the Offline Store.\r\n       at com.parse.OfflineStore.updateObjectId(ProGuard:1468)\r\n       at com.parse.ParseObject.notifyObjectIdChanged(ProGuard:1260)\r\n       at com.parse.ParseObject.setState(ProGuard:738)\r\n       at com.parse.ParseObject.setState(ProGuard:726)\r\n       at com.parse.ParseObject$6.then(ProGuard:1407)\r\n       at com.parse.ParseObject$6.then(ProGuard:1392)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.access$000(ProGuard:32)\r\n       at bolts.Task$10.then(ProGuard:581)\r\n       at bolts.Task$10.then(ProGuard:578)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetError(ProGuard:929)\r\n       at bolts.TaskCompletionSource.trySetError(ProGuard:46)\r\n       at bolts.TaskCompletionSource.setError(ProGuard:71)\r\n       at bolts.Task$15$1.then(ProGuard:854)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.access$000(ProGuard:32)\r\n       at bolts.Task$10.then(ProGuard:581)\r\n       at bolts.Task$10.then(ProGuard:578)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetError(ProGuard:929)\r\n       at bolts.TaskCompletionSource.trySetError(ProGuard:46)\r\n       at bolts.TaskCompletionSource.setError(ProGuard:71)\r\n       at bolts.Task$15$1.then(ProGuard:854)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.access$000(ProGuard:32)\r\n       at bolts.Task$10.then(ProGuard:581)\r\n       at bolts.Task$10.then(ProGuard:578)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetError(ProGuard:929)\r\n       at bolts.TaskCompletionSource.trySetError(ProGuard:46)\r\n       at bolts.TaskCompletionSource.setError(ProGuard:71)\r\n       at bolts.Task$15$1.then(ProGuard:854)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.continueWith(ProGuard:588)\r\n       at bolts.Task.continueWith(ProGuard:599)\r\n       at bolts.Task$15.run(ProGuard:843)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeAfterTask(ProGuard:830)\r\n       at bolts.Task.access$100(ProGuard:32)\r\n       at bolts.Task$11.then(ProGuard:635)\r\n       at bolts.Task$11.then(ProGuard:632)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetError(ProGuard:929)\r\n       at bolts.TaskCompletionSource.trySetError(ProGuard:46)\r\n       at bolts.TaskCompletionSource.setError(ProGuard:71)\r\n       at bolts.Task$15$1.then(ProGuard:854)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.continueWith(ProGuard:588)\r\n       at bolts.Task.continueWith(ProGuard:599)\r\n       at bolts.Task$15.run(ProGuard:843)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeAfterTask(ProGuard:830)\r\n       at bolts.Task.access$100(ProGuard:32)\r\n       at bolts.Task$11.then(ProGuard:635)\r\n       at bolts.Task$11.then(ProGuard:632)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetResult(ProGuard:913)\r\n       at bolts.TaskCompletionSource.trySetResult(ProGuard:39)\r\n       at bolts.TaskCompletionSource.setResult(ProGuard:62)\r\n       at bolts.Task$15$1.then(ProGuard:856)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.continueWith(ProGuard:588)\r\n       at bolts.Task.continueWith(ProGuard:599)\r\n       at bolts.Task$15.run(ProGuard:843)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeAfterTask(ProGuard:830)\r\n       at bolts.Task.access$100(ProGuard:32)\r\n       at bolts.Task$11.then(ProGuard:635)\r\n       at bolts.Task$11.then(ProGuard:632)\r\n       at bolts.Task.runContinuations(ProGuard:875)\r\n       at bolts.Task.trySetResult(ProGuard:913)\r\n       at bolts.TaskCompletionSource.trySetResult(ProGuard:39)\r\n       at bolts.TaskCompletionSource.setResult(ProGuard:62)\r\n       at bolts.Task$15$1.then(ProGuard:856)\r\n       at bolts.Task$15$1.then(ProGuard:843)\r\n       at bolts.Task$14.run(ProGuard:798)\r\n       at bolts.BoltsExecutors$ImmediateExecutor.execute(ProGuard:105)\r\n       at bolts.Task.completeImmediately(ProGuard:789)\r\n       at bolts.Task.continueWith(ProGuard:588)\r\n       at bolts.Task.continueWith(ProGuard:599)\r\n       at bolts.Task$15.run(ProGuard:843)\r\n       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)\r\n       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)\r\n       at java.lang.Thread.run(Thread.java:841)\r\n```\r\n\r\nHere is the info I captured:\r\n\r\n```\r\nmsg\tcolumns className, objectId are not unique (code 19) \r\ncreatedat\tThu May 28 22:16:18 MESZ 2015 \r\nname\tinstallation.save-failed \r\nappversion\t0.1.181 \r\ninstallationid\t12de10a7-0558-43e4-955e-096b9c0b935a \r\nidx\t34 \r\ndevicetype\tandroid \r\nobjectid\t39CaIPof9e \r\nruncount\t235 \r\nupdatedat\tMon Nov 23 05:23:57 MEZ 2015 \r\n```\r\n\r\nAnother:\r\n\r\n```\r\nmsg\tAttempted to change an objectId to one that's already known to the Offline Store. \r\nabtest-template\t1 \r\ncreatedat\tMon Nov 23 10:56:19 EST 2015 \r\nname\tinstallation.save-failed \r\nappversion\t0.1.181 \r\ncdtest-paywall\t1 \r\ninstallationid\t6d2923fd-8946-4a36-babe-3889dffe9f50 \r\nidx\t78 \r\ndevicetype\tandroid \r\nobjectid\tFhRwI115GJ \r\nruncount\t12 \r\nupdatedat\tTue Nov 24 13:12:28 EST 2015\r\n```\r\n\r\nAnd another:\r\n\r\n```\r\nmsg\tAttempted to change an objectId to one that's already known to the Offline Store. \r\nabtest-template\t0 \r\ncreatedat\tMon Nov 23 13:02:53 NZDT 2015 \r\nname\tinstallation.save-failed \r\nappversion\t0.1.181 \r\ncdtest-paywall\t1 \r\ninstallationid\tc8a29f3a-e63c-4865-9241-5e8d242d3031 \r\nidx\t43 \r\ndevicetype\tandroid \r\nobjectid\tC8n83z7WL7 \r\nruncount\t7 \r\nupdatedat\tTue Nov 24 19:58:57 NZDT 2015 \r\n```"},"comment":{"url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/comments/174753969","html_url":"https://github.com/ParsePlatform/Parse-SDK-Android/issues/267#issuecomment-174753969","issue_url":"https://api.github.com/repos/ParsePlatform/Parse-SDK-Android/issues/267","id":174753969,"user":{"login":"alexblack","id":148930,"avatar_url":"https://avatars.githubusercontent.com/u/148930?v=3","gravatar_id":"","url":"https://api.github.com/users/alexblack","html_url":"https://github.com/alexblack","followers_url":"https://api.github.com/users/alexblack/followers","following_url":"https://api.github.com/users/alexblack/following{/other_user}","gists_url":"https://api.github.com/users/alexblack/gists{/gist_id}","starred_url":"https://api.github.com/users/alexblack/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alexblack/subscriptions","organizations_url":"https://api.github.com/users/alexblack/orgs","repos_url":"https://api.github.com/users/alexblack/repos","events_url":"https://api.github.com/users/alexblack/events{/privacy}","received_events_url":"https://api.github.com/users/alexblack/received_events","type":"User","site_admin":false},"created_at":"2016-01-26T01:05:17Z","updated_at":"2016-01-26T01:05:17Z","body":"Third time asking - I can attach the debugger and run with the sources attached, is there anything useful I could grab for you?"}}