public int getExpectedHeight(long sizeHint) { if (sizeHint == 0) { return 0; } int logSize = 1; while (sizeHint > this.getPageSize(logSize==0)) { logSize++; sizeHint/=this.getPageSize(logSize==0); } return logSize; }
public int getExpectedHeight(long sizeHint) { if (sizeHint == 0) { return 0; } int logSize = 1; while (sizeHint > this.getPageSize(logSize==0)) { logSize++; sizeHint/=this.getPageSize(logSize==0); } return logSize; }
public int getExpectedHeight(long sizeHint) { if (sizeHint == 0) { return 0; } int logSize = 1; while (sizeHint > this.getPageSize(logSize==0)) { logSize++; sizeHint/=this.getPageSize(logSize==0); } return logSize; }
int index = -result.index - 1; boolean leaf = !(value instanceof SPage); if (result.values.size() == getPageSize(leaf)) { SPage nextPage = new SPage(this, leaf); List<List<?>> nextValues = nextPage.getValues(); if (!ordered) { nextValues.addAll(result.values.subList(getPageSize(leaf)/2, getPageSize(leaf))); result.values.subList(getPageSize(leaf)/2, getPageSize(leaf)).clear(); if (!leaf) { nextPage.children.addAll(page.children.subList(getPageSize(leaf)/2, getPageSize(false))); page.children.subList(getPageSize(false)/2, getPageSize(false)).clear(); if (index <= getPageSize(leaf)/2) { setValue(index, k, value, result.values, page); } else { inNext = true; setValue(index - getPageSize(leaf)/2, k, value, nextValues, nextPage);
int index = -result.index - 1; boolean leaf = !(value instanceof SPage); if (result.values.size() == getPageSize(leaf)) { SPage nextPage = new SPage(this, leaf); List<List<?>> nextValues = nextPage.getValues(); if (!ordered) { nextValues.addAll(result.values.subList(getPageSize(leaf)/2, getPageSize(leaf))); result.values.subList(getPageSize(leaf)/2, getPageSize(leaf)).clear(); if (!leaf) { nextPage.children.addAll(page.children.subList(getPageSize(leaf)/2, getPageSize(false))); page.children.subList(getPageSize(false)/2, getPageSize(false)).clear(); if (index <= getPageSize(leaf)/2) { setValue(index, k, value, result.values, page); } else { inNext = true; setValue(index - getPageSize(leaf)/2, k, value, nextValues, nextPage);
int index = -result.index - 1; boolean leaf = !(value instanceof SPage); if (result.values.size() == getPageSize(leaf)) { SPage nextPage = new SPage(this, leaf); List<List<?>> nextValues = nextPage.getValues(); if (!ordered) { nextValues.addAll(result.values.subList(getPageSize(leaf)/2, getPageSize(leaf))); result.values.subList(getPageSize(leaf)/2, getPageSize(leaf)).clear(); if (!leaf) { nextPage.children.addAll(page.children.subList(getPageSize(leaf)/2, getPageSize(false))); page.children.subList(getPageSize(false)/2, getPageSize(false)).clear(); if (index <= getPageSize(leaf)/2) { setValue(index, k, value, result.values, page); } else { inNext = true; setValue(index - getPageSize(leaf)/2, k, value, nextValues, nextPage);
} else if (size < getPageSize(leaf)/2) { if (nextValues.size() < getPageSize(leaf)/4) { SPage.merge(places, nextValues, searchResult.page, searchResult.values); continue; if (prevValues.size() < getPageSize(leaf)/4) { SPage.merge(places, searchResult.values, searchResult.page.prev, prevValues); continue;
} else if (size < getPageSize(leaf)/2) { if (nextValues.size() < getPageSize(leaf)/4) { SPage.merge(places, nextValues, searchResult.page, searchResult.values); continue; if (prevValues.size() < getPageSize(leaf)/4) { SPage.merge(places, searchResult.values, searchResult.page.prev, prevValues); continue;
level = randomLevel(); } else if (!places.isEmpty() && places.getLast().values.size() == getPageSize(true)) { long row = rowCount.get(); while (row != 0 && row%getPageSize(true) == 0) { row = (row - getPageSize(true) + 1)/getPageSize(true); level++;
} else if (size < getPageSize(leaf)/2) { if (nextValues.size() < getPageSize(leaf)/4) { SPage.merge(places, nextValues, searchResult.page, searchResult.values); continue; if (prevValues.size() < getPageSize(leaf)/4) { SPage.merge(places, searchResult.values, searchResult.page.prev, prevValues); continue;
level = randomLevel(); } else if (!places.isEmpty() && places.getLast().values.size() == getPageSize(true)) { long row = rowCount.get(); while (row != 0 && row%getPageSize(true) == 0) { row = (row - getPageSize(true) + 1)/getPageSize(true); level++;
level = randomLevel(); } else if (!places.isEmpty() && places.getLast().values.size() == getPageSize(true)) { long row = rowCount.get(); while (row != 0 && row%getPageSize(true) == 0) { row = (row - getPageSize(true) + 1)/getPageSize(true); level++;
if ((indexTables != null || (!this.updatable && allowImplicitIndexing && condition != null && this.getRowCount() > 2*this.getTree().getPageSize(true))) && (condition != null || orderBy != null) && ii.valueSet.size() != 1) { LogManager.logDetail(LogConstants.CTX_DQP, "Considering indexes on table", this, "for query", projectedCols, condition, orderBy); //$NON-NLS-1$ //$NON-NLS-2$ long rowCost = this.tree.getRowCount();
if ((indexTables != null || (!this.updatable && allowImplicitIndexing && condition != null && this.getRowCount() > 2*this.getTree().getPageSize(true))) && (condition != null || orderBy != null) && ii.valueSet.size() != 1) { LogManager.logDetail(LogConstants.CTX_DQP, "Considering indexes on table", this, "for query", projectedCols, condition, orderBy); //$NON-NLS-1$ //$NON-NLS-2$ long rowCost = this.tree.getRowCount();
Assertion.isNotNull(tt, "Table doesn't exist"); //$NON-NLS-1$ tt.setUpdatable(false); if (att.getIndexColumns() != null && tt.getRowCount() > 2*tt.getTree().getPageSize(true)) { for (List<ElementSymbol> cols : att.getIndexColumns()) { tt.addIndex(cols, false);