Lines Matching full:free

44  * Free Space Btree Repair
48 * AG. Therefore, we can recreate the free extent records in an AG by looking
53 * Because the final step of building a new index is to free the space used by
55 * structures that live in the free space (bnobt, cntbt, rmapbt, agfl) share
86 * We use the prefix 'xrep_abt' here because we regenerate both free space
106 /* Free space extents. */
114 /* get_records()'s position in the free space record array. */
123 /* Number of free blocks in this AG. */
126 /* Longest free extent we found in the AG. */
130 /* Set up to repair AG free space btrees. */
148 /* Check for any obvious conflicts in the free extent. */
191 * Stash a free space record for all the space since the last bno we found
246 /* ...and all the free space. */ in xrep_abt_walk_rmap()
275 * Compare two free space extents by block number. We want to sort in order of
294 * Re-sort the free extents by block number so that we can put the records into
322 * Compare two free space extents by length and then block number. We want
342 * Sort the free extents by length so so that we can put the records into the
357 * unowned space), (2) the OWN_AG extents (which encompass the free space
359 * blocks. The free space is (1) + (2) - (3) - (4).
417 * We're going to use the observed free space records to reserve blocks for the
418 * new free space btrees, so we play an iterative game where we try to converge
422 * 2. If the first free record has more blocks than we need, we're done.
500 * free records doesn't change, so shrink the free in xrep_abt_reserve_space()
517 * move on to the next one. This changes the number of free in xrep_abt_reserve_space()
550 * For each reserved btree block we didn't use, add it to the free in xrep_abt_dispose_one()
570 * free space btrees need to have a (deferred) rmap added for the OWN_AG
601 /* Retrieve free space data for bulk load. */
644 * Reset the AGF counters to reflect the free space btrees that we just
657 * Compute the contribution to agf_btreeblks for the new free space in xrep_abt_reset_counters()
668 * The AGF header contains extra information related to the free space in xrep_abt_reset_counters()
698 * Use the collected free space information to stage new free space btrees.
714 * Sort the free extents by length so that we can set up the free space in xrep_abt_build_new_trees()
716 * deferred rmap / free work we have to do at the end. in xrep_abt_build_new_trees()
754 * If we need to re-sort the free extents by length, do so so that we in xrep_abt_build_new_trees()
772 /* Load the free space by length tree. */ in xrep_abt_build_new_trees()
783 /* Load the free space by block number tree. */ in xrep_abt_build_new_trees()
821 * old blocks and free them.
830 /* Free the old btree blocks if they're not in use. */ in xrep_abt_remove_old_trees()
877 /* Set up enough storage to handle maximally fragmented free space. */ in xrep_allocbt()
878 descr = xchk_xfile_ag_descr(sc, "free space records"); in xrep_allocbt()
886 /* Collect the free space data and find the old btree blocks. */ in xrep_allocbt()
892 /* Rebuild the free space information. */ in xrep_allocbt()