当前正在针对此资源执行冲突的条件操作。 (桶已经创建)

A conflicting conditional operation is currently in progress against this resource. (bucket already created)

我正在使用 s3fs 将文件上传到已创建的 s3 存储桶(而不是删除存储桶)。执行时,抛出以下错误:

[Operation Aborted]: A conflicting conditional operation is currently in progress against this resource.

但是,我只想将 pickle 文件转储到现有的存储桶中,而不是为每个转储都创建一个存储桶。

在这方面找不到有用的答案。

这意味着存储桶已排队等待删除。

您必须等到它被删除后才能重新创建并上传

aws docs

这是由于 fsspec 对 s3fs 的包装导致 mk_dir 参数冲突。即使存储桶存在于 AWS 中,它仍试图创建存储桶。

而是去掉了fsspec,直接使用了s3fs模块。

import s3fs
import pickle

file='abc.pkl'
s3=s3fs.S3FileSystem()
with s3.open(f's3:///{bucket_name}/{file}', 'wb') as f:
    pickle.dump('data_to_be_written', f)