Azure存储账户提交块列表时随机出现“Invalid block list”错误的原因排查咨询
Azure存储账户提交块列表时随机出现“Invalid block list”错误的原因排查咨询
大家好,我最近碰到个棘手的问题,想请教下各位前辈:
大概一周前我接手了客户的一个bug修复需求。客户的日常工作流程是翻译一批文件后,把它们作为块Blob上传到我们的Azure存储账户。我们的处理逻辑是先获取块列表,追加新更改后再提交。
但大概20天前,这个任务突然失效了,提交块列表时频繁收到Invalid block list错误。查看块列表后我发现,块ID的格式变了——之前一直是Base64编码的日期格式,现在变成了Base64编码的UUID。但客户这边负责该任务的代码库已经整整一年没改动过了。我试过把相关依赖包更新到最新版本,还是会触发同样的错误。
为了排查是不是我们这边的问题,我在开发环境里完全清空了块列表,之后任务居然恢复正常了(每次更改的块ID格式都回到了原来的样子)。但生产环境绝对不能这么操作,会丢失大量数据。
我知道这个错误通常在多个应用同时提交块列表时出现,但我们已经反复确认不存在这种并发提交的情况。
所以想请教几个问题:
- 这种随机出现的错误可能是什么原因导致的?
- Azure存储账户最近有没有什么平台层面的变更,或者其他外部因素会引发这类问题?
- 还是说问题根源依然在客户这边?
任何相关的思路或信息都非常感谢!
补充说明:这个错误不是每次上传都会触发,而是毫无规律地随机出现。
备注:内容来源于stack exchange,提问作者Mase
相关产品推荐
相关产品推荐

