ECS: PUT- eller GET- eller DELETE-anmodninger på bucket med livscykluspolitik (uden præfiks) returnerer 500 fejl
Resumen: Det er ikke muligt at skrive eller læse eller slette objekter i bucket efter oprettelse af livscykluspolitik uden foretrukne ()
Este artículo se aplica a
Este artículo no se aplica a
Este artículo no está vinculado a ningún producto específico.
No se identifican todas las versiones del producto en este artículo.
Síntomas
Efter oprettelse af livscykluspolitik (uden præfiks) på bucket'en, returnerer HENT eller SLET objektanmodninger 500 intern fejl. Listefilsæt fungerer fint.
Kontrol af eksisterende politik for objekt xxx med præfiks-null viser dette i dataheadsvc.log.
Kontrol af eksisterende politik for objekt xxx med præfiks-null viser dette i dataheadsvc.log.
2018-04-07T03:30:48,744 [qtp597531831-21452-0a20a979:162908dae63:2fef:17-s3-xx.xx.xx.xx] INFO ObjectExpirationUtil.java (line 33) Checking existing policy for object testfile1 with prefix null
2018-04-07T03:30:48,745 [qtp597531831-21452-0a20a979:162908dae63:2fef:17-s3-xx.xx.xx.xx] ERROR GeneralExceptionMapper.java (line 37) internal error
java.lang.NullPointerException
at java.lang.String.startsWith(String.java:1405)
at java.lang.String.startsWith(String.java:1434)
at com.emc.storageos.data.object.expiration.ObjectExpirationUtil.getObjectExpirationDetails(ObjectExpirationUtil.java:42)
at com.emc.storageos.data.object.RESTAccess.DataAccessLayer.getObjectInfo(DataAccessLayer.java:870)
at com.emc.storageos.data.api.service.impl.resource.s3.operation.S3ObjectOperations.getObject(S3ObjectOperations.java:926)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
... ...
2018-04-07T03:30:48,751 [qtp597531831-21452] INFO RequestLog.java (line 83) xx.xx.xx.xxx GET //xx.xx.xx.xx:9020/test/testfile1 HTTP/1.1 500 9 - 111
Causa
For AWS har hver regel element, som har et underordnede element: , er påkrævet XML-element, og er valgfri (gælder for alle objekter i buckets).
Til ECS understøtter vi kun filter og har ikke element designet i anmodnings-XML. er ikke påkrævet parameter, men en eller anden stedkode bruger præfiksværdien direkte (null point), som forårsager problemet her.
Til ECS understøtter vi kun filter og har ikke element designet i anmodnings-XML. er ikke påkrævet parameter, men en eller anden stedkode bruger præfiksværdien direkte (null point), som forårsager problemet her.
Resolución
Hvis du ser fejllogfilen som vist i feltet "Problem", skal du kontrollere, om livscyklussen er indstillet på bucket'en, og om der ikke er konfigureret nogen præfiks. Se ECS-dataadgangsvejledningen for yderligere reference til brug af s3curl.pl.
# ./s3curl.pl --id=test -- http://:9020//?lifecycle |xmllint --format -
# ./s3curl.pl --id=test -- http://:9020//?lifecycle |xmllint --format -
# ./s3curl.pl --id=test -- http://:9020//?lifecycle |xmllint --format -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 285 100 285 0 0 23538 0 --:--:-- --:--:-- --:--:-- 23750
Enabled
10
If you confirm that hit this issue, the workaround prior to 3.2 is to add in lifecycle.
This issue is fixed in 3.2.
Workaround:
1. Get current lifecycle setting and save to local file
# ./s3curl.pl --id=test -- http://:9020//?lifecycle -o lifecycle.xml
# ./s3curl.pl --id=test -- http://:9020//?lifecycle -o lifecycle.xml
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 268 100 268 0 0 11926 0 --:--:-- --:--:-- --:--:-- 12181
2. Modify the lifecycle.xml and add prefix
# vi lifecycle.xml
-->add this line
Enabled
10
3. Update lifecycle
# ./s3curl.pl --id=test --put=lifecycle.xml http://xx.xx.xx.xx:9020//?lifecycle --calculateContentMd5 --debug
# ./s3curl.pl --id=test --put=lifecycle.xml http://xx.xx.xx.xx:9020/fog-bbr-backup/?lifecycle --calculateContentMd5 --debug s3curl: Found the url: host=xx.xx.xx.xx; port=9020; uri=/fog-bbr-backup/; query=lifecycle; s3curl: replaced string: lifecycle s3curl: ordinary endpoint signing case s3curl: StringToSign='PUT\na4EIw7LnRPKpiAfSy/YHIQ==\n\nSat, 07 Apr 2018 05:11:32 +0000\n/fog-bbr-backup/?lifecycle' s3curl: exec curl -v -H 'Date: Sat, 07 Apr 2018 05:11:32 +0000' -H 'Authorization: AWS pcf-fog-sys:4NFcmpx/3i0FBoJsFUJSabAlmGI=' -L -H 'content-type: ' -H 'Content-MD5: a4EIw7LnRPKpiAfSy/YHIQ==' -T lifecycle.xml http://xx.xx.xx.xx:9020/fog-bbr-backup/?lifecycle * Hostname was NOT found in DNS cache * Trying xx.xx.xx.xx... * Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 9020 (#0) > PUT /fog-bbr-backup/?lifecycle HTTP/1.1 > User-Agent: curl/7.37.0 > Host: xx.xx.xx.xx:9020 > Accept: */* > Date: Sat, 07 Apr 2018 05:11:32 +0000 > Authorization: AWS pcf-fog-sys:4NFcmpx/3i0FBoJsFUJSabAlmGI= > Content-MD5: a4EIw7LnRPKpiAfSy/YHIQ== > Content-Length: 284 > Expect: 100-continue > < HTTP/1.1 100 Continue * We are completely uploaded and fine < HTTP/1.1 200 OK < Date: Sat, 07 Apr 2018 05:11:32 GMT * Server ViPR/1.0 is not blacklisted < Server: ViPR/1.0 < x-amz-request-id: 0a23a338:1628835dec8:5cb3:19 < x-amz-id-2: a52c5da7cb5555375cef4f9172b03532652afc6cf67528d42451b0a3a20aad4a < Content-Length: 0 < * Connection #0 to host xx.xx.xx.xx left intact 4. Confirm lifecycle is updated. # ./s3curl.pl --id=test -- http://xx.xx.xx.xx:9020//?lifecycle |xmllint --format -
# ./s3curl.pl --id=test -- http://xx.xx.xx.xx:9020/fog-bbr-backup/?lifecycle |xmllint --format -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 285 100 285 0 0 23538 0 --:--:-- --:--:-- --:--:-- 23750
Enabled
10
5. Retry read/write/delete.Productos afectados
ECS Appliance Hardware Gen1 U-SeriesProductos
ECS Appliance Hardware Gen1 U-Series, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption, Elastic Cloud StoragePropiedades del artículo
Número del artículo: 000057163
Tipo de artículo: Solution
Última modificación: 09 feb. 2023
Versión: 3
Encuentre respuestas a sus preguntas de otros usuarios de Dell
Servicios de soporte
Compruebe si el dispositivo está cubierto por los servicios de soporte.