Kazukii
1
Shopify Appを開発しています。
Admin APIのfulfillmentOrderHoldのmutationを叩いた際に、userErrorsの返り値に
Cannot apply a fulfillment hold on a fulfillment order in an uninterruptible state.
というエラーが入っていることがありました。
これは毎回ではなく、1回だけ再現しています。
実際にはfulfillmentOrderHoldによるフルフィルメントを保留にする処理は成功していましたが、
userErrorsに値が入っていると例外を出すようにアプリを実装しているので、後続の処理は止まってしまいました。
このエラーおよびuninterruptible stateについて、調べてみましたが文献が見つからず、
これはどのような状態で、無視しても問題はないものかについてお聞きしたいです。
おそらくですが、オーダーが作成されてすぐにフルフィルメント保留のAPIを読んだ場合などに、両者は非同期で走るので、オーダーの注文のステータス変更が追いついていなくて起こるエラーかもしれません。
タイミングをずらすなどでして、検証していただけますか?
どうしても解決しない場合は、パートナーダッシュボードのサポートメニューから、Report an issueで、実際のmutationとレスポンス、その時のRequrst IDを添えて、不具合として報告してください(英語での報告の方がスムーズです)
Kazukii
3
ご回答ありがとうございます。
まさに、Order作成後すぐにmutationを叩いておりました。
現状ではこのエラーが出てもフルフィルメント保留にはなっているようですが、
このエラーが出たときは、念の為フルフィルメント状態が保留になっているか確認し、なっていなければ再度mutationを実行するという実装にしておこうと思います。
相談窓口も案内いただきありがとうございました。
1 Like
Kazukii
4
こちらですが、すでにフルフィルメントが保留になっているfifllmentOrderに対してfulfillmentOrderHoldを叩くと、100%再現することを確認しました。
1 Like