just carried out another test with larger values


SQL> exec filltest(1, 10000)

PL/SQL procedure successfully completed.

SQL>
SQL> analyze index test_pk validate structure;

Index analyzed.

SQL> select btree_space, used_space, pct_used, lf_rows, del_lf_rows
2 from index_stats;

BTREE_SPACE USED_SPACE PCT_USED LF_ROWS DEL_LF_ROWS
----------- ---------- ---------- ---------- -----------
151956 139971 93 10000 0

SQL> delete test where empno > 5000;

5000 rows deleted.

SQL> analyze index test_pk validate structure;

Index analyzed.

SQL> select btree_space, used_space, pct_used, lf_rows, del_lf_rows
2 from index_stats;

BTREE_SPACE USED_SPACE PCT_USED LF_ROWS DEL_LF_ROWS
----------- ---------- ---------- ---------- -----------
151956 139971 93 10000 5000

SQL> exec filltest(10001, 11000)

PL/SQL procedure successfully completed.

SQL> analyze index test_pk validate structure;

Index analyzed.

SQL> select btree_space, used_space, pct_used, lf_rows, del_lf_rows
2 from index_stats;

BTREE_SPACE USED_SPACE PCT_USED LF_ROWS DEL_LF_ROWS
----------- ---------- ---------- ---------- -----------
151956 134985 89 9572 3572


The last part is pretty confusing, the numbers dont match....