等待使用boto3完全删除DynamoDB表

时间:2016-07-19 21:50:33

标签: python amazon-dynamodb boto3

我需要删除一个dynamodb表,并等待它完全删除。我怎么检查这个?
boto3 api公开了一个方法get_waiter来等待某些事件,但它没有很好地记录。我可以将它用于此目的吗?哪个是事件名称,或者可能处理ResourceNotFoundException

# Wait until the table exists.
table.meta.client.get_waiter('table_exists').wait(TableName='TableName')

2 个答案:

答案 0 :(得分:9)

delete_table API之后,请致电table_not_exists服务员。这将一直等到指定的表返回404。

import boto3
client = boto3.client('dynamodb')
client.delete_table(TableName='foo')
waiter = client.get_waiter('table_not_exists')
waiter.wait(TableName='foo')
print ("table deleted")

对于create_table API,请致电table_exists服务员。这将一直等到指定的表激活。

答案 1 :(得分:2)

没有waiter,我们现在可以使用wait_until_not_exists 函数,如下例所示

table = dynamoResources.Table(table_name)
table.delete()
table.wait_until_not_exists()