{"action":"created","issue":{"url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/145","labels_url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/145/labels{/name}","comments_url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/145/comments","events_url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/145/events","html_url":"https://github.com/reverbdotcom/reverb-magento/issues/145","id":115566971,"number":145,"title":"Orders which fail an initial import become \"stuck\" in an Error state","user":{"login":"StevenWolfe","id":274960,"avatar_url":"https://avatars.githubusercontent.com/u/274960?v=3","gravatar_id":"","url":"https://api.github.com/users/StevenWolfe","html_url":"https://github.com/StevenWolfe","followers_url":"https://api.github.com/users/StevenWolfe/followers","following_url":"https://api.github.com/users/StevenWolfe/following{/other_user}","gists_url":"https://api.github.com/users/StevenWolfe/gists{/gist_id}","starred_url":"https://api.github.com/users/StevenWolfe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/StevenWolfe/subscriptions","organizations_url":"https://api.github.com/users/StevenWolfe/orgs","repos_url":"https://api.github.com/users/StevenWolfe/repos","events_url":"https://api.github.com/users/StevenWolfe/events{/privacy}","received_events_url":"https://api.github.com/users/StevenWolfe/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-11-06T19:04:23Z","updated_at":"2015-11-06T19:46:20Z","closed_at":null,"body":"When an Order fails to be imported to Magento the Order Sync screen shows a \"retry\" action for the order; however if the reason for the initial error is within the order's JSON data (and not an internal magento exception) then the retry task will always fail, leaving these orders stuck.\r\n\r\nThis is because the order's JSON is serialized and persisted within `reverb_process_queue_task_unique.serialized_arguments_object` in the Magento database.  This serialized data is never refreshed.\r\n\r\nThe retry action should retrieve an updated version of the order via the API and use that during it's retry action.  This would address cases such as orders where the buyer has not yet provided a shipping address (see #144).\r\n\r\nWe've worked around this by manually updating the `serialized_arguments_object`.\r\n\r\n*As a side note:* it would be nice if the serialized arguments were in JSON rather than PHP's binary strings, which are .  It would be easy to convert these in a migration script with `json_encode(unserialize($blob))` call, especially since the column is already a `text` field."},"comment":{"url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/comments/154513618","html_url":"https://github.com/reverbdotcom/reverb-magento/issues/145#issuecomment-154513618","issue_url":"https://api.github.com/repos/reverbdotcom/reverb-magento/issues/145","id":154513618,"user":{"login":"StevenWolfe","id":274960,"avatar_url":"https://avatars.githubusercontent.com/u/274960?v=3","gravatar_id":"","url":"https://api.github.com/users/StevenWolfe","html_url":"https://github.com/StevenWolfe","followers_url":"https://api.github.com/users/StevenWolfe/followers","following_url":"https://api.github.com/users/StevenWolfe/following{/other_user}","gists_url":"https://api.github.com/users/StevenWolfe/gists{/gist_id}","starred_url":"https://api.github.com/users/StevenWolfe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/StevenWolfe/subscriptions","organizations_url":"https://api.github.com/users/StevenWolfe/orgs","repos_url":"https://api.github.com/users/StevenWolfe/repos","events_url":"https://api.github.com/users/StevenWolfe/events{/privacy}","received_events_url":"https://api.github.com/users/StevenWolfe/received_events","type":"User","site_admin":false},"created_at":"2015-11-06T19:46:20Z","updated_at":"2015-11-06T19:46:20Z","body":"@dunagan5887 no biggie, was just a thought while I was wiring up a harness to poke the updated data in"}}