PowerStore: "Übergebene URL kann nicht analysiert werden" für REST GET-Anforderungen mit "select", bei denen der verschachtelte Parameter angegeben ist

Summary: Die Antwort lautet "Übergebene URL kann nicht analysiert werden" für einige REST GET-Anforderungen mit "select", bei denen der verschachtelte Parameter angegeben ist.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Einige komplizierte REST GET-Anforderungen schlagen mit einem Fehler fehl. Eine solche Anforderung erfordert eine Rückwärtsreferenz mit einer Selbstreferenz innerhalb einer einzigen Anforderung.

Beispiel:
/api/rest/appliance?select=eth_ports(partner)

Fehlercode:
0xE04040020008 mit der Meldung "Übergebene URL kann nicht analysiert werden".

Anmerkung: Wenn Sie diese Fehlermeldung erhalten, während Sie eine Integritätsprüfung vor dem Upgrade (Pre Upgrade Health Check, PUHC) ausführen, finden Sie weitere Informationen unter PowerStore: Systemintegritätsprüfungen erkennen Speicherplatzmangel in /cyc_node. Das ist ein anderes Thema.

Cause

Dies wird durch ein postgREST-Problem verursacht, das ungültige Abfragen erzeugt.

Resolution

Anstatt Parameter in einer Anfrage zu schachteln, senden Sie mehrere Anfragen, um die erforderlichen Informationen zu erhalten.

Im Folgenden sind einige der betroffenen GET-Anforderungen mit verschachtelten Parametern aufgeführt, die in REST nicht funktionieren. Es müssen zwei separate Anfragen gestellt werden. 
  • GET      /api/rest/appliance?select=eth_ports(partner)
  • GET      /api/rest/appliance?select=virtual_volumes(target_virtual_volumes)
  • GET      /api/rest/appliance?select=virtual_volumes(source)
  • GET      /api/rest/appliance?select=virtual_volumes(parent)
  • GET      /api/rest/appliance?select=virtual_volumes(child_virtual_volumes)
  • GET      /api/rest/appliance?select=hardware(children)
  • GET      /api/rest/appliance?select=hardware(parent)
  • GET      /api/rest/appliance?select=fc_ports(partner)
  • GET      /api/rest/appliance?select=sas_ports(partner)
  • GET      /api/rest/appliance?select=eth_ports(partner)

Beispiel:
Anstatt:
/api/rest/appliance?select=eth_ports(partner)

Beispiel für einen verschachtelten Parameterfehler:
Linux~$ curl -i -k -s -u 'admin:' -X GET "https:///api/rest/appliance?select=eth_ports(partner)"
HTTP/1.1 400 Bad Request
DELL-EMC-TOKEN: 8t7deLGkLuG8g+Hg2uzMw6B4p2KhQ5bay3qW05tPVMs=
Content-Type: application/json
content-length: 104

{"messages":[{"code":"0xE04040020008","severity":"Error","message_l10n":"Unable to parse passed url."}]}

Senden Sie:
/api/rest/appliance?select=eth_ports
/api/rest/eth_port?select=partner
 

Affected Products

PowerStore
Article Properties
Article Number: 000131120
Article Type: Solution
Last Modified: 07 Jun 2023
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.