private void increaseFileSize() { int increment = INCREMENT_KB * 1024 / pageSize; int percent = pageCount * INCREMENT_PERCENT_MIN / 100; if (increment < percent) { increment = (1 + (percent / increment)) * increment; } int max = database.getSettings().pageStoreMaxGrowth; if (max < increment) { increment = max; } increaseFileSize(increment); }
private PageFreeList getFreeList(int i) { PageFreeList list = null; if (i < freeLists.size()) { list = freeLists.get(i); if (list != null) { return list; } } int p = PAGE_ID_FREE_LIST_ROOT + i * freeListPagesPerList; while (p >= pageCount) { increaseFileSize(); } if (p < pageCount) { list = (PageFreeList) getPage(p); } if (list == null) { list = PageFreeList.create(this, p); cache.put(list); } while (freeLists.size() <= i) { freeLists.add(null); } freeLists.set(i, list); return list; }
private int allocatePage(BitField exclude, int first) { int page; for (int i = firstFreeListIndex;; i++) { PageFreeList list = getFreeList(i); page = list.allocate(exclude, first); if (page >= 0) { firstFreeListIndex = i; break; } } while (page >= pageCount) { increaseFileSize(); } if (trace.isDebugEnabled()) { // trace.debug("allocatePage " + pos); } return page; }
private void openNew() { setPageSize(pageSize); freeListPagesPerList = PageFreeList.getPagesAddressed(pageSize); file = database.openFile(fileName, accessMode, false); lockFile(); recoveryRunning = true; writeStaticHeader(); writeVariableHeader(); log = new PageLog(this); increaseFileSize(MIN_PAGE_COUNT); openMetaIndex(); logFirstTrunkPage = allocatePage(); log.openForWriting(logFirstTrunkPage, false); isNew = true; recoveryRunning = false; increaseFileSize(); }
private void increaseFileSize() { int increment = INCREMENT_KB * 1024 / pageSize; int percent = pageCount * INCREMENT_PERCENT_MIN / 100; if (increment < percent) { increment = (1 + (percent / increment)) * increment; } int max = database.getSettings().pageStoreMaxGrowth; if (max < increment) { increment = max; } increaseFileSize(increment); }
private void increaseFileSize() { int increment = INCREMENT_KB * 1024 / pageSize; int percent = pageCount * INCREMENT_PERCENT_MIN / 100; if (increment < percent) { increment = (1 + (percent / increment)) * increment; } int max = database.getSettings().pageStoreMaxGrowth; if (max < increment) { increment = max; } increaseFileSize(increment); }
private PageFreeList getFreeList(int i) { PageFreeList list = null; if (i < freeLists.size()) { list = freeLists.get(i); if (list != null) { return list; } } int p = PAGE_ID_FREE_LIST_ROOT + i * freeListPagesPerList; while (p >= pageCount) { increaseFileSize(); } if (p < pageCount) { list = (PageFreeList) getPage(p); } if (list == null) { list = PageFreeList.create(this, p); cache.put(list); } while (freeLists.size() <= i) { freeLists.add(null); } freeLists.set(i, list); return list; }
private PageFreeList getFreeList(int i) { PageFreeList list = null; if (i < freeLists.size()) { list = freeLists.get(i); if (list != null) { return list; } } int p = PAGE_ID_FREE_LIST_ROOT + i * freeListPagesPerList; while (p >= pageCount) { increaseFileSize(); } if (p < pageCount) { list = (PageFreeList) getPage(p); } if (list == null) { list = PageFreeList.create(this, p); cache.put(list); } while (freeLists.size() <= i) { freeLists.add(null); } freeLists.set(i, list); return list; }
private int allocatePage(BitField exclude, int first) { int page; for (int i = firstFreeListIndex;; i++) { PageFreeList list = getFreeList(i); page = list.allocate(exclude, first); if (page >= 0) { firstFreeListIndex = i; break; } } while (page >= pageCount) { increaseFileSize(); } if (trace.isDebugEnabled()) { // trace.debug("allocatePage " + pos); } return page; }
private int allocatePage(BitField exclude, int first) { int page; for (int i = firstFreeListIndex;; i++) { PageFreeList list = getFreeList(i); page = list.allocate(exclude, first); if (page >= 0) { firstFreeListIndex = i; break; } } while (page >= pageCount) { increaseFileSize(); } if (trace.isDebugEnabled()) { // trace.debug("allocatePage " + pos); } return page; }
private void openNew() { setPageSize(pageSize); freeListPagesPerList = PageFreeList.getPagesAddressed(pageSize); file = database.openFile(fileName, accessMode, false); lockFile(); recoveryRunning = true; writeStaticHeader(); writeVariableHeader(); log = new PageLog(this); increaseFileSize(MIN_PAGE_COUNT); openMetaIndex(); logFirstTrunkPage = allocatePage(); log.openForWriting(logFirstTrunkPage, false); isNew = true; recoveryRunning = false; increaseFileSize(); }
private void openNew() { setPageSize(pageSize); freeListPagesPerList = PageFreeList.getPagesAddressed(pageSize); file = database.openFile(fileName, accessMode, false); lockFile(); recoveryRunning = true; writeStaticHeader(); writeVariableHeader(); log = new PageLog(this); increaseFileSize(MIN_PAGE_COUNT); openMetaIndex(); logFirstTrunkPage = allocatePage(); log.openForWriting(logFirstTrunkPage, false); isNew = true; recoveryRunning = false; increaseFileSize(); }