librados: add get_version64()

The C++ AioCompletion::get_version() method only returns 32-bits.  Sigh.

Add a get_version64() method that returns all 64-bits. Do not touch the
32-bit version to avoid breaking the ABI.

Backport: dumpling, cuttlefish
Signed-off-by: Sage Weil <sage@inktank.com>
messages/MOSDOpReply: fix user_version in reply (add missing braces)

Presumbly a mismerge somewhere back around
de20997445803dca4225ed0dac1bad6a8a1e6512.

Signed-off-by: Sage Weil <sage@inktank.com>
osd/ReplicatedPG: set version, user_version correctly on reads

Set the user version to the *current* object version, not the version
we would use if we were to modify it.  We move the assignments inside
the reply (read or error) block to make it more obvious which paths
are possible.

Signed-off-by: Sage Weil <sage@inktank.com>
ceph_test_rados: validate user_version

Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #556 from ceph/wip-user-version

make ceph_test_rados / RadosModel validate the versions exposed by librados

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>