Asynchronous processing — python-designateclient — branch stable/2026.2
Branch
stable/2026.2@9231eef90192— repository https://opendev.org/openstack/python-designateclient — analysed on 2026-11-01
None. The inventory reports 0 RPC calls and 0 triggers. The package has no consumer, timer, thread or daemon, and openstack is one short-lived process per command.
| Process | Trigger | Type | Purpose | Reads | Writes / emits | Defined at |
|---|---|---|---|---|---|---|
openstack | a list command | synchronous loop, not a background task | read all pages | links.next of each page | further GET requests | designateclient/v2/utils.py:70 |
The pagination loop
- Trigger: every list command through
get_all. Notresolve_by_name, which reads one page. - Stop condition: the page has no
nextkey inlinks(designateclient/v2/base.py:36). - Limit: none, so a page that always carries
nextnever ends (defect 9). - Cost: one request per page, with the page size chosen by the service. The CLI has no
--limit.
What the client does not do for the service's asynchronous work
Designate's writes are asynchronous: many answers are 202 with status: PENDING, and its workers finish later (reverse-spec-designate). The client has **no --wait option and no polling**, unlike some OSC commands.
| To observe | Command to re-run | Field |
|---|---|---|
| zone creation, update, deletion | zone show | status, action, serial |
| recordset change | recordset show | status, action |
| export | zone export show | status, message, location |
| import | zone import show | status, message, zone_id |
| transfer accept | zone transfer accept show | status |
| PTR record | ptr record show | status, action |
Scripts must write this loop themselves. zone create exiting 0 means the service recorded the request, not that the zone is served.
Source: reverse-spec-python-designateclient/05-async-processing_stable-2026.2.md. The _rewrite/ and _inventory/ files are not published on the site.