Oracle bbed的代码风格
371 /* K_BTTRDA, KDDBTDATA: KTB Data, data block layers defn */ 372 static const kutbl *const kutbltt[] = 373 { 374 &kutblcb, /* cache layer */ 375 &kutbltb, /* transaction layer */ 376 &kutbldb, /* data layer */ 377 &kutbltck /* TAILCHK */ 378 }; 379 380 /* K_BTTRDA, KDDBTINDEX: KTB Data, index LEAF block layers defn */ 381 static const kutbl *const kutbltxl[] = 382 { 383 &kutblcb, /* cache layer */ 384 &kutbltb, /* transaction layer */ 385 &kutbldxl, /* data layer */ 386 &kutbltck /* TAILCHK */ 387 }; 388 389 /* K_BTTRDA, KDDBTINDEX: KTB Data, index BRANCH block layers defn */ 390 static const kutbl *const kutbltxb[] = 391 { 392 &kutblcb, /* cache layer */ 393 &kutbltb, /* transaction layer */ 394 &kutbldxb, /* data layer */ 395 &kutbltck /* TAILCHK */ 396 }; 397 398 /* K_BTTRDA, KDDBTLOBF: KTB Data, lob block layers defn */ 399 static const kutbl *const kutbltl[] = 400 { 401 &kutblcb, /* cache layer */ 402 &kutbltb, /* transaction layer */ 403 /*&kutbldl,*/ /* lob layer */ 404 &kutbltck /* TAILCHK */
bbed的源码是这样做的
KTB Data, data block layers
判断一个块的类型 然后决定 其由那几个部分组成
这样比较先进一点
例如 首先判断 block_type 之后 有相关的函数来初始化
initial_kcbh();
initial_ktbbh();
如果没有该部分就不初始化。
Leave a Reply