这个问题与this有关。
当我引入重试时,该问题开始出现,我猜它会重新插入失败的put_item()
。但是BatchWriter
抱怨,因为该项目已经在缓冲区中。
我的代码:
dynamo_client = boto3.client('dynamodb', config=Config(retries={'max_attempts': 3}))
for item in items:
with BatchWriter(table, dynamo_client) as batch:
batch.put_item(Item=item)
如何解决这个问题?我要克服的主要问题是ProvisionedThroughputExceededException
。