Documentation of 'org.tmatesoft.sqljet.core.internal.pager.SqlJetPageCache' Java class
SqlJetPageCache
org.tmatesoft.sqljet.core.internal.pager

Class SqlJetPageCache

  • All Implemented Interfaces:
    ISqlJetPageCache


    public class SqlJetPageCache
    extends java.lang.Object
    implements ISqlJetPageCache
    A complete page cache is an instance of this structure.
    • Field Detail

      • SQLJET_PAGE_CACHE_SIZE

        public static final java.lang.String SQLJET_PAGE_CACHE_SIZE
        System property name for cache size configuration.
        See Also:
        Constant Field Values
      • PAGE_CACHE_SIZE_DEFAULT

        public static final int PAGE_CACHE_SIZE_DEFAULT
        See Also:
        Constant Field Values
      • PAGE_CACHE_SIZE_MINIMUM

        public static final int PAGE_CACHE_SIZE_MINIMUM
        See Also:
        Constant Field Values
    • Method Detail

      • open

        public void open(int szPage,
                         boolean purgeable,
                         ISqlJetPageCallback stress)
        Description copied from interface: ISqlJetPageCache
        Create a new pager cache. Under memory stress, invoke xStress to try to make pages clean. Only clean and unpinned pages can be reclaimed.
        Specified by:
        open in interface ISqlJetPageCache
        Parameters:
        szPage - Size of every page
        purgeable - True if pages are on backing store
        stress - Call to try to make pages clean
      • setPageSize

        public void setPageSize(int pageSize)
        Description copied from interface: ISqlJetPageCache
        Modify the page-size after the cache has been created. Change the page size for PCache object. This can only happen when the cache is empty.
        Specified by:
        setPageSize in interface ISqlJetPageCache
      • release

        public void release(ISqlJetPage page)
        Description copied from interface: ISqlJetPageCache
        Dereference a page. When the reference count reaches zero, move the page to the LRU list if it is clean. One release per successful fetch. Page is pinned until released. Reference counted.
        Specified by:
        release in interface ISqlJetPageCache
      • drop

        public void drop(ISqlJetPage page)
        Description copied from interface: ISqlJetPageCache
        Remove page from cache Drop a page from the cache. There must be exactly one reference to the page. This function deletes that reference, so after it returns the page pointed to by p is invalid.
        Specified by:
        drop in interface ISqlJetPageCache
      • cleanAll

        public void cleanAll()
        Description copied from interface: ISqlJetPageCache
        Mark all dirty list pages as clean Make every page in the cache clean.
        Specified by:
        cleanAll in interface ISqlJetPageCache
      • move

        public void move(ISqlJetPage page,
                         int newPgno)
        Description copied from interface: ISqlJetPageCache
        Change a page number. Used by incr-vacuum. Change the page number of page p to newPgno. If newPgno is 0, then the page object is added to the clean-list and the PGHDR_REUSE_UNLIKELY flag set.
        Specified by:
        move in interface ISqlJetPageCache
      • truncate

        public void truncate(int pgno)
        Description copied from interface: ISqlJetPageCache
        Remove all pages with page numbers more than pageNumber. Reset the cache if pageNumber==0 Drop every cache entry whose page number is greater than "pgno".
        Specified by:
        truncate in interface ISqlJetPageCache
      • setCacheSize

        public void setCacheSize(int mxPage)
        Description copied from interface: ISqlJetPageCache
        Set the suggested cache-size for the pager-cache. If no global maximum is configured, then the system attempts to limit the total number of pages cached by purgeable pager-caches to the sum of the suggested cache-sizes.
        Specified by:
        setCacheSize in interface ISqlJetPageCache

DataMelt 3.0 © DataMelt by jWork.ORG

Ads help maintain this website.