fake-gcs-server
fake-gcs-server copied to clipboard
Batch delete operations failed for `unable to process request`
When making a batch request to fake-gce-server, it responds with "unable to process request" for every part.
--349bb61a455a0215f770b8fbec1504b2ed685bbeb93f6beca85a9dfbbe8e\r\n
Content-Id: 0\r\n
Content-Type: application/http\r\n
\r\n
HTTP/1.1 400 Bad Request\r\n
Connection: close\r\n
Content-Type: text/plain; charset=utf-8\r\n
X-Content-Type-Options: nosniff\r\n\
r\n
unable to process request\n
\r\n
--349bb61a455a0215f770b8fbec1504b2ed685bbeb93f6beca85a9dfbbe8e\r\n
- The same request works fine on real gcs service.
- I attempted to set the
log-level
todebug
, but couldn't find any additional meaningful information. - Version
1.4.7
Thanks for reporting! Would you be able to share a snippet reproducing the issue?
When using fake-gcs-server with Docker,
docker run -d --name fake-gcs-server -p 4443:4443 -v ${PWD}/data:/data fsouza/fake-gcs-server -scheme http
and sending an HTTP request (sent by the opendal project) using the GCS batch API like this,
POST /batch/storage/v1 HTTP/1.1
content-type: multipart/mixed; boundary=opendal-ade6d51e-686a-48a8-925b-80f3a77b16a4
content-length: 424
accept: */*
host: 127.0.0.1:4443
--opendal-ade6d51e-686a-48a8-925b-80f3a77b16a4
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: 0
DELETE /storage/v1/b/bucket_1/o/test_0.txt HTTP/1.1
--opendal-ade6d51e-686a-48a8-925b-80f3a77b16a4
Content-Type: application/http
Content-Transfer-Encoding: binary
Content-ID: 1
DELETE /storage/v1/b/bucket_1/o/test_1.txt HTTP/1.1
--opendal-ade6d51e-686a-48a8-925b-80f3a77b16a4--
it reproduces this issue.
HTTP/1.1 200 OK
Content-Type: multipart/mixed; boundary=e1d04395bf35360ac8c8839f19c2f89d85124b7c2b97985186c851a3f276
Date: Tue, 16 Jan 2024 06:31:25 GMT
Content-Length: 590
--e1d04395bf35360ac8c8839f19c2f89d85124b7c2b97985186c851a3f276
Content-Id: 0
Content-Type: application/http
HTTP/1.1 400 Bad Request
Connection: close
Content-Type: text/plain; charset=utf-8
X-Content-Type-Options: nosniff
unable to process request
--e1d04395bf35360ac8c8839f19c2f89d85124b7c2b97985186c851a3f276
Content-Id: 1
Content-Type: application/http
HTTP/1.1 400 Bad Request
Connection: close
Content-Type: text/plain; charset=utf-8
X-Content-Type-Options: nosniff
unable to process request
--e1d04395bf35360ac8c8839f19c2f89d85124b7c2b97985186c851a3f276--