等待使用boto3完全删除DynamoDB表

Yas*_*sel 4 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')
Run Code Online (Sandbox Code Playgroud)

qui*_*ver 10

delete_tableAPI 之后,请致电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")
Run Code Online (Sandbox Code Playgroud)

对于create_tableAPI,请致电table_exists服务员.这将等待指定的表激活.


Ali*_*rim 9

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

table = dynamoResources.Table(table_name)
table.delete()
table.wait_until_not_exists()
Run Code Online (Sandbox Code Playgroud)

  • 对于遇到这种情况的人,如果您需要等待表创建,还有一个 wait_until_exists 。 (5认同)