请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

grpc.StatusCode.UNKNOWN的含义是什么?

     try:
                # 调用失败问题比较复杂
                inv_stub.Sell(inventory_pb2.SellInfo(orderSn=order_sn, goodsInfo=goods_sell_info))
            except grpc.RpcError as e:
                local_execute_dict[order_sn]["code"] = grpc.StatusCode.INTERNAL
                local_execute_dict[order_sn]["detail"] = f"扣减库存失败:{str(e)}"
                err_code = e.code()
                if err_code == grpc.StatusCode.UNKNOWN or err_code == grpc.StatusCode.DEADLINE_EXCEEDED:
                    return TransactionStatus.COMMIT
                else:
                    # 库存不足, 库存服务没有扣减库存,不需要发送归还库存消息
                    return TransactionStatus.ROLLBACK

老师,您说扣减库存的时候遇到异常之后,如果是grpc.StatusCode.UNKNOWN和grpc.StatusCode.DEADLINE_EXCEEDED这两种错误,需要确认归还库存的消息。
grpc.StatusCode.DEADLINE_EXCEEDED表示超时,实际上库存确实扣减了,所以需要归还库存,这个我理解。
但是为什么grpc.StatusCode.UNKNOWN这个错误也要归还库存啊?出现这个错误库存一定被扣减了吗?万一库存没被扣减,结果我们确认归还库存的消息,那库存不就变多了嘛,这是不是有问题呀。
所以想问一下grpc.StatusCode.UNKNOWN这个错误的具体含义是什么意思,用在此处真的合适吗?

正在回答 回答被采纳积分+3

1回答

提问者 0沉默使者0 2023-08-17 06:41:27

后面课程会说这个问题,已解决

0 回复 有任何疑惑可以回复我~
  • bobby #1
    好的。。。
    回复 有任何疑惑可以回复我~ 2023-08-22 17:26:21
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号