Azure / Azure/azure-libraries-for-java
get com.microsoft.azure.CloudException: Status code 405 calling genericResources.checkExistence() [QUERY]
- 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
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