Aug 09
I want to verify that the data is what I expect across two systems for binaries. Here’s some sanity check examples:
1) Verify fs.files object count:
mongofiles -d cms list | wc -l
Example output:
connected to: 127.0.0.1 3700
(should be > 3000)
2) Verify Meta data:
> db.fs.files.stats();
Example output:
{
"ns" : "cms.fs.files",
"count" : 3700,
"size" : 899348,
"storageSize" : 1196800,
"numExtents" : 4,
"nindexes" : 3,
"lastExtentSize" : 901120,
"paddingFactor" : 1,
"flags" : 1,
"totalIndexSize" : 966656,
"indexSizes" : {
"_id_" : 163840,
"filename_1_uploadDate_-1" : 425984,
"filename_1" : 376832
},
"ok" : 1
}
Should be same as mongofiles -d cms list | wc -l
3) Verify Binary data:
> db.fs.chunks.stats();
Example output:
{
"ns" : "cms.fs.chunks",
"count" : 13009,
"size" : 2878929012,
"storageSize" : 3436553216,
"numExtents" : 28,
"nindexes" : 2,
"lastExtentSize" : 576252672,
"paddingFactor" : 1,
"flags" : 1,
"totalIndexSize" : 1122304,
"indexSizes" : {
"_id_" : 548864,
"files_id_1_n_1" : 573440
},
"ok" : 1
}
size should be > 2,500,000,000 (2.5 GB)
4) Save a binary from Mongo:
a) pick a file from list
mongofiles -d cms list
b) restore it to /tmp/
mongofiles -d cms get 'carouselimages/4bc24ba5fa7e1c75b10000d5/image/tradeshow_placeholder.jpg' -l /tmp/tradeshow_placeholder.jpg
View file.
