On Wed, Nov 18, 2015 at 4:34 AM, Межов Игорь Александрович <megov@xxxxxxxxxx> wrote: > Hi! > > As for my previous message, digging mailing list gave me only one method to fix > inconsistency - truncate object files in a filesystem to a size, that they have > in ceph metadata: > > http://www.spinics.net/lists/ceph-users/msg00794.html > > But in that issue, metadata size was bigger, than ondisk, so thuncate really extends > object instead of shrinking and no data was lost. > > In my case, metadata size is lesser then on-disk and I sure, that some data > will be lost if I truncate on-disk object to a size specified in metadata. > > Is there any way to manually change object size in metadata? > > When I try to get an object via rados by name, I get the 2777088 bytes instead > of 4194304. But when I look at the object contents, I can see, that data inside it > continues beyond 2777088 size, forming a whole 4M rbd chunk. I think the only time we've seen this was when there was some kind of XFS corruption that accidentally extended the size of the file on disk, and the object info was correct with its shorter size. But perhaps not, in which case I've no idea how this could have happened. > > What will happens, if I do 'rados put' a 4M file into the cluster under the > same name? Will it update metadata size automatically? Can it broke RBD > layer, for example if rbd have store some data about objects in own headers/tables? I don't think RBD stores any data about individual data objects that could be broken this way, unless there are any new xattrs you need to keep consistent. -Greg _______________________________________________ ceph-users mailing list ceph-users@xxxxxxxxxxxxxx http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com