[步骤]

[结果]
刊登地方站点失败 not_found 取消执行 此报错很多[期望]
不报此错误[步骤]

[结果]
刊登地方站点失败 not_found 取消执行 此报错很多[期望]
不报此错误001-正式环境:美客多平台自动刊登队列报错:刊登地方站点失败 not_found 取消执行
001+ 【生产环境】美客多平台自动刊登队列报错:刊登地方站点失败 not_found 取消执行
001-正式环境:美客多平台自动刊登队列报错:刊登地方站点失败 not_found 取消执行
001+ 【生产环境】美客多平台自动刊登队列报错:刊登地方站点失败 not_found 取消执行
历史数据处理:
之前被误下架的历史数据,通过找到错误信息包含“not_found”的队列,将系统SKU捞出来后发给业务方,创建自动刊登策略,再次执行刊登


出现问题的原因是刊登全球CBT失败(失败原因是Token失效)后,会继续刊登店铺导致。
解决方案是全球CBT失败后不再继续刊登店铺,失败原因为Token失效的数据状态标记为3等待重推服务重推。
发布时间2023-04-11 17点20左右
耗时:2小时


| 由谁创建 | 李乐同 于 2023-03-21 15:22:07 |
|---|---|
| 影响环境 |
657 |
| 由谁解决 | 姚杰远 于 2023-03-31 14:16:41 |
| 解决版本 | 主干 |
| 解决方案 | 程序BUG |
| 由谁关闭 | 李乐同 于 2023-04-13 20:57:15 |
| 最后修改 | 刘超 于 2023-11-17 09:46:10 |
| 相关Bug |
|---|
问题复现流程:
1. 美客多自动刊登分为两个服务,一个服务先刊登全球站点,另一个服务刊登地方站点
2. 全球站点刊登成功后,再发送一个异步延迟的MQ消息,去同步地方站点
3. 美客多Listing同步的时候,会调用查询地方站点产品信息接口【GetMarketItems】,如果该接口不返回数据,就会将CBT执行下架处理
4. 异步延迟的MQ消息执行时候,会刊登地方站点产品信息,但是刊登前,会使用ItemID调用接口【GetGlobal】获取全球CBT产品信息,如果获取不到,就会提示not_found错误
优化方案:
1. 自动刊登全球站点成功后,会往表里【M_Mercadolibre_Listing_ProductId】面插入一条记录,并且sitestatus='normal'[代码已有,不需要改动]
2. 美客多Listing同步的时候,如果查询接口【GetMarketItems】没有返回数据,则通过ItemID查询表【M_Mercadolibre_Listing_ProductId】里面是否包含sitestatus='normal'的数据(并且修改时间是24小时以内),如果包含,则不执行下架。[改动Listing同步逻辑]