Bug #12780
closedrgw: segments are read during HEAD on Swift DLO
0%
Description
$ curl -i "$publicURL/Disc Images2/HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO" -X HEAD -H "X-Auth-Token: $token"
HTTP/1.1 200
Server: nginx/1.4.6 (Ubuntu)
Date: Tue, 25 Aug 2015 13:00:48 GMT
Content-Length: 16
Connection: keep-alive
Accept-Ranges: bytes
Last-Modified: Tue, 25 Aug 2015 11:36:15 GMT
etag: 822ddd31952e982f01217843b35e4378
X-Object-Manifest: Disc Images2_segments/HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/
In radosgw's output we may see:
2015-08-25 15:00:48.913861 7f7f4cf81700 1 ====== starting new request req=0x7f7f9c00f6a0 =====
...
2015-08-25 15:00:48.967230 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000000 ofs=0 end=2
...
2015-08-25 15:00:48.969922 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000001 ofs=0 end=2
...
2015-08-25 15:00:48.972282 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000002 ofs=0 end=2
...
2015-08-25 15:00:48.975095 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000003 ofs=0 end=2
...
2015-08-25 15:00:48.978044 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000004 ofs=0 end=2
...
2015-08-25 15:00:48.981279 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000005 ofs=0 end=2
...
2015-08-25 15:00:48.984271 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000006 ofs=0 end=2
...
2015-08-25 15:00:48.990906 7f7f4cf81700 20 reading obj=Disc Images2_segments:HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO/1439995506.197590/16/2/00000007 ofs=0 end=2
...
2015-08-25 15:00:48.994803 7f7f4cf81700 2 req 1:0.080942:swift:HEAD /swift/v1/Disc Images2/HP Pavilion dv7-6c95dx Recovery Disc (1 of 3).ISO:get_obj:http status=200
2015-08-25 15:00:48.994859 7f7f4cf81700 1 ====== req done req=0x7f7f9c00f6a0 http_status=200 ======
Reading all DLO's segments isn't necessary to calculate Content-Length. Total size is known much earlier: https://github.com/ceph/ceph/blob/master/src/rgw/rgw_op.cc#L851.
Updated by Yehuda Sadeh over 8 years ago
- Status changed from New to Pending Backport
- Backport set to hammer
Updated by Loïc Dachary over 8 years ago
- Status changed from Pending Backport to Resolved