[SERVER-16531] db.collection.validate({full:true}) for 2.8 mmapv1 shows empty indexDetails stats Created: 12/Dec/14  Updated: 24/Jan/15  Resolved: 15/Dec/14

Status: Closed
Project: Core Server
Component/s: Diagnostics, Storage
Affects Version/s: 2.8.0-rc2
Fix Version/s: None

Type: Improvement Priority: Minor - P4
Reporter: Jalpa Trivedi (Inactive) Assignee: Matt Kangas
Resolution: Done Votes: 0
Labels: 28qa
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Running db.collection.validate(

{full:true}

) for 2.8 mmapv1 gives empty "indexDetails" stats in the resulting document while for 2.8 WT, it gives the non-empty results for "indexDetails" stats.

  • In 2.8 WT:

    > db.foo.validate({full:true})
    {
    	"ns" : "test.foo",
    	"nrecords" : 10000,
    	"wiredTiger" : {
    		"uri" : "statistics:table:collection-2-632245492128970716",
    		"LSM" : {
    			"bloom filters in the LSM tree" : 0,
    			"bloom filter false positives" : 0,
    			"bloom filter hits" : 0,
    			"bloom filter misses" : 0,
    			"bloom filter pages evicted from cache" : 0,
    			"bloom filter pages read into cache" : 0,
    			"total size of bloom filters" : 0,
    			"sleep for LSM checkpoint throttle" : 0,
    			"chunks in the LSM tree" : 0,
    			"highest merge generation in the LSM tree" : 0,
    			"queries that could have benefited from a Bloom filter that did not exist" : 0,
    			"sleep for LSM merge throttle" : 0
    		},
    		"block-manager" : {
    			"file allocation unit size" : 4096,
    			"blocks allocated" : 9,
    			"checkpoint size" : 32768,
    			"allocations requiring file extension" : 6,
    			"blocks freed" : 3,
    			"file magic number" : 120897,
    			"file major version number" : 1,
    			"minor version number" : 0,
    			"file bytes available for reuse" : 16384,
    			"file size in bytes" : 61440
    		},
    		"btree" : {
    			"column-store variable-size deleted values" : 0,
    			"column-store fixed-size leaf pages" : 0,
    			"column-store internal pages" : 0,
    			"column-store variable-size leaf pages" : 0,
    			"pages rewritten by compaction" : 0,
    			"number of key/value pairs" : 0,
    			"fixed-record size" : 0,
    			"maximum tree depth" : 3,
    			"maximum internal page item size" : 384,
    			"maximum internal page size" : 4096,
    			"maximum leaf page item size" : 3072,
    			"maximum leaf page size" : 32768,
    			"overflow pages" : 0,
    			"row-store internal pages" : 0,
    			"row-store leaf pages" : 0
    		},
    		"cache" : {
    			"bytes read into cache" : 0,
    			"bytes written from cache" : 46021,
    			"checkpoint blocked page eviction" : 0,
    			"unmodified pages evicted" : 0,
    			"modified pages evicted" : 0,
    			"data source pages selected for eviction unable to be evicted" : 0,
    			"hazard pointer blocked page eviction" : 0,
    			"internal pages evicted" : 0,
    			"in-memory page splits" : 0,
    			"overflow values cached in memory" : 0,
    			"pages read into cache" : 0,
    			"overflow pages read into cache" : 0,
    			"pages written from cache" : 7
    		},
    		"compression" : {
    			"raw compression call failed, no additional data available" : 0,
    			"raw compression call failed, additional data available" : 0,
    			"raw compression call succeeded" : 0,
    			"compressed pages read" : 0,
    			"compressed pages written" : 6,
    			"page written failed to compress" : 0,
    			"page written was too small to compress" : 1
    		},
    		"cursor" : {
    			"create calls" : 3,
    			"insert calls" : 10000,
    			"bulk-loaded cursor-insert calls" : 0,
    			"cursor-insert key and value bytes inserted" : 351426,
    			"next calls" : 10001,
    			"prev calls" : 1,
    			"remove calls" : 0,
    			"cursor-remove key bytes removed" : 0,
    			"reset calls" : 20001,
    			"search calls" : 10000,
    			"search near calls" : 0,
    			"update calls" : 0,
    			"cursor-update value bytes updated" : 0
    		},
    		"reconciliation" : {
    			"dictionary matches" : 0,
    			"internal page multi-block writes" : 0,
    			"leaf page multi-block writes" : 2,
    			"maximum blocks required for a page" : 3,
    			"internal-page overflow keys" : 0,
    			"leaf-page overflow keys" : 0,
    			"overflow values written" : 0,
    			"pages deleted" : 0,
    			"page checksum matches" : 0,
    			"page reconciliation calls" : 3,
    			"page reconciliation calls for eviction" : 0,
    			"leaf page key bytes discarded using prefix compression" : 0,
    			"internal page key bytes discarded using suffix compression" : 4
    		},
    		"session" : {
    			"object compaction" : 0,
    			"open cursor count" : 3
    		},
    		"transaction" : {
    			"update conflicts" : 0
    		}
    	},
    	"nIndexes" : 1,
    	"keysPerIndex" : {
    		"test.foo.$_id_" : 10000
    	},
    	"indexDetails" : {
    		"test.foo.$_id_" : {
    			"uri" : "statistics:table:index-3-632245492128970716",
    			"LSM" : {
    				"bloom filters in the LSM tree" : 0,
    				"bloom filter false positives" : 0,
    				"bloom filter hits" : 0,
    				"bloom filter misses" : 0,
    				"bloom filter pages evicted from cache" : 0,
    				"bloom filter pages read into cache" : 0,
    				"total size of bloom filters" : 0,
    				"sleep for LSM checkpoint throttle" : 0,
    				"chunks in the LSM tree" : 0,
    				"highest merge generation in the LSM tree" : 0,
    				"queries that could have benefited from a Bloom filter that did not exist" : 0,
    				"sleep for LSM merge throttle" : 0
    			},
    			"block-manager" : {
    				"file allocation unit size" : 4096,
    				"blocks allocated" : 8,
    				"checkpoint size" : 32768,
    				"allocations requiring file extension" : 5,
    				"blocks freed" : 2,
    				"file magic number" : 120897,
    				"file major version number" : 1,
    				"minor version number" : 0,
    				"file bytes available for reuse" : 12288,
    				"file size in bytes" : 57344
    			},
    			"btree" : {
    				"column-store variable-size deleted values" : 0,
    				"column-store fixed-size leaf pages" : 0,
    				"column-store internal pages" : 0,
    				"column-store variable-size leaf pages" : 0,
    				"pages rewritten by compaction" : 0,
    				"number of key/value pairs" : 0,
    				"fixed-record size" : 0,
    				"maximum tree depth" : 3,
    				"maximum internal page item size" : 384,
    				"maximum internal page size" : 4096,
    				"maximum leaf page item size" : 1536,
    				"maximum leaf page size" : 16384,
    				"overflow pages" : 0,
    				"row-store internal pages" : 0,
    				"row-store leaf pages" : 0
    			},
    			"cache" : {
    				"bytes read into cache" : 0,
    				"bytes written from cache" : 49474,
    				"checkpoint blocked page eviction" : 0,
    				"unmodified pages evicted" : 0,
    				"modified pages evicted" : 0,
    				"data source pages selected for eviction unable to be evicted" : 0,
    				"hazard pointer blocked page eviction" : 0,
    				"internal pages evicted" : 0,
    				"in-memory page splits" : 0,
    				"overflow values cached in memory" : 0,
    				"pages read into cache" : 0,
    				"overflow pages read into cache" : 0,
    				"pages written from cache" : 6
    			},
    			"compression" : {
    				"raw compression call failed, no additional data available" : 0,
    				"raw compression call failed, additional data available" : 0,
    				"raw compression call succeeded" : 0,
    				"compressed pages read" : 0,
    				"compressed pages written" : 0,
    				"page written failed to compress" : 0,
    				"page written was too small to compress" : 0
    			},
    			"cursor" : {
    				"create calls" : 2,
    				"insert calls" : 10000,
    				"bulk-loaded cursor-insert calls" : 0,
    				"cursor-insert key and value bytes inserted" : 270000,
    				"next calls" : 10000,
    				"prev calls" : 0,
    				"remove calls" : 0,
    				"cursor-remove key bytes removed" : 0,
    				"reset calls" : 10000,
    				"search calls" : 0,
    				"search near calls" : 1,
    				"update calls" : 0,
    				"cursor-update value bytes updated" : 0
    			},
    			"reconciliation" : {
    				"dictionary matches" : 0,
    				"internal page multi-block writes" : 0,
    				"leaf page multi-block writes" : 2,
    				"maximum blocks required for a page" : 2,
    				"internal-page overflow keys" : 0,
    				"leaf-page overflow keys" : 0,
    				"overflow values written" : 0,
    				"pages deleted" : 0,
    				"page checksum matches" : 0,
    				"page reconciliation calls" : 3,
    				"page reconciliation calls for eviction" : 0,
    				"leaf page key bytes discarded using prefix compression" : 64043,
    				"internal page key bytes discarded using suffix compression" : 0
    			},
    			"session" : {
    				"object compaction" : 0,
    				"open cursor count" : 2
    			},
    			"transaction" : {
    				"update conflicts" : 0
    			}
    		}
    	},
    	"valid" : true,
    	"errors" : [ ],
    	"ok" : 1
    }

  • In 2.8 mmapv1:

    {
    	"ns" : "test.foo",
    	"datasize" : 4800080,
    	"nrecords" : 100000,
    	"lastExtentSize" : 8388608,
    	"firstExtent" : "0:6000 ns:test.foo",
    	"lastExtent" : "0:550000 ns:test.foo",
    	"extentCount" : 6,
    	"extents" : [
    		{
    			"loc" : "0:6000",
    			"xnext" : "0:28000",
    			"xprev" : "null",
    			"nsdiag" : "test.foo",
    			"size" : 8192,
    			"firstRecord" : "0:60b0",
    			"lastRecord" : "0:7fb0"
    		},
    		{
    			"loc" : "0:28000",
    			"xnext" : "0:30000",
    			"xprev" : "0:6000",
    			"nsdiag" : "test.foo",
    			"size" : 32768,
    			"firstRecord" : "0:280b0",
    			"lastRecord" : "0:2ffb0"
    		},
    		{
    			"loc" : "0:30000",
    			"xnext" : "0:50000",
    			"xprev" : "0:28000",
    			"nsdiag" : "test.foo",
    			"size" : 131072,
    			"firstRecord" : "0:300b0",
    			"lastRecord" : "0:4ffb0"
    		},
    		{
    			"loc" : "0:50000",
    			"xnext" : "0:150000",
    			"xprev" : "0:30000",
    			"nsdiag" : "test.foo",
    			"size" : 524288,
    			"firstRecord" : "0:500b0",
    			"lastRecord" : "0:cffb0"
    		},
    		{
    			"loc" : "0:150000",
    			"xnext" : "0:550000",
    			"xprev" : "0:50000",
    			"nsdiag" : "test.foo",
    			"size" : 2097152,
    			"firstRecord" : "0:1500b0",
    			"lastRecord" : "0:34ffb0"
    		},
    		{
    			"loc" : "0:550000",
    			"xnext" : "null",
    			"xprev" : "0:150000",
    			"nsdiag" : "test.foo",
    			"size" : 8388608,
    			"firstRecord" : "0:5500b0",
    			"lastRecord" : "0:8c0c30"
    		}
    	],
    	"firstExtentDetails" : {
    		"loc" : "0:6000",
    		"xnext" : "0:28000",
    		"xprev" : "null",
    		"nsdiag" : "test.foo",
    		"size" : 8192,
    		"firstRecord" : "0:60b0",
    		"lastRecord" : "0:7fb0"
    	},
    	"lastExtentDetails" : {
    		"loc" : "0:550000",
    		"xnext" : "null",
    		"xprev" : "0:150000",
    		"nsdiag" : "test.foo",
    		"size" : 8388608,
    		"firstRecord" : "0:5500b0",
    		"lastRecord" : "0:8c0c30"
    	},
    	"objectsFound" : 100000,
    	"invalidObjects" : 0,
    	"nQuantizedSize" : 99995,
    	"bytesWithHeaders" : 6400080,
    	"bytesWithoutHeaders" : 4800080,
    	"bytesBson" : 3300000,
    	"deletedCount" : 1,
    	"deletedSize" : 4780944,
    	"delBucketSizes" : [
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		1,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0,
    		0
    	],
    	"nIndexes" : 1,
    	"keysPerIndex" : {
    		"test.foo.$_id_" : 100000
    	},
    	"indexDetails" : {
    		"test.foo.$_id_" : {
    			
    		}
    	},
    	"valid" : true,
    	"errors" : [ ],
    	"ok" : 1
    }



 Comments   
Comment by Daniel Pasette (Inactive) [ 15/Dec/14 ]

mmapv1 does not expose index details in the same way that WT does, this works as designed.

Generated at Thu Feb 08 03:41:21 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.