Interface ReuseList
-
- All Known Implementing Classes:
AbstractFreeList,CacheFreeList,PartitionMetaStorageImpl,ReuseListImpl
public interface ReuseListReuse list.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidaddForRecycle(ReuseBag bag)longinitRecycledPage(long pageId, byte flag, @Nullable PageIO initIO)Converts recycled page id back to a usable id.longrecycledPagesCount()longtakeRecycledPage()
-
-
-
Method Detail
-
addForRecycle
void addForRecycle(ReuseBag bag) throws IgniteCheckedException
- Parameters:
bag- Reuse bag.- Throws:
IgniteCheckedException- If failed.
-
takeRecycledPage
long takeRecycledPage() throws IgniteCheckedException- Returns:
- Page ID or
0if none available. - Throws:
IgniteCheckedException- If failed.
-
recycledPagesCount
long recycledPagesCount() throws IgniteCheckedException- Returns:
- Number of recycled pages it contains.
- Throws:
IgniteCheckedException- If failed.
-
initRecycledPage
long initRecycledPage(long pageId, byte flag, @Nullable @Nullable PageIO initIO) throws IgniteCheckedExceptionConverts recycled page id back to a usable id. Might modify page content as well if flag is changing.- Parameters:
pageId- Id of the recycled page.flag- Flag value for the page. One ofPageIdAllocator.FLAG_DATA,PageIdAllocator.FLAG_IDXorPageIdAllocator.FLAG_AUX.initIO- Page IO to reinit reused page.- Returns:
- Updated page id.
- Throws:
IgniteCheckedException- If failed.- See Also:
FullPageId
-
-