12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
mysql数据库 时间:2024-11-26 22:16:14
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
大概是空闲extent的大小。ST_FIELD_INFOtables_fields_info[]={...{"DATA_FREE",MY_INT64_NUM_DECIMAL_DIGITS,MYSQL_TYPE_LONGLONG,0,(MY_I_S_MAYBE_NULL|MY_I_S_UNSIGNED)
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
大概是空闲extent的大小。
ST_FIELD_INFOtables_fields_info[]={...{"DATA_FREE",MY_INT64_NUM_DECIMAL_DIGITS,MYSQL_TYPE_LONGLONG,0,(MY_I_S_MAYBE_NULL|MY_I_S_UNSIGNED),"Data_free",OPEN_FULL_TABLE},...}tables_fields_info[12]就是Data_free
ST_SCHEMA_TABLEschema_tables[]={...{"TABLES",tables_fields_info,create_schema_table,get_all_tables,make_old_format,get_schema_tables_record,1,2,0,OPTIMIZE_I_S_TABLE},...}填充方式get_schema_tables_record函数
其中有一句table->field[12]->store((longlong)file->stats.delete_length,TRUE);实际就是file->stats.delete_length
其中 file->stats.delete_length调用进行取值
ha_innobase::info_low其中包含avail_space=fsp_get_available_space_in_free_extents(ib_table->space);stats.delete_length=avail_space*1024;
uintmax_tfsp_get_available_space_in_free_extents(constfil_space_t*space){ut_ad(space->n_pending_ops>0);ulintsize_in_header=space->size_in_header;//总的页面大小if(size_in_header<FSP_EXTENT_SIZE){//碎片页直接返回0return(0);/*TODO:countfreefragpagesandreturnavaluebasedonthat*/}/*Belowweplaysafewhencountingfreeextentsabovethefreelimit:someofthemwillcontainextentdescriptorpages,andthereforewillnotbefreeextents*/ut_ad(size_in_header>=space->free_limit);ulintn_free_up=(size_in_header-space->free_limit)/FSP_EXTENT_SIZE;//(总的页面大小-已经初始化大小)/EXTENTSIZEpage_size_tpage_size(space->flags);if(n_free_up>0){n_free_up--;n_free_up-=n_free_up/(page_size.physical()/FSP_EXTENT_SIZE);//减去extent管理块?}/*Wereserve1extent+0.5%ofthespacesizetoundologsand1extent+0.5%tocleaningoperations;NOTE:thissourcecodeisduplicatedinthefunctionabove!*/ulintreserve=2+((size_in_header/FSP_EXTENT_SIZE)*2)/200;ulintn_free=space->free_len+n_free_up;if(reserve>n_free){return(0);}return(static_cast<uintmax_t>(n_free-reserve)*FSP_EXTENT_SIZE*(page_size.physical()/1024));}
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19