{"push_id":1060975150,"size":12,"distinct_size":1,"ref":"refs/heads/master","head":"210d5d82abf16363975971360a89d55bf0da2695","before":"f6820c000376198edff7dca546db348c76d1ef62","commits":[{"sha":"21487fd0c200f470eacbcc66aba3c9c4092dee6f","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"os/,osd/: restructure the rados name length check\n\nEnforce locator length vs the max name length and also\nintroduce a namespace length limit.\n\nIn addition to these checks, also pass the head object to the\nObjectStore implementation to validate.  This allows LFNIndex to account\nfor the idiosyncracies of its filename escaping and for different xattr\nvalue max sizes.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/21487fd0c200f470eacbcc66aba3c9c4092dee6f"},{"sha":"8dc033078f5597bd87581c66678ba7e7c6e6bc1f","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"chain_xattr: s/onechunk/skip_chain_cleanup, add ensure_single_attr\n\nonechunk was a deceptive name since it didn't actually ensure that\na single chunk would be used.  Rename to ensure_single_attr.  Also,\nadd a parameter to ensure that we use a single attribute.  We need\nthese to be distinct since we have LFN attrs which have been split\nover 254 byte xattrs since after hammer which we need to correctly\nclean up.  However, we need to ensure going forward that those attrs\nare never split over more than one chunk -- it's not atomic.\nFurther, skip_chain_cleanup should imply ensure_single_attr, so make\nthem template params and add a static check to make sure we don't\nmess this up in the future.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/8dc033078f5597bd87581c66678ba7e7c6e6bc1f"},{"sha":"ac750cebc20485869f4cc0600b8c79274e1f50b5","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"chain_[f]getxattr: always use size, no reaon to consider CHAIN_XATTR_MAX_BLOCK_LEN\n\nUsers of setxattr can now set attrs larger than that size.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/ac750cebc20485869f4cc0600b8c79274e1f50b5"},{"sha":"73778f1eb9ac8f597e16762b17d516c449b08c6e","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"LFNIndex: ensure that lfn and directory attrs are written atomically\n\nWe leave skip_chain_cleanup = false since the object may have been\nwritten using code that split the lfn attr over multiple attrs.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/73778f1eb9ac8f597e16762b17d516c449b08c6e"},{"sha":"18b9f95a4a233dfe7f32cbceb78ec0c5a6fd695c","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"test/objectstore/chain_xattr.cc: add test for ensure_single_attr\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/18b9f95a4a233dfe7f32cbceb78ec0c5a6fd695c"},{"sha":"25f937e3640f8bbd14403ba901c6fb327bc73983","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"FileStore::set_xattr_limits_via_conf: add warning if max xattr size smaller than max name\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/25f937e3640f8bbd14403ba901c6fb327bc73983"},{"sha":"e4916f68ddcacfb23bd0dd83de9f09807763eb38","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"LFNIndex::list_objects: lfn_translate does not set errno\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/e4916f68ddcacfb23bd0dd83de9f09807763eb38"},{"sha":"755c685f2d09c36b53bc39589a77fa73faba5149","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"LFNIndex::lfn_parse_object_name: return int rather than bool\n\nAll current callers (except list_objects) already expect\nret < 0 for error.  Adjust list_objects to skip on EINVAL\ninstead of 0.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/755c685f2d09c36b53bc39589a77fa73faba5149"},{"sha":"c7db303028a43230bb0d9d8f029c29371ba2b466","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"chain_xattr: add chain_getxattr_buf\n\nOtherwise callers need to implement buffer doubling in a lot of cases,\nwhich is error prone.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/c7db303028a43230bb0d9d8f029c29371ba2b466"},{"sha":"cb03d4d3c23ef7a8b6b1080a4100fb3fefe0a015","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"LFNIndex: use chain_getxattr_buf\n\nLFN attrs can be longer than these hard coded limits, let's just do\nbuffer doubling everywhere.\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/cb03d4d3c23ef7a8b6b1080a4100fb3fefe0a015"},{"sha":"3b54d5df28743d3e3a7a71f4d1fee46236bfc886","author":{"email":"16ccadb3f2bf0703b4be974f8606e7e98c1cda29@redhat.com","name":"Samuel Just"},"message":"test/rados/misc.cc: add long locator key and namespace tests\n\nSigned-off-by: Samuel Just <sjust@redhat.com>","distinct":false,"url":"https://api.github.com/repos/ceph/ceph/commits/3b54d5df28743d3e3a7a71f4d1fee46236bfc886"},{"sha":"210d5d82abf16363975971360a89d55bf0da2695","author":{"email":"6dd34506bbd5e58221bbb3e4732d97c91f02277b@redhat.com","name":"Sage Weil"},"message":"Merge pull request #8496 from athanatos/wip-15312\n\nos/filestore: force lfn attrs to be written atomically, restructure name length limits","distinct":true,"url":"https://api.github.com/repos/ceph/ceph/commits/210d5d82abf16363975971360a89d55bf0da2695"}]}