{"push_id":1463452955,"size":1,"distinct_size":1,"ref":"refs/heads/wip-bluestore-omap-flush","head":"9864bf8db93f1d275b2e5cc12a7d12e9c8af0827","before":"1d0fe89d1c59aa96888d879e6b94e146202fab86","commits":[{"sha":"9864bf8db93f1d275b2e5cc12a7d12e9c8af0827","author":{"name":"Sage Weil","email":"de0588efcded8ff54c4ac7fcbd6d8ada6aa5c289@redhat.com"},"message":"os/bluestore: include modified objects in flush list even if onode unchanged\n\nWe use the onode flush list so that we can ->flush() as\na barrier before doing any read/modify/write.  For\nexample, omap_rmkeyrange will flush before reading to\nsee what keys to erase in order to ensure that any\nprevious inserts are applied to the db and we see them\nand remove them.\n\nHowever, some omap operations don't update the onode\nitself, which means write_onode() doesn't get called and\nwe aren't put on this list.\n\nAdd a note_modified_object() helper that can be called\ninstead of write_onode() for those cases.  That way we\nget on the list and flush() works as expected.\n\nWe could have resolved this by just putting ourselves on\nthe dirty onode list, but in practice every OSD op is\nwriting omap keys to the pgmeta object and there is no\nneed to touch the onode key in this case, so doing so\nwould be a big regression.\n\nSigned-off-by: Sage Weil <sage@redhat.com>","distinct":true,"url":"https://api.github.com/repos/liewegas/ceph/commits/9864bf8db93f1d275b2e5cc12a7d12e9c8af0827"}]}
{"actor":{"display_login":"liewegas"}}