public void setQueryTimeout(int queryTimeout) { int max = database.getSettings().maxQueryTimeout; if (max != 0 && (max < queryTimeout || queryTimeout == 0)) { // the value must be at most max queryTimeout = max; } this.queryTimeout = queryTimeout; // must reset the cancel at here, // otherwise it is still used this.cancelAtNs = 0; }
public CompareLike(Database db, Expression left, Expression right, Expression escape, boolean regexp) { this(db.getCompareMode(), db.getSettings().defaultEscape, left, right, escape, regexp); }
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); }
public Parser(Session session) { this.database = session.getDatabase(); this.identifiersToUpper = database.getSettings().databaseToUpper; this.session = session; }
@Override public String listSettings() { StringBuilder buff = new StringBuilder(); for (Map.Entry<String, String> e : new TreeMap<>( database.getSettings().getSettings()).entrySet()) { buff.append(e.getKey()).append(" = ").append(e.getValue()).append('\n'); } return buff.toString(); }
private PageBtreeNode(PageBtreeIndex index, int pageId, Data data) { super(index, pageId, data); this.pageStoreInternalCount = index.getDatabase(). getSettings().pageStoreInternalCount; }
public DropTable(Session session, Schema schema) { super(session, schema); dropAction = session.getDatabase().getSettings().dropRestrict ? ConstraintActionType.RESTRICT : ConstraintActionType.CASCADE; }
public DropView(Session session, Schema schema) { super(session, schema); dropAction = session.getDatabase().getSettings().dropRestrict ? ConstraintActionType.RESTRICT : ConstraintActionType.CASCADE; }
public DropSchema(Session session) { super(session); dropAction = session.getDatabase().getSettings().dropRestrict ? ConstraintActionType.RESTRICT : ConstraintActionType.CASCADE; }
/** * Create a new undo log for the given session. * * @param session the session */ UndoLog(Session session) { this.database = session.getDatabase(); largeTransactions = database.getSettings().largeTransactions; }
public Analyze(Session session) { super(session); sampleRows = session.getDatabase().getSettings().analyzeSample; }
private PageDataLeaf(PageDataIndex index, int pageId, Data data) { super(index, pageId, data); this.optimizeUpdate = index.getDatabase().getSettings().optimizeUpdate; }
private PageBtreeLeaf(PageBtreeIndex index, int pageId, Data data) { super(index, pageId, data); this.optimizeUpdate = index.getDatabase().getSettings().optimizeUpdate; }
@Override public Column getRowIdColumn() { if (session.getDatabase().getSettings().rowId) { return table.getRowIdColumn(); } return null; }
private Column parseColumn(Table table) { String id = readColumnIdentifier(); if (database.getSettings().rowId && Column.ROWID.equals(id)) { return table.getRowIdColumn(); } return table.getColumn(id); }
public Session(Database database, User user, int id) { this.database = database; this.queryTimeout = database.getSettings().maxQueryTimeout; this.queryCacheSize = database.getSettings().queryCacheSize; this.undoLog = new UndoLog(this); this.user = user; this.id = id; Setting setting = database.findSetting( SetTypes.getTypeName(SetTypes.DEFAULT_LOCK_TIMEOUT)); this.lockTimeout = setting == null ? Constants.INITIAL_LOCK_TIMEOUT : setting.getIntValue(); this.currentSchemaName = Constants.SCHEMA_MAIN; this.columnNamerConfiguration = ColumnNamerConfiguration.getDefault(); }
@Override public void setForUpdate(boolean b) { this.isForUpdate = b; if (session.getDatabase().getSettings().selectForUpdateMvcc && session.getDatabase().isMultiVersion()) { isForUpdateMvcc = b; } }
@Override public double getCost(Session session, int[] masks, TableFilter[] filters, int filter, SortOrder sortOrder, HashSet<Column> allColumnsSet) { if (masks != null) { throw DbException.getUnsupportedException("ALIAS"); } long expectedRows; if (functionTable.canGetRowCount()) { expectedRows = functionTable.getRowCountApproximation(); } else { expectedRows = database.getSettings().estimatedFunctionTableRows; } return expectedRows * 10; }
@Override public String getSQL() { // TODO can remove this method once FUNCTIONS_IN_SCHEMA is enabled if (database.getSettings().functionsInSchema || !getSchema().getName().equals(Constants.SCHEMA_MAIN)) { return super.getSQL(); } return Parser.quoteIdentifier(getName()); }
@Override public void createIndexConditions(Session session, TableFilter filter) { if (!(left instanceof ExpressionColumn)) { return; } ExpressionColumn l = (ExpressionColumn) left; if (filter != l.getTableFilter()) { return; } if (session.getDatabase().getSettings().optimizeInList) { filter.addIndexCondition(IndexCondition.getInList(l, valueList)); } }