initial code repo
[stor4nfv.git] / src / ceph / doc / changelog / v10.2.7.txt
1 commit 50e863e0f4bc8f4b9e31156de690d765af245185
2 Author: Jenkins Build Slave User <ceph-release-team@redhat.com>
3 Date:   Mon Apr 10 11:43:44 2017 +0000
4
5     10.2.7
6
7 commit a64d3e4b33e904aa6585464df8ffff6aafdec10c
8 Merge: c92640a 6c2a40a
9 Author: Ken Dreyer <kdreyer@redhat.com>
10 Date:   Fri Mar 31 10:27:07 2017 -0600
11
12     Merge pull request #14230 from linuxbox2/wip-jewel-expand-argv
13     
14     jewel: rgw_file: expand argv
15     
16     Reviewed-by: Casey Bodley <cbodley@redhat.com>
17
18 commit c92640a113843a491678c11319d2352f14486f17
19 Merge: 7c35658 fcc3ada
20 Author: Ken Dreyer <kdreyer@redhat.com>
21 Date:   Fri Mar 31 10:17:10 2017 -0600
22
23     Merge pull request #14233 from ktdreyer/wip-19421-jewel
24     
25     jewel: librbd: possible race in ExclusiveLock handle_peer_notification
26     
27     Reviewed-by: Jason Dillaman <dillaman@redhat.com>
28
29 commit 7c3565899af5f1f474d82d8802d15c6c216ea894
30 Merge: 12467f6 eedb9f7
31 Author: Ken Dreyer <kdreyer@redhat.com>
32 Date:   Fri Mar 31 10:16:48 2017 -0600
33
34     Merge pull request #14231 from linuxbox2/wip-jewel-fhcache
35     
36     jewel: rgw_fh: RGWFileHandle dtor must also cond-unlink from FHCache
37     
38     Reviewed-by: Casey Bodley <cbodley@redhat.com>
39
40 commit 12467f6c3f346072d81c444ed68eb206402d8c33
41 Merge: 2d2521c 78c8be7
42 Author: Ken Dreyer <kdreyer@redhat.com>
43 Date:   Fri Mar 31 10:09:14 2017 -0600
44
45     Merge pull request #14215 from mdw-at-linuxbox/wip-jewel-rgw-openssl-fix1
46     
47     rgw: fix openssl
48     
49     Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
50     Reviewed-by: Casey Bodley <cbodley@redhat.com>
51
52 commit 2d2521c0300000421740c611a5133c82d2e4d0f6
53 Merge: 0840cf8 7e4e290
54 Author: Ken Dreyer <kdreyer@redhat.com>
55 Date:   Fri Mar 31 10:07:48 2017 -0600
56
57     Merge pull request #14206 from linuxbox2/wip-gui-jewel
58     
59     jewel: rgw_file: various fixes
60     
61     Reviewed-by: Casey Bodley <cbodley@redhat.com>
62
63 commit 0840cf86214c793794c6f913b63cc67e0ab3fc94
64 Merge: 0bf6360 b24a8c2
65 Author: Ken Dreyer <kdreyer@redhat.com>
66 Date:   Fri Mar 31 10:07:03 2017 -0600
67
68     Merge pull request #14205 from linuxbox2/wip-dir-orphan-jewel
69     
70     jewel:  rgw_file: wip dir orphan
71     
72      Conflicts:
73         src/rgw/rgw_file.cc (whitespace, trivial resolution)
74     
75     Reviewed-by: Casey Bodley <cbodley@redhat.com>
76
77 commit 0bf636057ba853d1d1a777147014a740d5149b17
78 Merge: 83b5a7f fb85c68
79 Author: Ken Dreyer <kdreyer@redhat.com>
80 Date:   Fri Mar 31 10:05:40 2017 -0600
81
82     Merge pull request #14169 from linuxbox2/wip-18650-jewel
83     
84     jewel: rgw: rgw_file: FHCache residence check should be exhaustive
85     
86     Reviewed-by: Casey Bodley <cbodley@redhat.com>
87
88 commit 83b5a7f1c589546645e0f377d5d5f7b1f7363a59
89 Merge: 6a175f2 a969c44
90 Author: Ken Dreyer <kdreyer@redhat.com>
91 Date:   Fri Mar 31 10:02:58 2017 -0600
92
93     Merge pull request #13869 from smithfarm/wip-19161-jewel
94     
95     jewel: rgw: rgw_file: fix marker computation
96     
97     Reviewed-by: Casey Bodley <cbodley@redhat.com>
98
99 commit fb85c68dfbfcfb299cac3a7e6723067f216483ef
100 Author: Matt Benjamin <mbenjamin@redhat.com>
101 Date:   Tue Feb 28 15:49:06 2017 -0500
102
103     rgw_file:  use fh_hook::is_linked() to check residence
104     
105     Previously we assumed that !deleted handles were resident--there
106     is an observed case where a !deleted handle is !linked.  Since
107     we currently use safe_link mode, an is_linked() check is
108     available, and exhaustive.
109     
110     Fixes: http://tracker.ceph.com/issues/19111
111     
112     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
113     (cherry picked from commit c0aa515f8d8c57ec5ee09e3b60df3cac60453c40)
114
115 commit fcc3ada733bac74a642ccd0f1ed6301ad7318a30
116 Author: Mykola Golub <mgolub@mirantis.com>
117 Date:   Tue Mar 28 15:55:11 2017 +0200
118
119     jewel: librbd: possible race in ExclusiveLock handle_peer_notification
120     
121     This is a cherry-pick from kraken -- the master diverged after
122     ManagedLock refactoring and is not affected.
123     
124     Fix: http://tracker.ceph.com/issues/19368
125     Signed-off-by: Mykola Golub <mgolub@mirantis.com>
126     (cherry picked from commit df59d6d5f7deb586cf14a6ef6984e6847db08852)
127
128 commit eedb9f7d2d2a4047b473f23c5a6956c40a3da126
129 Author: Matt Benjamin <mbenjamin@redhat.com>
130 Date:   Tue Feb 28 20:24:12 2017 -0500
131
132     rgw_file: RGWFileHandle dtor must also cond-unlink from FHCache
133     
134     Formerly masked in part by the reclaim() action, direct-delete now
135     substitutes for reclaim() iff its LRU lane is over its high-water
136     mark, and in particular, like reclaim() the destructor is certain
137     to see handles still interned on the FHcache when nfs-ganesha is
138     recycling objects from its own LRU.
139     
140     Fixes: http://tracker.ceph.com/issues/19112
141     
142     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
143     (cherry picked from commit d51a3b1224ba62bb53c6c2c7751fcf7853c35a4b)
144
145 commit 6c2a40a800277ded302f3183ac6c68b01ca3ed41
146 Author: Matt Benjamin <mbenjamin@redhat.com>
147 Date:   Tue Jan 17 11:23:45 2017 -0500
148
149     rgw_file:  split last argv on ws, if provided
150     
151     This is intended to allow an "extra" unparsed argument string
152     containing various cmdline options to be passed as the last argument
153     in the argv array of librgw_create(), which nfs-ganesha is
154     expecting to happen.
155     
156     While at it, hook env_args() too.
157     
158     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
159     (cherry picked from commit fbc19e4effc736c98cc1cc283e5c7b131a0fa766)
160
161 commit d2ca03b391340c6944ba453b106f3e1c45b75f1d
162 Author: Matt Benjamin <mbenjamin@redhat.com>
163 Date:   Sun Feb 12 20:18:26 2017 -0500
164
165     rgw_file: fix hiwat behavior
166     
167     Removed logic to skip reclaim processing conditionally on hiwat,
168     this probably meant to be related to a lowat value, which does
169     not exist.
170     
171     Having exercised the hiwat reclaim behavior, noticed that the
172     path which moves unreachable objects to LRU, could and probably
173     should remove them altogether when q.size exceeds hiwat.  Now
174     the max unreachable float is lane hiwat, for all lanes.
175     
176     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
177     (cherry picked from commit b8791b2217e9ca87b2d17b51f283fa14bd68b581)
178     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
179
180 commit 166cb7f85c240eeaffc70968abf5352d9cd45bd9
181 Author: Matt Benjamin <mbenjamin@redhat.com>
182 Date:   Sun Feb 12 18:20:43 2017 -0500
183
184     rgw_file: refcnt bugfixes
185     
186     This change includes 3 related changes:
187     
188     1. add required lock flags for FHCache updates--this is a crash
189        bug under concurrent update/lookup
190     
191     2. omit to inc/dec refcnt on root filehandles in 2 places--the
192        root handle current is not on the lru list, so it's not
193        valid to do so
194     
195     3. based on observation of LRU behavior during creates/deletes,
196        update (cohort) LRU unref to move objects to LRU when their
197        refcount falls to SENTINEL_REFCNT--this cheaply primes the
198        current reclaim() mechanism, so very significanty improves
199        space use (e.g., after deletes) in the absence of scans
200        (which is common due to nfs-ganesha caching)
201     
202     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
203     (cherry picked from commit beaeff059375b44188160dbde8a81dd4f4f8c6eb)
204     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
205
206 commit 31a71be9c9f24e22cf7e6eb390d3b39811ee3577
207 Author: Matt Benjamin <mbenjamin@redhat.com>
208 Date:   Sat Feb 11 16:38:05 2017 -0500
209
210     rgw_file:  add refcount dout traces at debuglevel 17
211     
212     These are helpful for checking RGWFileHandle refcnt invariants.
213     
214     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
215     (cherry picked from commit 462034e17f919fb783ee33e2c9fa8089f93fd97d)
216     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
217
218 commit 1d6c72fe9a59561fb8f33889895b6708342b2856
219 Author: Matt Benjamin <mbenjamin@redhat.com>
220 Date:   Fri Feb 10 17:14:16 2017 -0500
221
222     rgw_file: add pretty-print for RGWFileHandle
223     
224     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
225     (cherry picked from commit ef330f385d3407af5f470b5093145f59cc4dcc79)
226     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
227
228 commit a969c449272ce88ddcbbd509432134f19520c8c3
229 Author: Matt Benjamin <mbenjamin@redhat.com>
230 Date:   Mon Feb 20 15:05:18 2017 -0500
231
232     rgw_file: fix marker computation
233     
234     Fixes: http://tracker.ceph.com/issues/19018
235     
236     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
237     (cherry picked from commit 4454765e7dd08535c50d24205858e18dba4b454c)
238
239 commit a70e83c90eb42439ba194ca197f507f972a18c3c
240 Author: Matt Benjamin <mbenjamin@redhat.com>
241 Date:   Sun Feb 19 20:34:31 2017 -0500
242
243     rgw_file: rgw_readdir can't list multi-segment dirs
244     
245     This issue has one root cause in librgw, namely that the marker
246     argument to these requests was incorrectly formatted (though the
247     marker cache was working as intended).
248     
249     Secondarily, for nfs-ganesha users, there is a compounding issue
250     that the RGW fsal was required by "temporary" convention to
251     populate the entire dirent cache for a directory on a single
252     readdir() invocation--the cache_inode/mdcache implementations
253     invariantly pass (before future 2.5 changesets, currently in
254     progress) a null pointer for the start cookie offset, intended
255     to convey this.
256     
257     Fixes: http://tracker.ceph.com/issues/18991
258     
259     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
260     (cherry picked from commit 2cd60ee9712291b906123aca1704288b18a9742b)
261
262 commit 209987e1c764cac7574bf0bb969e93fcf55b4361
263 Author: Matt Benjamin <mbenjamin@redhat.com>
264 Date:   Sun Feb 19 18:21:06 2017 -0500
265
266     rgw_file: allow setattr on placeholder directories
267     
268     When a POSIX path <bucket>/foo/ is known only as an implicit path
269     segment from other objects (e.g., <bucket>/foo/bar.txt), a case
270     that would usually arise from S3 upload of such an object, an
271     RGWFileHandle object representing "<bucket>/foo/" will be constructed
272     as needed, with no backing in RGW.
273     
274     This is by design, but subsequently, if a setattr is performed on
275     such a handle, we must be ready to create the object inline with
276     storing the attributes.
277     
278     Fixes: http://tracker.ceph.com/issues/18989
279     
280     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
281     (cherry picked from commit 55eec1c0a0e136736961423b7b6244d0f3693c1a)
282
283 commit 6a175f27961bd4f0fda8f94c200458f17865c9f9
284 Merge: d32ae21 f3face6
285 Author: Ken Dreyer <kdreyer@redhat.com>
286 Date:   Tue Mar 28 16:36:35 2017 -0600
287
288     Merge pull request #14140 from smithfarm/wip-19341-jewel
289     
290     jewel: 'period update' does not remove short_zone_ids of deleted zones
291     
292     Reviewed-by: Casey Bodley <cbodley@redhat.com>
293
294 commit d32ae21128d664370f7d07ed14427b75e10da7f8
295 Merge: 4dfeed9 0be4e89
296 Author: Ken Dreyer <kdreyer@redhat.com>
297 Date:   Tue Mar 28 16:35:16 2017 -0600
298
299     Merge pull request #13886 from cbodley/wip-17786
300     
301     jewel: rgw: clear data_sync_cr if RGWDataSyncControlCR fails
302     
303     Reviewed-by: Nathan Cutler <ncutler@suse.com>
304
305 commit 4dfeed949655a5b5041f612b868225c234e86bba
306 Merge: d69c54a 1985662
307 Author: Ken Dreyer <kdreyer@redhat.com>
308 Date:   Tue Mar 28 16:34:57 2017 -0600
309
310     Merge pull request #13867 from smithfarm/wip-19159-jewel
311     
312     jewel: rgw: multisite: RGWMetaSyncShardControlCR gives up on EIO
313     
314     Reviewed-by: Casey Bodley <cbodley@redhat.com>
315
316 commit d69c54aca9dde3d64b56e5ee72f1cd29057a80c6
317 Merge: 0830135 dfaaec0
318 Author: Ken Dreyer <kdreyer@redhat.com>
319 Date:   Tue Mar 28 16:34:24 2017 -0600
320
321     Merge pull request #13858 from smithfarm/wip-19152-jewel
322     
323     jewel: rgw_file:  restore (corrected) fix for dir partial match (return of FLAG_EXACT_MATCH)
324     
325     Reviewed-by: Casey Bodley <cbodley@redhat.com>
326
327 commit 0830135f40ac37ac9027bece65b8aac64c2c7ec9
328 Merge: 4dd3a9f 97fed01
329 Author: Ken Dreyer <kdreyer@redhat.com>
330 Date:   Tue Mar 28 16:33:18 2017 -0600
331
332     Merge pull request #13848 from smithfarm/wip-19150-jewel
333     
334     jewel: rgw_file:  avoid interning .. in FHCache table and don't ref for them
335     
336     Reviewed-by: Casey Bodley <cbodley@redhat.com>
337
338 commit 4dd3a9f628053784cff2aa5849ab3c4cdb2acf4e
339 Merge: 5eeba9c d333add
340 Author: Ken Dreyer <kdreyer@redhat.com>
341 Date:   Tue Mar 28 16:29:30 2017 -0600
342
343     Merge pull request #13844 from smithfarm/wip-19148-jewel
344     
345     jewel: rgw: DUMPABLE flag is cleared by setuid preventing coredumps
346     
347     Reviewed-by: Casey Bodley <cbodley@redhat.com>
348
349 commit 5eeba9cb85e9111ef124acd36dccf77c6f00b3e4
350 Merge: ae632b0 f7ce5df
351 Author: Ken Dreyer <kdreyer@redhat.com>
352 Date:   Tue Mar 28 16:26:48 2017 -0600
353
354     Merge pull request #13823 from asheplyakov/19176-bp-jewel
355     
356     jewel: rgw: fix swift cannot disable object versioning with empty X-Versions-Location
357     
358     Reviewed-by: Casey Bodley <cbodley@redhat.com>
359
360 commit ae632b0da6cc90a993fcae31b56f97c834d15aa1
361 Merge: 874120f e8041f6
362 Author: Ken Dreyer <kdreyer@redhat.com>
363 Date:   Tue Mar 28 16:22:23 2017 -0600
364
365     Merge pull request #13778 from smithfarm/wip-18811-jewel
366     
367     jewel: librgw: RGWLibFS::setattr fails on directories
368     
369     Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
370
371 commit 874120f627f509c75b28d1be699812fce881f4bb
372 Merge: b0108ea e475bfa
373 Author: Ken Dreyer <kdreyer@redhat.com>
374 Date:   Tue Mar 28 16:21:44 2017 -0600
375
376     Merge pull request #13717 from asheplyakov/19115-bp-jewel
377     
378     jewel: rgw_file: ensure valid_s3_object_name for directories, too
379     
380     Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
381
382 commit b0108ea3bae1662e90c7fb9a911257f45193798c
383 Merge: 6518d70 db928d6
384 Author: Ken Dreyer <kdreyer@redhat.com>
385 Date:   Tue Mar 28 16:19:03 2017 -0600
386
387     Merge pull request #13596 from dillaman/wip-19038-jewel
388     
389     jewel: rbd-mirror: deleting a snapshot during sync can result in read errors
390     
391     Reviewed-by: Mykola Golub <mgolub@mirantis.com>
392
393 commit 6518d70b89686b9a4e8854a4c6290381fbcdd8c3
394 Merge: db50938 8941881
395 Author: Ken Dreyer <kdreyer@redhat.com>
396 Date:   Tue Mar 28 16:10:43 2017 -0600
397
398     Merge pull request #13583 from asheplyakov/jewel-bp-18901
399     
400     jewel: rgw_file:  interned RGWFileHandle objects need parent refs
401     
402     Reviewed-by: Casey Bodley <cbodley@redhat.com>
403
404 commit db50938013f0b1c1fe8a23247c91bbfc38d36a8c
405 Merge: 7536871 d44263f
406 Author: Ken Dreyer <kdreyer@redhat.com>
407 Date:   Tue Mar 28 16:02:43 2017 -0600
408
409     Merge pull request #13503 from linuxbox2/wip-jewel-10156
410     
411     jewel: rgw: make sending Content-Length in 204 and 304 controllable
412     
413     Reviewed-by: Casey Bodley <cbodley@redhat.com>
414     Reviewed-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
415
416 commit 75368712aafc51b062b674b263354cca2dd4b49a
417 Merge: 250071e 2f20328
418 Author: Ken Dreyer <kdreyer@redhat.com>
419 Date:   Tue Mar 28 15:53:49 2017 -0600
420
421     Merge pull request #13232 from ovh/wip-rework-recovery-priorities-jewel
422     
423     jewel: osd: Increase priority for inactive PGs backfill
424     
425     Reviewed-by: Sage Weil <sage@redhat.com>
426
427 commit 250071eb8dc744237acfed01df2cf04f2d88bc85
428 Merge: 6f57a77 9910eac
429 Author: Ken Dreyer <kdreyer@redhat.com>
430 Date:   Tue Mar 28 15:51:46 2017 -0600
431
432     Merge pull request #13219 from linuxbox2/jewel-rgw-multipart-upload-copy-4
433     
434     jewel: rgw: multipart uploads copy part support
435     
436     Reviewed-by: Casey Bodley <cbodley@redhat.com>
437
438 commit 6f57a775301edce7a1039a4aa4479bbd8883cbf6
439 Merge: 8c02e54 3fce77a
440 Author: Ken Dreyer <kdreyer@redhat.com>
441 Date:   Tue Mar 28 15:51:24 2017 -0600
442
443     Merge pull request #13108 from vumrao/wip-vumrao-jewel-18657
444     
445     jewel: osd: fix OSD network address in OSD heartbeat_check log message
446     
447     Reviewed-by: Josh Durgin <jdurgin@redhat.com>
448
449 commit b24a8c2f3890b6fcc60f3b52cba93d573b9d45a2
450 Author: Gui Hecheng <guihecheng@cmss.chinamobile.com>
451 Date:   Thu Mar 2 17:21:57 2017 +0800
452
453     rgw_file: posix style atime,ctime,mtime
454     
455     As an ganesha FSAL backend, rgw_file should properly maintain
456     the atime,ctime,mtime properly against operations such as:
457         (read,write) for file
458         (create,unlink,mkdir,rmdir,rename) for dir
459         (setattr) for file and dir
460     
461     Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
462     (cherry picked from commit ac25da2479b9be876cbdb820560ac46a6e2b17d7)
463
464 commit b6181833be925b7eb11afffff7f03486bdde2d25
465 Author: Matt Benjamin <mbenjamin@redhat.com>
466 Date:   Mon Feb 20 15:05:18 2017 -0500
467
468     rgw_file: fix marker computation
469     
470     Fixes: http://tracker.ceph.com/issues/19018
471     
472     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
473     (cherry picked from commit 4454765e7dd08535c50d24205858e18dba4b454c)
474     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
475
476 commit ed9308cba2af227991a50a9535df30cf9bb18a82
477 Author: Matt Benjamin <mbenjamin@redhat.com>
478 Date:   Sun Feb 19 20:34:31 2017 -0500
479
480     rgw_file: rgw_readdir can't list multi-segment dirs
481     
482     This issue has one root cause in librgw, namely that the marker
483     argument to these requests was incorrectly formatted (though the
484     marker cache was working as intended).
485     
486     Secondarily, for nfs-ganesha users, there is a compounding issue
487     that the RGW fsal was required by "temporary" convention to
488     populate the entire dirent cache for a directory on a single
489     readdir() invocation--the cache_inode/mdcache implementations
490     invariantly pass (before future 2.5 changesets, currently in
491     progress) a null pointer for the start cookie offset, intended
492     to convey this.
493     
494     Fixes: http://tracker.ceph.com/issues/18991
495     
496     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
497     (cherry picked from commit 2cd60ee9712291b906123aca1704288b18a9742b)
498     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
499
500 commit 26a38e2e1525714978feda018c03698d7af65129
501 Author: Matt Benjamin <mbenjamin@redhat.com>
502 Date:   Sun Feb 19 18:21:06 2017 -0500
503
504     rgw_file: allow setattr on placeholder directories
505     
506     When a POSIX path <bucket>/foo/ is known only as an implicit path
507     segment from other objects (e.g., <bucket>/foo/bar.txt), a case
508     that would usually arise from S3 upload of such an object, an
509     RGWFileHandle object representing "<bucket>/foo/" will be constructed
510     as needed, with no backing in RGW.
511     
512     This is by design, but subsequently, if a setattr is performed on
513     such a handle, we must be ready to create the object inline with
514     storing the attributes.
515     
516     Fixes: http://tracker.ceph.com/issues/18989
517     
518     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
519     (cherry picked from commit 55eec1c0a0e136736961423b7b6244d0f3693c1a)
520     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
521
522 commit 7e4e29038bd820e171d007360cf383c85f67879b
523 Author: Gui Hecheng <guihecheng@cmss.chinamobile.com>
524 Date:   Wed Mar 8 16:23:11 2017 +0800
525
526     rgw_file: fix reversed return value of getattr
527     
528     When ::getattr returns -ESTALE, rgw_getattr returns ESTALE,
529     which is a not expected postive.
530     
531     Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
532     (cherry picked from commit 39203cf872b8f4af86eb0e4a0f96dffd9cc92b41)
533
534 commit 3c02ee4fe9ae70f30328a7b015f5cac4a1804c67
535 Author: Gui Hecheng <guihecheng@cmss.chinamobile.com>
536 Date:   Mon Mar 20 10:53:46 2017 +0800
537
538     rgw_file: fix non-negative return code for open operation
539     
540     The nfs-ganesha expects a negative retcode for errors.
541     
542     Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
543     (cherry picked from commit b5f70ef7b066f9ff44770cc8a50ccadaa02f4691)
544
545 commit e9a4903c6e77caae6f161056e8aaa5ba10ae5ef2
546 Author: Gui Hecheng <guihecheng@cmss.chinamobile.com>
547 Date:   Wed Mar 15 15:01:05 2017 +0800
548
549     rgw_file: fix double unref on rgw_fh for rename
550     
551     Skip unref after unlink to fix the problem.
552     
553     Signed-off-by: Gui Hecheng <guihecheng@cmss.chinamobile.com>
554     (cherry picked from commit bff228734c73b536d2482e2e2fa4ad38b206ebff)
555
556 commit 9910eac98474930369d694b236c06ffd627fee04
557 Author: Yehuda Sadeh <yehuda@redhat.com>
558 Date:   Thu Sep 29 22:20:10 2016 -0700
559
560     rgw: multipart part copy, fix regression
561     
562     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
563     (cherry picked from commit 66fbe9384703c004c01783eb664f55895d310439)
564     
565     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
566
567 commit a3fdf0e246637ef4145b6b5ba1f4b114ec7ebc62
568 Author: Yehuda Sadeh <yehuda@redhat.com>
569 Date:   Thu Sep 29 17:44:08 2016 -0700
570
571     rgw: minor optimization
572     
573     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
574     (cherry picked from commit 4919dc9987c6376d3d4e143702c26417449524c5)
575     
576     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
577
578 commit 2161376baf413acfbf02df07e404d2918729bfcc
579 Author: Yehuda Sadeh <yehuda@redhat.com>
580 Date:   Thu Sep 29 17:43:00 2016 -0700
581
582     rgw: rgw_obj_key use adjustment in multipart copy part
583     
584     This fixes a case where objects start with double underscore.
585     
586     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
587     (cherry picked from commit 29fece3545cc1df404a25eec46706b16f893a5df)
588     
589     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
590
591 commit 135f84d860d10a2961f430708983113a87ddf899
592 Author: Yehuda Sadeh <yehuda@redhat.com>
593 Date:   Thu Sep 29 17:43:35 2016 -0700
594
595     rgw: multipart copy-part handle versionId
596     
597     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
598     (cherry picked from commit 53521efffb1cb92e5f5ce992d4127bf9498d7c33)
599     
600     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
601
602 commit 9ab65f5501fb59aac17cfdde57371b00af03d84b
603 Author: Yehuda Sadeh <yehuda@redhat.com>
604 Date:   Thu Sep 29 14:24:13 2016 -0700
605
606     rgw: multipart copy part minor parsing cleanup
607     
608     no need for range.size()
609     
610     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
611     (cherry picked from commit 6e9b824d5d4017239d58b4752ebc43bfad8f698d)
612     
613     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
614
615 commit 3eb9dc96ff8e655415500a3595a78cab80739826
616 Author: Yehuda Sadeh <yehuda@redhat.com>
617 Date:   Thu Sep 29 14:11:43 2016 -0700
618
619     rgw: multipart copy, check for empty bucket, improve logging
620     
621     also reduce log level for non critical user errors.
622     
623     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
624     (cherry picked from commit 2bcb3d286b230ef917d5ba96c8276a942f544689)
625     
626     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
627
628 commit 2588e95d9d422d3b33fd710de1f5884873465483
629 Author: Yehuda Sadeh <yehuda@redhat.com>
630 Date:   Thu Sep 29 14:07:14 2016 -0700
631
632     rgw: multipart copy part, chunked read
633     
634     Don't read the entire range from source object, read it in parts.
635     
636     Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
637     (cherry picked from commit 4049e47a0cfc1eef6efd502590b68ba7234589d3)
638     
639     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
640
641 commit bd118b556562176ce2390a935b3bb8c25a62d0c4
642 Author: Javier M. Mellid <jmunhoz@igalia.com>
643 Date:   Tue Jul 26 14:56:50 2016 +0200
644
645     rgw: doc: add multipart uploads copy part feature as supported
646     
647     Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
648     (cherry picked from commit 8a7ebeee2ff3f10ceb23b7fa43e43c3c450efe22)
649     
650     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
651
652 commit b56b719299becc38ec36d427a36b8c29f2416c08
653 Author: Javier M. Mellid <jmunhoz@igalia.com>
654 Date:   Tue Jul 26 14:53:44 2016 +0200
655
656     rgw: multipart uploads copy part support
657     
658     Add multipart uploads copy part feature.
659     
660     Fixes: http://tracker.ceph.com/issues/12790
661     
662     Signed-off-by: Javier M. Mellid <jmunhoz@igalia.com>
663     (cherry picked from commit 949480c2e9760855ed6a0501d364d5e766c8207d)
664     
665     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
666
667 commit d44263fc91da12ea0ad4fec0cd2877b36ddb9e9f
668 Author: Radoslaw Zarzynski <rzarzynski@mirantis.com>
669 Date:   Fri Feb 17 00:56:34 2017 +0100
670
671     rgw: make sending Content-Length in 204 and 304 controllable
672     
673     This commit introduces a new configurable "rgw print prohibited
674     content length" to let operator decide whether RadosGW complies
675     to RFC 7230 (a part of the HTTP specification) or violates it
676     but follows the Swift's behavior.
677     
678     Fixes: http://tracker.ceph.com/issues/16602
679     Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
680     (cherry picked from commit d8e3e64ec97a3c222a56bb6f510e5e23d7858615)
681     
682     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
683
684 commit f3face61351a61f3b71dfb8268a4b645c4d92da2
685 Author: Casey Bodley <cbodley@redhat.com>
686 Date:   Thu Mar 9 15:24:08 2017 -0500
687
688     rgw: clear old zone short ids on period update
689     
690     the short ids of old, removed zones were being kept in the period to
691     guard against hash collisions with new zones
692     
693     but for a hash collision to cause a wrong object to sync, that object
694     would have to be uploaded simultaneously to two different zones that had
695     the same short id
696     
697     to avoid this, we just have to prevent the period from containing two
698     colliding zones at the same time - we don't have to remember old zone
699     short ids forever
700     
701     Fixes: http://tracker.ceph.com/issues/15618
702     
703     Signed-off-by: Casey Bodley <cbodley@redhat.com>
704     (cherry picked from commit 9c45633c836c966ab1f75ea2b1ad3fa0a4886600)
705
706 commit 8c02e54a747644d24feb98dbc15a15cdd55d1afd
707 Merge: 9d222b9 952f34f
708 Author: David Zafman <dzafman@redhat.com>
709 Date:   Fri Mar 24 08:13:02 2017 -0700
710
711     Merge pull request #13146 from dzafman/wip-18502-jewel-zafman
712     
713     jewel: osd: Scrub improvements and other fixes
714     
715     Reviewed-by: Kefu Chai <kchai@redhat.com>
716
717 commit 9d222b943217a2ec022678e50b34766d231004ce
718 Merge: ce2e989 cb9fae5
719 Author: Nathan Cutler <presnypreklad@gmail.com>
720 Date:   Thu Mar 23 16:49:13 2017 +0100
721
722     Merge pull request #14100 from smithfarm/wip-18781
723     
724     Manually merge PR#13143 which was mistakenly merged to jewel-next
725     
726     Reviewed-by: Loic Dachary <ldachary@redhat.com>
727     Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
728
729 commit cb9fae56ebdfda28b0606ee89631deb60e5f7de7
730 Merge: ce2e989 ee3c67c
731 Author: Nathan Cutler <ncutler@suse.com>
732 Date:   Thu Mar 23 09:46:53 2017 +0100
733
734     Merge branch 'jewel-next' into jewel
735     
736     Branch "jewel-next" was merged to jewel on Dec 22 (5b402f8a7b), and then PR
737     https://github.com/ceph/ceph/pull/13143 merged to jewel-next much later (Feb
738     1st), and then jewel-next was never merged to jewel again before we tagged
739     v10.2.6.
740     
741     This merge brings in a single commit, i.e. the one from
742     https://github.com/ceph/ceph/pull/13143
743     
744     Reported-by: Ken Dreyer <kdreyer@redhat.com>
745     Signed-off-by: Nathan Cutler <ncutler@suse.com>
746
747 commit ce2e9897c08775cfbe318f637d61e07eb5433df5
748 Merge: 656b5b6 d0a0d2f
749 Author: Zack Cerza <zack@cerza.org>
750 Date:   Tue Mar 14 09:19:28 2017 -0600
751
752     Merge pull request #13952 from smithfarm/wip-fix-merge-error
753     
754     tests: fix merge error in rgw/singleton/all/radosgw-admin.yaml
755
756 commit 0be4e89419f2083d081ac784891e4653290cd530
757 Author: Casey Bodley <cbodley@redhat.com>
758 Date:   Tue Oct 11 15:21:42 2016 -0400
759
760     rgw: hold a reference on data_sync_cr over run()
761     
762     run() will drop its reference to data_sync_cr, so we need to hold a
763     reference until we can reacquire the lock
764     
765     Signed-off-by: Casey Bodley <cbodley@redhat.com>
766     (cherry picked from commit 4cf0d2a768e7402e71280ca16b47353ca2a68505)
767
768 commit 18ffdb7baf4aff1fd7f894af1054081f3ee61d28
769 Author: Casey Bodley <cbodley@redhat.com>
770 Date:   Tue Oct 11 15:19:37 2016 -0400
771
772     rgw: clear data_sync_cr if RGWDataSyncControlCR fails
773     
774     async notifications will still try to call wakeup() on RGWDataSyncControlCR
775     if it fails, leading to segfault
776     
777     Fixes: http://tracker.ceph.com/issues/17569
778     
779     Signed-off-by: Casey Bodley <cbodley@redhat.com>
780     (cherry picked from commit 5cc599b9bf2dde31de16a5b2831baf06851d69d5)
781     
782      Conflicts:
783         src/rgw/rgw_data_sync.cc: declaration of 'int r'
784
785 commit d0a0d2f4bf1dacf7c1f38b968be84a5e905554a8
786 Author: Nathan Cutler <ncutler@suse.com>
787 Date:   Tue Mar 14 01:26:23 2017 +0100
788
789     tests: fix merge error in rgw/singleton/all/radosgw-admin.yaml
790     
791     Introduced by 94d5888c
792     
793     Reported-by: Robin H. Johnson <robin.johnson@dreamhost.com>
794     Signed-off-by: Nathan Cutler <ncutler@suse.com>
795
796 commit 19856624cd5ea8cb82bc5b46e062beb39674bd34
797 Author: Casey Bodley <cbodley@redhat.com>
798 Date:   Mon Feb 20 16:00:01 2017 -0500
799
800     rgw: RGWMetaSyncShardControlCR retries with backoff on all error codes
801     
802     RGWBackoffControlCR only treats EBUSY and EAGAIN as 'temporary' error
803     codes, with all other errors being fatal when exit_on_error is set
804     
805     to RGWMetaSyncShardControlCR, a 'fatal' error means that no further sync
806     is possible on that shard until the gateway restarts
807     
808     this changes RGWMetaSyncShardControlCR to set exit_on_error to false, so
809     that it will continue to retry with backoff no matter what error code it
810     gets
811     
812     Fixes: http://tracker.ceph.com/issues/19019
813     
814     Signed-off-by: Casey Bodley <cbodley@redhat.com>
815     (cherry picked from commit 3e4059557fd6cad5d31014327f60832b36d04a6c)
816
817 commit dfaaec0446c3db458bffe1d725518ab4f7cc2fa8
818 Author: Matt Benjamin <mbenjamin@redhat.com>
819 Date:   Thu Feb 23 10:21:38 2017 -0500
820
821     rgw_file:  return of RGWFileHandle::FLAG_EXACT_MATCH
822     
823     Allow callers of rgw_lookup() on objects attested in an
824     rgw_readdir() callback the ability to bypass exact match in
825     RGWLibFS::stat_leaf() case 2, but restore exact match enforcement
826     for general lookups.
827     
828     This preserves required common_prefix namespace behavior, but
829     prevents clients from eerily permitting things like "cd sara0" via
830     partial name match on "sara01."
831     
832     Fixes: http://tracker.ceph.com/issues/19059
833     
834     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
835     (cherry picked from commit 70ef7d45e0abf2661bd4e23161d4e70cf5178079)
836
837 commit 9b3784d924112d9ba42b2088d5fb2656ef74fadc
838 Author: Matt Benjamin <mbenjamin@redhat.com>
839 Date:   Sun Feb 19 17:43:17 2017 -0500
840
841     rgw_file: invalid use of RGWFileHandle::FLAG_EXACT_MATCH
842     
843     The change which introduced this flag also caused it to be
844     given as the flags argument to RGWLibFS::stat_leaf() when called
845     from rgw_lookup().
846     
847     This was incorrect:  in particular, when a directory is known only
848     as a common prefix of other objects, the AWS namespace mapping
849     convention requires lookup("foo") to match a non-materialized
850     instance of "foo/" (case 2 in RGWLibFS::stat_leaf's stat loop).
851     
852     Fixes: http://tracker.ceph.com/issues/18992
853     
854     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
855     (cherry picked from commit e31e9eb980f958640150e8d7f17de1b9e5478b1e)
856
857 commit 7761376c92eb38a2dd3d19f0b3d81895a4b1167c
858 Author: Matt Benjamin <mbenjamin@redhat.com>
859 Date:   Wed Feb 22 14:57:59 2017 -0500
860
861     rgw_file: rgw_lookup: don't ref for "/" or ".."
862     
863     These refs won't be returned by nfs-ganesha, and are sufficiently
864     magical that other consumers should be persuaded to understand
865     their specialness.
866     
867     Fixes: http://tracker.ceph.com/issues/19060
868     
869     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
870     (cherry picked from commit dea8d1ee373399a21851690a9753388b659b8ede)
871
872 commit 97fed013f66a89c404bac5145080e5d556ff5c42
873 Author: Matt Benjamin <mbenjamin@redhat.com>
874 Date:   Wed Feb 22 10:24:29 2017 -0500
875
876     rgw_file: avoid stranding invalid-name bucket handles in fhcache
877     
878     To avoid a string copy in the common mkdir path, handles for
879     proposed buckets currently are staged in the handle table, before
880     being rejected.  They need to be destaged, not just marked deleted
881     (because deleted objects are now assumed not to be linked, as of
882     beaeff059375b44188160dbde8a81dd4f4f8c6eb).
883     
884     This triggered an unhandled Boost assert when deleting staged
885     handles, as current safe_link mode requires first removing from
886     the FHCache.
887     
888     Fixes: http://tracker.ceph.com/issues/19036
889     
890     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
891     (cherry picked from commit 6cde812c92e5bba9f85fbf8486ebe69b55952370)
892
893 commit d333addb71a0a92fbac5a7b922dbd69fc9e0604e
894 Author: Brad Hubbard <bhubbard@redhat.com>
895 Date:   Mon Feb 27 13:06:59 2017 +1000
896
897     rgw: set dumpable flag after setuid post ff0e521
898     
899     ff0e521 resolved the issue for the other daemons but not for rgw since
900     it calls setuid (via civetweb) after the new code sets PR_SET_DUMPABLE.
901     Add another prctl call before wait_shutdown.
902     
903     Fixes: http://tracker.ceph.com/issues/19089
904     
905     Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
906     (cherry picked from commit bc458d39630b599e0e1ca9fe25ad7455fcffdd10)
907
908 commit f7ce5df4064e5538156cb44f9525d7552a0dd098
909 Author: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
910 Date:   Wed Feb 8 15:07:43 2017 +0800
911
912     rgw: fix swift cannot disable object versioning with empty X-Versions-Location
913     
914     we should be able to disable object verioning by removing its X-Versions-Location
915     metadata header by sending an empty key value. this description can be found at
916     No.8 in http://docs.openstack.org/user-guide/cli-swift-set-object-versions.html.
917     
918     Fixes: http://tracker.ceph.com/issues/18852
919     Signed-off-by: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
920     (cherry picked from commit 17c5a0edd2227703cec867f0f588d4eae36dfe1c)
921
922 commit 2f2032814189a4ecbf8dc01b59bebfae8ab3f524
923 Author: BartÅ‚omiej ÅšwiÄ™cki <bartlomiej.swiecki@corp.ovh.com>
924 Date:   Fri Dec 2 16:54:46 2016 +0100
925
926     osd: Increase priority for inactive PGs backfill
927     
928     This change does prioritize backfill of PGs which don't
929     have min_size active copies. Such PGs would cause IO stalls
930     for clients and would increase throttlers usage.
931     
932     This change also fixes few subtlle out-of-bounds bugs.
933     
934     Signed-off-by: BartÅ‚omiej ÅšwiÄ™cki <bartlomiej.swiecki@corp.ovh.com>
935     (cherry picked from commit 6a76adcdb1f92c136841d960aa7cd4e5b94addec)
936     
937     Conflicts:
938         PendingReleaseNotes (removed version number, merged conflicts)
939
940 commit e8041f627c6a05a59dba29819ed610ea0896f4dd
941 Author: Matt Benjamin <mbenjamin@redhat.com>
942 Date:   Fri Feb 3 13:44:45 2017 -0500
943
944     rgw_file:  fix RGWLibFS::setattr for directory objects
945     
946     Fixes:  http://tracker.ceph.com/issues/18808
947     
948     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
949     (cherry picked from commit 4ad5a9226852d6d564baf2e63278ed6c4c185ecb)
950
951 commit e475bfaf7d3a1b0e54172083a92546560219665a
952 Author: Matt Benjamin <mbenjamin@redhat.com>
953 Date:   Thu Feb 23 16:02:07 2017 -0500
954
955     rgw_file: ensure valid_s3_object_name for directories, too
956     
957     The logic in RGWLibFS::mkdir() validated bucket names, but not
958     object names (though RGWLibFS::create() did so).
959     
960     The negative side effect of this was not creating illegal objects
961     (we won't), but in a) failing with -EIO and b) more importantly,
962     not removing up the proposed object from FHCache, which produced a
963     boost assert when recycled.
964     
965     Fixes: http://tracker.ceph.com/issues/19066
966     
967     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
968     (cherry picked from commit eb1cd3b30c0504385f05bf2d2dd5e2251b7efed7)
969
970 commit 78c8be7a0df3d1c669f8a2a8fd7a5676d0823209
971 Author: Marcus Watts <mdw@linuxbox.com>
972 Date:   Thu Feb 23 02:30:52 2017 -0500
973
974     rgw/openssl fix: xenial autoconf logic problem: gcc/ld got too smart...
975     
976     On xenial, cc -o foo -lssl -lcrypto doesn't always
977     record libssl.so libcrypto.so as runtime library dependencies.
978     It is necessary to actually *use* a function from the library before
979     it gets recorded.  The ld(1) options "--as-needed" and "no-as-needed"
980     control this.  Evidently the default has changed in xenial.
981     That caused my smart "soname" detecting logic for openssl to
982     stop working.  To make it work, the test program has to
983     actually reference routines or variables inside the library.
984     
985     This is a quick fix for xenial / autoconf.  There needs to be
986     a better fix for cmake and master.
987     
988     Signed-off-by: Marcus Watts <mwatts@redhat.com>
989
990 commit db928d6b3f983b3a1ccc07440fcd3680700a1188
991 Author: Jason Dillaman <dillaman@redhat.com>
992 Date:   Tue Feb 21 15:33:01 2017 -0500
993
994     rbd-mirror: retry object copy after -ENOENT error
995     
996     Fixes: http://tracker.ceph.com/issues/18990
997     Signed-off-by: Jason Dillaman <dillaman@redhat.com>
998     (cherry picked from commit b4f36d5dc3f4f3cbb23f61cbb945b222248a50df)
999     
1000     Conflicts:
1001         src/test/librados_test_stub/MockTestMemIoCtxImpl.h: sparse reads not supported
1002         src/test/rbd_mirror/image_sync/test_mock_ObjectCopyRequest.cc: sparse reads not supported
1003
1004 commit a643fa80e03b41edcc720ff77b69ebaf24a23f3e
1005 Author: Jason Dillaman <dillaman@redhat.com>
1006 Date:   Tue Feb 21 13:09:39 2017 -0500
1007
1008     rbd-mirror: object copy should always reference valid snapshots
1009     
1010     If a remote snapshot is deleted while an image sync is in-progress,
1011     associate the read request against the most recent, valid remote
1012     snapshot for a given snapshot object clone.
1013     
1014     Signed-off-by: Jason Dillaman <dillaman@redhat.com>
1015     (cherry picked from commit 9a91efc3047963364944f8be91cee8e8f6afc49a)
1016
1017 commit 37bbc95d56f73e4ec9c6e13ddbae199b14b104b4
1018 Author: Jason Dillaman <dillaman@redhat.com>
1019 Date:   Tue Feb 21 11:52:00 2017 -0500
1020
1021     rbd-mirror: replace complex object op tuple with struct
1022     
1023     Signed-off-by: Jason Dillaman <dillaman@redhat.com>
1024     (cherry picked from commit 0c181527c0e151784a0f7c466aaa70b0772f91b1)
1025     
1026     Conflicts:
1027         src/tools/rbd_mirror/image_sync/ObjectCopyRequest.cc: sparse reads not supported
1028         src/tools/rbd_mirror/image_sync/ObjectCopyRequest.h: sparse reads not supported
1029
1030 commit 8941881e8986af0b2871c15d188d94d49e95dc02
1031 Author: Matt Benjamin <mbenjamin@redhat.com>
1032 Date:   Fri Dec 30 23:30:16 2016 -0500
1033
1034     rgw_file:  interned RGWFileHandle objects need parent refs
1035     
1036     RGW NFS fhcache/RGWFileHandle operators assume existence of the
1037     full chain of parents from any object to the its fs_root--this is
1038     a consequence of the weakly-connected namespace design goal, and
1039     not a defect.
1040     
1041     This change ensures the invariant by taking a parent ref when
1042     objects are interned (when a parent ref is guaranteed).  Parent
1043     refs are returned when objects are destroyed--essentially by the
1044     invariant, such a ref must exist.
1045     
1046     The extra ref is omitted when parent->is_root(), as that node is
1047     not in the LRU cache.
1048     
1049     Fixes: http://tracker.ceph.com/issues/18650
1050     
1051     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
1052     (cherry picked from commit 0e5299f3f43e633a5d8a9360893b4b11f6217d81)
1053
1054 commit 952f34f39cdd0438e4a4fb369ea8ca20b26488a8
1055 Author: David Zafman <dzafman@redhat.com>
1056 Date:   Mon Dec 12 15:53:25 2016 -0800
1057
1058     test: Update for new error message when doing scrub with deep-scrub errors
1059     
1060     Signed-off-by: David Zafman <dzafman@redhat.com>
1061     (cherry picked from commit 85e0774a7dded4aa6c67f237416041e25a7680bc)
1062
1063 commit b655b98e48989ae954dc150fcb3d8976978cd90d
1064 Author: David Zafman <dzafman@redhat.com>
1065 Date:   Fri Dec 9 12:14:06 2016 -0800
1066
1067     osd: Add "trigger_scrub" admin socket command
1068     
1069     This allows testing to fake a schedule scrub (must_scrub not set)
1070     
1071     Signed-off-by: David Zafman <dzafman@redhat.com>
1072     (cherry picked from commit c8dc945260ee2ee841aca00fbc802d41036033d6)
1073
1074 commit 94c958d2c9570e55305384ac86185e328746d2ff
1075 Author: David Zafman <dzafman@redhat.com>
1076 Date:   Thu Dec 8 23:00:13 2016 -0800
1077
1078     test: Add test for keeping deep-scrub information
1079     
1080     Signed-off-by: David Zafman <dzafman@redhat.com>
1081     (cherry picked from commit 64a7012e986ec88994c073b738fd08e8958395c3)
1082
1083 commit 42eb24f18d5114410bd2a3e84e9219584d9e165e
1084 Author: David Zafman <dzafman@redhat.com>
1085 Date:   Thu Dec 1 16:39:42 2016 -0800
1086
1087     osd: When deep-scrub errors present upgrade regular scrubs
1088     
1089     Previously, if a weekly deep-scrub found errors the next daily scrub
1090     would cause the deep-scrub information to be removed.
1091     
1092     Signed-off-by: David Zafman <dzafman@redhat.com>
1093     (cherry picked from commit 532a759dca466181f37a329f86045c34f1a2506f)
1094
1095 commit 76a457aa7c411dc5ed22f171954b8ed3c4661845
1096 Author: David Zafman <dzafman@redhat.com>
1097 Date:   Wed Oct 19 17:10:29 2016 -0700
1098
1099     tasks/scrub_test.py: Make test deterministic by updating digests
1100     
1101     ceph_test_rados: Get coverage of digest updates in deep-scrub/repair
1102     
1103     Signed-off-by: David Zafman <dzafman@redhat.com>
1104     (cherry picked from commit e000ab2f46b7b98a223176a2a25bb7195e601af6)
1105
1106 commit bd1f1983129d6e1787b8b5eb4884c5e908f7b274
1107 Author: David Zafman <dzafman@redhat.com>
1108 Date:   Wed Oct 19 17:10:07 2016 -0700
1109
1110     repair_test, scrub_test: Fix whitelists for scrub changes
1111     
1112     Signed-off-by: David Zafman <dzafman@redhat.com>
1113     (cherry picked from commit 5fe8522df47f56842d227e08b2912623504afe24)
1114
1115 commit 28106f06404407df7d05b35f9f570a80e785e635
1116 Author: David Zafman <dzafman@redhat.com>
1117 Date:   Wed Aug 31 12:02:31 2016 -0700
1118
1119     scrub_test: Fix for list-inconsistent-obj output changes
1120     
1121     Signed-off-by: David Zafman <dzafman@redhat.com>
1122     (cherry picked from commit 5ae0f5c75a8236d4a026f9ddcb5ff59964d90579)
1123
1124 commit abcefc1395f76e5b05a988b970457a7f6dac6e8e
1125 Author: David Zafman <dzafman@redhat.com>
1126 Date:   Tue Aug 30 12:11:44 2016 -0700
1127
1128     doc, test: Add schemas for list-inconsistent-* rados command output
1129     
1130     If jsonschema cmd is available use it to test output against schema
1131     
1132     Signed-off-by: David Zafman <dzafman@redhat.com>
1133     (cherry picked from commit eb73dd473600fbbb45fad00194f7c46b565d6b81)
1134
1135 commit 2fa2b64676555a91883a5aabb4e4237124308629
1136 Author: David Zafman <dzafman@redhat.com>
1137 Date:   Tue Aug 30 12:22:55 2016 -0700
1138
1139     test: Update testing for new list-inconsistent-obj output
1140     
1141     Signed-off-by: David Zafman <dzafman@redhat.com>
1142     (cherry picked from commit b7bacd219b000869b9c93e21edba4f8a3ace60d9)
1143     
1144     Adapted for difference in Jewel object_info
1145
1146 commit 304f697ff1106695188b572e0da2415437040a6c
1147 Author: David Zafman <dzafman@redhat.com>
1148 Date:   Tue Aug 30 12:22:29 2016 -0700
1149
1150     rados, osd: Improve attrs output of list-inconsistent-obj
1151     
1152     Persist the user_version and shard id of scrubbed obj
1153     Rados command dump inconsistent obj's version and shard-id
1154         so they can be passed to repair command
1155     Rados list-inconsistent-obj output of attrs
1156         Make attrs an array since there are more than one
1157         Use base64 encode for values with non-printable chars
1158         Add indication if base64 encoding used
1159     Add checking for ss_attr_missing and ss_attr_corrupted
1160         Rename attr errors to attr_key_mismatch and attr_value_mismatch
1161     Add missing size_mismatch_oi scrub checking
1162     For erasure coded pools add ec_size_error and ec_hash_error not just read_error
1163     Use oi_attr_missing and oi_attr_corrupted just like list-inconsistent-snap does
1164     Pick an object info based on version and use that to find specific shards in error
1165         Check for object info inconsistency which should be rare
1166     Make all errors based on comparing shards to each other object errors
1167         We don't want give the impression that we've picked the correct one
1168     
1169     Signed-off-by: Kefu Chai <kchai@redhat.com>
1170     Signed-off-by: David Zafman <dzafman@redhat.com>
1171     (cherry picked from commit df3ff6dafeadb3822b35c424a890db9a14d7f60f)
1172
1173 commit ea52f527e530b111b1bb26d10824c0230d662c4a
1174 Author: David Zafman <dzafman@redhat.com>
1175 Date:   Thu Sep 1 14:45:01 2016 -0700
1176
1177     osd: Fix logging to help with diagnostics
1178     
1179     These messages were not outputing the intended information
1180     
1181     Signed-off-by: David Zafman <dzafman@redhat.com>
1182     (cherry picked from commit b39001ec6ff0996860bcb5a3578bc2c66355c781)
1183
1184 commit 5e8f8a2288aa1a9f1de86d3f7d0f9c66c795113e
1185 Author: David Zafman <dzafman@redhat.com>
1186 Date:   Tue Jun 21 18:05:25 2016 -0700
1187
1188     test: Fix use of wait_for_clean()
1189     
1190     Signed-off-by: David Zafman <dzafman@redhat.com>
1191     (cherry picked from commit d0503a52d0fe5505bdb38dfd613c03a20500c05d)
1192
1193 commit 2230e6adc66ca3e5dbe81aecccdb4a435e93e256
1194 Author: David Zafman <dzafman@redhat.com>
1195 Date:   Tue Aug 30 10:56:06 2016 -0700
1196
1197     common: Change cleanbin() to use base64 encoding, update ceph-objectstore-tool
1198     
1199     Signed-off-by: David Zafman <dzafman@redhat.com>
1200     (cherry picked from commit 92e982c71995b863466d83671468f84761cb1793)
1201
1202 commit 83ea077ee560d31a5c302a62b55451a2571fda8d
1203 Author: David Zafman <dzafman@redhat.com>
1204 Date:   Tue Aug 30 11:05:16 2016 -0700
1205
1206     common: Move cleanbin() function to common/util.cc
1207     
1208     Signed-off-by: David Zafman <dzafman@redhat.com>
1209     (cherry picked from commit 5c79074ffaee34b2956d9dfc67b1eff9f39b47f3)
1210     
1211     Conflicts:
1212         src/tools/CMakeLists.txt (changes goes in src/CMakeLists.txt)
1213
1214 commit ba84ca9fa391d963d1d4e46fbf27ce3dbff397be
1215 Author: David Zafman <dzafman@redhat.com>
1216 Date:   Wed Jun 8 09:48:00 2016 -0700
1217
1218     test: Add test support for deep-scrub
1219     
1220     Signed-off-by: David Zafman <dzafman@redhat.com>
1221     (cherry picked from commit 907e79e2b77835d1aca9e8ba2fae5fa2fd437e5a)
1222
1223 commit 6a421d19d0be4d59beed5c69bb0aa4477d65a14e
1224 Author: David Zafman <dzafman@redhat.com>
1225 Date:   Sat Jun 18 17:58:36 2016 -0700
1226
1227     common: Fix indentation
1228     
1229     Signed-off-by: David Zafman <dzafman@redhat.com>
1230     (cherry picked from commit a74418a29e4e469117fc0c4edd80f78b62944c98)
1231
1232 commit c7c3e070336dc898460d4338b4d78b8963467c8a
1233 Author: David Zafman <dzafman@redhat.com>
1234 Date:   Fri Aug 12 12:06:31 2016 -0700
1235
1236     osd: Handle corrupt attributes in get_object_context()
1237     
1238     Signed-off-by: David Zafman <dzafman@redhat.com>
1239     (cherry picked from commit 30f8b0d6593718dd10bcf6ff459c95b4bb68c05c)
1240
1241 commit 8006ba7e86ebb8201a040c427cc95197901064be
1242 Author: Kefu Chai <kchai@redhat.com>
1243 Date:   Fri Nov 11 21:37:50 2016 +0800
1244
1245     ReplicatedPG::failed_push: release read lock on failure
1246     
1247     and requeue the blocked ops.
1248     
1249     Fixes: http://tracker.ceph.com/issues/17857
1250     Signed-off-by: Kefu Chai <kchai@redhat.com>
1251     (cherry picked from commit b3224a18f6acc7ed54c2162b140a33b6146a16be)
1252
1253 commit 5ca69d57dbe2ee7acc64d28ca35bb390bf463199
1254 Author: David Zafman <dzafman@redhat.com>
1255 Date:   Fri Oct 14 16:17:55 2016 -0700
1256
1257     test.sh: Make check for flags more robust
1258     
1259     Low space broke test, saw "flags nearfull,pauserd,pausewr...."
1260     
1261     Signed-off-by: David Zafman <dzafman@redhat.com>
1262     (cherry picked from commit b4c080b1b4378d659c1ca8a17811cd6f84595166)
1263
1264 commit 1be38e5ebd2d01d5d527b05e64b026df955ffe69
1265 Author: David Zafman <dzafman@redhat.com>
1266 Date:   Thu Jul 21 17:36:34 2016 -0700
1267
1268     test: Remove extra objectstore_tool call which causes a recovery
1269     
1270     Caused by: 70e000a9a42c50eda48f5d3b9e432ffc3a70f75b
1271     
1272     Signed-off-by: David Zafman <dzafman@redhat.com>
1273     (cherry picked from commit 6904529d1b53993304de2927500937ba0d493e9e)
1274
1275 commit 026f181e72f2e09e769a8821dfe2c99f6213e6a3
1276 Author: David Zafman <dzafman@redhat.com>
1277 Date:   Tue Jun 14 20:09:15 2016 -0700
1278
1279     test: Handle object removals in a non-racey way
1280     
1281     Signed-off-by: David Zafman <dzafman@redhat.com>
1282     (cherry picked from commit bfe3ebd94fdc1ef36ebe6e8f9d38acea322eca22)
1283
1284 commit c5ef385c25086dc1582ebe5343481d05283b0cc6
1285 Author: David Zafman <dzafman@redhat.com>
1286 Date:   Thu May 26 22:09:42 2016 -0700
1287
1288     osd: Fix hang on unfound object after mark_unfound_lost is done
1289     
1290     Signed-off-by: David Zafman <dzafman@redhat.com>
1291     (cherry picked from commit 73a27533beba3587f8447b4d41d200427c45042b)
1292     
1293     Conflicts:
1294         src/osd/ReplicatedPG.cc (trivial)
1295
1296 commit 6284f745157458439699c76e8616455c50d1eb71
1297 Author: David Zafman <dzafman@redhat.com>
1298 Date:   Fri May 20 15:20:18 2016 -0700
1299
1300     osd: Handle recovery read errors
1301     
1302     Fixes: http://tracker.ceph.com/issues/13937
1303     
1304     Signed-off-by: David Zafman <dzafman@redhat.com>
1305     (cherry picked from commit c51d70e1e837c972e42ddd5fa66f7ca4477b95cc)
1306     
1307     Conflicts:
1308         src/osd/ReplicatedPG.h (trivial)
1309
1310 commit 27393a8c05d4656f342ecd32817307e558a2e400
1311 Author: David Zafman <dzafman@redhat.com>
1312 Date:   Fri May 20 18:19:42 2016 -0700
1313
1314     osd: Fix log messages
1315     
1316     Signed-off-by: David Zafman <dzafman@redhat.com>
1317     (cherry picked from commit b40ec3fe890679b4c73778815e1bedd492cb264b)
1318
1319 commit cbf66f3b16f194dd0c67b46e0fec247e02e84134
1320 Author: David Zafman <dzafman@redhat.com>
1321 Date:   Fri May 20 13:58:32 2016 -0700
1322
1323     osd: CLEANUP: Remove unused pending_read member
1324     
1325     Remove unused struct
1326     
1327     Signed-off-by: David Zafman <dzafman@redhat.com>
1328     (cherry picked from commit 36fd68c96653e83f87767feb08530a9fc6e841b0)
1329
1330 commit 228b91d72a15b62adc10591604c4e8a849df53d5
1331 Author: David Zafman <dzafman@redhat.com>
1332 Date:   Tue Oct 11 18:08:12 2016 -0700
1333
1334     test/osd-scrub-repair.sh: Use test case specific object names to help with diagnostics
1335     
1336     Signed-off-by: David Zafman <dzafman@redhat.com>
1337     (cherry picked from commit 0bf4da589155ee50969812492cfbc66368efb54c)
1338
1339 commit ee3c67c9cbfdeeb3e628bac34b708cf150b3862e
1340 Merge: 3dbf0c9 39848e4
1341 Author: Nathan Cutler <presnypreklad@gmail.com>
1342 Date:   Wed Feb 1 23:28:22 2017 +0100
1343
1344     Merge pull request #13143 from linuxbox2/jewel-mdw-rgw-lf
1345     
1346     jewel: rgw: radosgw/swift: clean up flush / newline behavior.
1347     
1348     Reviewed-by: Nathan Cutler <ncutler@suse.com>
1349
1350 commit 39848e41b7c517cc5faab1ccf77c2804fd7d2628
1351 Author: Marcus Watts <mwatts@redhat.com>
1352 Date:   Wed Jan 11 00:06:15 2017 -0500
1353
1354     radosgw/swift: clean up flush / newline behavior.
1355     
1356     The current code emits a newline after swift errors, but fails
1357     to account for it when it calculates 'content-length'.  This results in
1358     some clients (go github.com/ncw/swift) producing complaints about the
1359     unsolicited newline such as this,
1360         Unsolicited response received on idle HTTP channel starting with "\n"; err=<nil>
1361     
1362     This logic eliminates the newline on flush.  This makes the content length
1363     calculation correct and eliminates the stray newline.
1364     
1365     There was already existing separator logic in the rgw plain formatter
1366     that can emit a newline at the correct point.  It had been checking
1367     "len" to decide if previous data had been emitted, but that's reset to 0
1368     by flush().  So, this logic adds a new per-instance variable to separately
1369     track state that it emitted a previous item (and should emit a newline).
1370     
1371     Fixes: http://tracker.ceph.com/issues/18473
1372     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1373     Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
1374     (cherry picked from commit 5f229d6a33eae4906f22cdb90941835e47ee9f02)
1375
1376 commit 3fce77ab3662496368e25cbbf6d1b37d3c140db9
1377 Author: Vikhyat Umrao <vumrao@redhat.com>
1378 Date:   Wed Jan 25 21:54:27 2017 +0530
1379
1380     osd: jewel fix OSD network address in OSD heartbeat_check log message
1381     
1382     Fixes: http://tracker.ceph.com/issues/18657
1383     
1384     Signed-off-by: Vikhyat Umrao <vumrao@redhat.com>
1385
1386 commit 14a6aabe22f68436ea3297ce0851700f86ee5b12
1387 Author: Marcus Watts <mwatts@redhat.com>
1388 Date:   Wed Aug 3 17:36:55 2016 -0400
1389
1390     rgw: Handle multiple listening addreses w/ optional ssl "correctly" with civetweb.
1391     
1392     For civetweb: accept a range of port numbers joined with '+'.
1393     Port numbers may include an ipaddress: prefix and 's' suffix.
1394     Additionally, use "mg_get_local_addr" to correctly deduce host port per
1395     incoming connection.
1396     
1397     civetweb can accept connections on multiple ports, some of which
1398     might have SSL turned on and some not.  Both s3 and swift have various
1399     authorization protocols in which the port number matters.  In the generic
1400     radosgw frontend process, each frontend only has one port number, but
1401     we should want to have both ssl and non-ssl connections managed within
1402     one rgw frontend, because the thread pool is also per front-end, and
1403     that *is* a scarce resource.
1404     
1405     So, this patch enables the use of multiple ports with a single civetweb
1406     frontend.  To indicate https: append an 's' to portno.  To use multiple
1407     ports, use +.  So 80+443s indicates use of the usual default http ports.
1408     The parsed port is not stored in the frontend structure,
1409     
1410     So instead, this patch adds logic to use the results of
1411     mg_get_local_addr() on a per-connection basis insetad of the generic
1412     front-end port number.  This will affect "v4" s3 authorization, and also
1413     affect swift pre-signed URLs.
1414     
1415     mg_get_local_addr() is a new customization to civetweb; that submodule
1416     was updated (in a temporary repository) by the previous commit to this.
1417     
1418     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1419     (cherry picked from commit 8bc6decc0774fae9ac881f91e73da55deebe3360)
1420
1421 commit 698250563ccc4c69e5ca5aebf65dc352d80a8bdd
1422 Author: Marcus Watts <mwatts@redhat.com>
1423 Date:   Tue Dec 20 00:22:02 2016 -0500
1424
1425     rgw: s3: secure_port should override port, also apply ssl default right.
1426     
1427     Without https, only port is set.  With https, secure_port and port are
1428     both set to the same value.  The previous logic looked at port first and
1429     had overly simplified conditional logic which was liable to try to apply
1430     both non-default cases.  The correct behavior is: look secure_port first,
1431     and if secure_port is set, then only check to see if it's a non-default
1432     port.
1433     
1434     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1435     (cherry picked from commit a113cf5ff5a642d2ee4cc83f5c7001b4bfe0a5df)
1436
1437 commit 28f2841c8b9a832e486b9f89c574a4591bf3d448
1438 Author: Marcus Watts <mwatts@redhat.com>
1439 Date:   Wed Nov 2 00:18:48 2016 -0400
1440
1441     rgw: Get civetweb ssl enhancement: wip-listen3 = mg_get_local_addr
1442     
1443     The logic inside of radosgw that computes aws v4 signatures wants to know
1444     what server port the client connected.  The patch to civetweb patch adds a
1445     call mg_get_local_addr() which will permit that code to actually find out
1446     on what address a connection was received, rather than merely guessing
1447     based on configuration as it previously did.
1448     
1449     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1450     (cherry picked from commit 46ced9ddd2795f00f014e22e5637070b49e7a6d5)
1451
1452 commit 8d83dfb4176ede7490d0cab589e9566bc7d4e387
1453 Author: Marcus Watts <mwatts@redhat.com>
1454 Date:   Wed Mar 23 17:32:14 2016 -0400
1455
1456     rgw: Document that radosgw now supports SSL.
1457     
1458     This includes information on file format and configuration file syntax.
1459     
1460     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1461     (cherry picked from commit d4e72dfed30274b3cfbad4ac58c0746a98c0148b)
1462
1463 commit e3f80c9d0ed6762a39fc242561f5ea26f0f26546
1464 Author: Marcus Watts <mwatts@redhat.com>
1465 Date:   Fri Jan 13 03:39:57 2017 -0500
1466
1467     rgw: civetweb/openssl: automagic: load libssl.so and libcrypto.so by soname.
1468     
1469     If building with radosgw, always look for openssl library (even when
1470     building with nss).  Then, use objdump to fetch SONAME from the copies
1471     of libssl and libcrypto that were found.  When building civetweb; pass
1472     the library soname values in as the libraries to load with "dlopen".
1473     
1474     The issue reported here against master
1475     http://tracker.ceph.com/issues/16535
1476     reflects stuff that doesn't seem to have made it into jewel
1477         (which had: -lssl -lcrypto hard-wired into it.)
1478     Still, since people were pretty riled about making that change,
1479     this puts things in congruence to the final result in master.
1480         (which is: runtime shared object load of ssl crypto by soname.)
1481     
1482     Fixes: http://tracker.ceph.com/issues/11239
1483     
1484     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1485     (inspired by commit 7caa0bd002110b62514da83a37a2a3deb841267a)
1486
1487 commit 045551485415309ba9bad77e1aee28a0008881ca
1488 Author: Marcus Watts <mwatts@redhat.com>
1489 Date:   Mon Jul 11 17:54:07 2016 -0400
1490
1491     rgw: civetweb/openssl: Load libssl.so and libcrypto.so by soname.
1492     
1493     If building with radosgw, always look for openssl library (even when
1494     building with nss).  Then, use objdump to fetch SONAME from the copies
1495     of libssl and libcrypto that were found.  When building civetweb; pass
1496     the library soname values in as the libraries to load with "dlopen".
1497     
1498     This is a problem that went away for a bit, but came back with some
1499     changes for
1500     http://tracker.ceph.com/issues/16535
1501     
1502     Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1341775
1503     Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1258961
1504     
1505     Fixes: http://tracker.ceph.com/issues/11239
1506     
1507     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1508     (cherry picked from commit 7caa0bd002110b62514da83a37a2a3deb841267a)
1509
1510 commit 386640865dee30d38f17e55fc87535e419bc3cb5
1511 Author: Marcus Watts <mwatts@redhat.com>
1512 Date:   Thu Nov 3 23:33:44 2016 -0400
1513
1514     rgw: cmake: remove useless civetweb include path side effect.
1515     
1516     For 'target_include_directories" for the cmake object library
1517     'civetweb_common_objs', change from PUBLIC to PRIVATE.  This doesn't
1518     break anything, so it wasn't doing anything useful.  If it has it
1519     any effect, it would be to cause everything that linked against this
1520     "library" to also use the indictated include path.  Which would be great
1521     except everything in ceph wants to include "civetweb/civetweb.h" and
1522     not "civetweb.h".  We already make separate arrangements elsewhere for
1523     that to work.  Additionally, static object libraries in cmake aren't
1524     really libraries, so I'm not entirely sure this even does anything.
1525     So: making this public is not useful, and could be harmful.  Making it
1526     private makes this only take effect for building civetweb.c itself,
1527     exactly the effect we we require, and no more.
1528     
1529     Signed-off-by: Marcus Watts <mwatts@redhat.com>
1530     (cherry picked from commit 8308a13b0257c9460fd2a721c20b0c37cb9e7c57)