]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
osd: explicitly requeue waiting_for_map in on_change()
authorSage Weil <sage@inktank.com>
Thu, 16 Aug 2012 00:19:22 +0000 (17:19 -0700)
committerSage Weil <sage@inktank.com>
Thu, 16 Aug 2012 20:15:11 +0000 (13:15 -0700)
commitda210bee091705fc488cc7c839c32d46280c1719
tree6a3a8f562d8b21d30d8cf228e95ed1e07b62afc6
parentfac699cf41e3c1eb0dae40df4fad0e78fbce0490
osd: explicitly requeue waiting_for_map in on_change()

Since we are requeuing stuff anyway, do it all in the correct order. This
fixes a bug where take_waiters() comes along later (at activate_map time)
and puts waiting_for_map events at the front of the queue, in front of
e.g. waiting_for_missing.  This breaks ordering from the client's
perspective.

The convention should be: whenever you requeue, requeuing everything
that logically follows it first.

Fixes: #2947
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
src/osd/ReplicatedPG.cc