Azure / Azure/azure-libraries-for-java

get com.microsoft.azure.CloudException: Status code 405 calling genericResources.checkExistence() [QUERY]

Offen
#1,241 7 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
ARM customer-reported
Vorherrschende Sprache
Java
Sterne
97
Forks
102
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

**Query/Question**
https://github.com/Azure/azure-libraries-for-java/blob/master/azure-mgmt-resources/src/test/java/com/microsoft/azure/management/resources/GenericResourcesTests.java
Run test as above, after deleting resource
```
genericResources.deleteById(resource.id());
Assert.assertFalse(genericResources.checkExistence(newRgName, resource.resourceProviderNamespace(), resource.parentResourcePath(), resource.resourceType(), resource.name(), resource.apiVersion()));
```
checkExistence() sometimes triggers "CloudException 405".
The stack is as follows:
```
com.microsoft.azure.CloudException: Status code 405

at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
At java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at com.microsoft.azure.AzureResponseBuilder.buildEmpty(AzureResponseBuilder.java:72)
at com.microsoft.azure.management.resources.implementation.ResourcesInner.checkExistenceByIdDelegate( ResourcesInner.java:1912)
at com.microsoft.azure.management.resources.implementation.ResourcesInner.access$900(ResourcesInner.java:47)
at com.microsoft.azure.management.resources.implementation.ResourcesInner$63.call(ResourcesInner.java:1898)
at com.microsoft.azure.management.resources.implementation.ResourcesInner$63.call(ResourcesInner.java:1894)
at rx.internal.operators.OnSubscribeMap$MapSubscriber.onNext(OnSubscribeMap.java:69)
at retrofit2.adapter.rxjava.CallArbiter.deliverResponse(CallArbiter.java:120)
at retrofit2.adapter.rxjava.CallArbiter.emitResponse(CallArbiter.java:102)
at retrofit2.adapter.rxjava.CallExecuteOnSubscribe.call(CallExecuteOnSubscribe.java:46)
at retrofit2.adapter.rxjava.CallExecuteOnSubscribe.call(CallExecuteOnSubscribe.java:24)
at rx.Observable.unsafeSubscribe(Observable.java:10327)
at rx.internal.operators.OnSubscribeMap.call(OnSubscribeMap.java:48)
at rx.internal.operators.OnSubscribeMap.call(OnSubscribeMap.java:33)
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48)
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:48)
at rx.internal.operators.OnSubscribeLift.call(OnSubscribeLift.java:30)
at rx.Observable.subscribe(Observable.java:10423)
at rx.Observable.subscribe(Observable.java:10390)
at rx.observables.BlockingObservable.blockForSingle(BlockingObservable.java:443)
at rx.observables.BlockingObservable.single(BlockingObservable.java:340)
at com.microsoft.azure.management.resources.implementation.ResourcesInner.checkExistenceById(ResourcesInner.java:1845)
at com.microsoft.azure.management.resources.implementation.GenericResourcesImpl.checkExistenceById(
GenericResourcesImpl.java:86)
```

Why did it happen and how to solve this problem?

**Setup (please complete the following information if applicable):**
- JRE Version: JDK 11
- SDK Version:
com.microsoft.azure azure-mgmt-graph-rbac 1.34.0

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie mit azure-mgmt-resources/src/test/java/com/microsoft/azure/management/resources/GenericResourcesTests.java und reproduzieren Sie die delete-then-checkExistence-Sequenz. Verfolgen Sie den Aufruf durch GenericResourcesImpl.java und ResourcesInner.java und verwenden Sie dabei den gemeldeten Stack-Frame in AzureResponseBuilder.java, um den sporadisch auftretenden 405 zu untersuchen. Erledigt ist die Aufgabe, wenn das Verhalten erklärt ist und der Test nach der Löschung zuverlässig false zurückgibt, ohne eine unerwartete CloudException.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
azure, java
Bereich
api, cloud
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

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