apache / apache/cloudstack

Inconsistent jobstatus in queryAsyncJobResult API response

Offen
#12,538 1 Kommentar 1 Reaktion 1 zugewiesene Person Beansprucht von @sureshanaparti Auf GitHub ansehen
type:technical-debt
Vorherrschende Sprache
Java
Sterne
3.1k
Forks
1.4k
Ø Merge
6 T. 19 Std.
Gemergte PRs (30 T.)
32

Beschreibung

### problem

When checking job status of just created VM (creation should be already done) then it returns inconsistent jobstatus.

Here is example of response (irrelevant fields are omitted)

```json
{
"queryasyncjobresultresponse": {
"jobresult": {
"virtualmachine": {
"id": "eaa91396-811a-4db2-8ee8-91bb7c7b5d84",
"name": "x4ae6133a-908a-4ce5-8233-63dd93cc44d2",
"jobid": "35e2eb4c-7753-4d53-88ab-494ee1a8f296",
"jobstatus": 0
}
},
"jobid": "35e2eb4c-7753-4d53-88ab-494ee1a8f296",
"jobstatus": 1
}
}
```

So inside `virtualmachine` `"jobstatus": 0` (which means "in progress" and it is incorrect)
Outsite it is `"jobstatus": 1` which means "done" and it is correct.
These should be the same statuses - they have the same `jobid`

### versions

Cloudstack version 4.22
Hypervisor KVM

### The steps to reproduce the bug

1. Create vm using api `deployVM`
2. After VM is fully created use `queryAsyncJobResult` api call with `jobid` from `deployVM`
3. verify that `jobstatus` in both fields is the same

### What to do about it?

I think there are two solutions
1. Make `jobstatus` inside `virtualmachine` the same as outside. (I would prefer this option)
2. Remove `jobstatus` from inside `virtualmachine` when job is done. This way `listVirtualMachines` api is working, although it is confusing

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.