use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createIssueFilters.
private void createIssueFilters(Context context) throws SQLException {
VarcharColumnDef nameCol = newLenientVarcharBuilder("name").setLimit(100).setIsNullable(false).build();
context.execute(newTableBuilder("issue_filters").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(nameCol).addColumn(newLenientVarcharBuilder("user_login").setLimit(255).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("shared").setIsNullable(false).setDefaultValue(false).build()).addColumn(newLenientVarcharBuilder("description").setLimit(4000).build()).addColumn(newClobColumnDefBuilder().setColumnName("data").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("created_at").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("updated_at").build()).build());
addIndex(context, "issue_filters", "issue_filters_name", false, nameCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createManualMeasures.
private void createManualMeasures(Context context) throws SQLException {
VarcharColumnDef componentUuidCol = newLenientVarcharBuilder("component_uuid").setLimit(50).build();
context.execute(newTableBuilder("manual_measures").addPkColumn(newBigIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newIntegerColumnDefBuilder().setColumnName("metric_id").setIsNullable(false).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("value").setPrecision(38).setScale(20).build()).addColumn(newLenientVarcharBuilder("text_value").setLimit(4000).build()).addColumn(newLenientVarcharBuilder("user_login").setLimit(255).build()).addColumn(newLenientVarcharBuilder("description").setLimit(4000).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("updated_at").build()).addColumn(componentUuidCol).build());
addIndex(context, "manual_measures", "manual_measures_component_uuid", false, componentUuidCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createMeasureFilters.
private void createMeasureFilters(Context context) throws SQLException {
VarcharColumnDef nameCol = newLenientVarcharBuilder("name").setLimit(100).setIsNullable(false).build();
context.execute(newTableBuilder("measure_filters").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(nameCol).addColumn(newIntegerColumnDefBuilder().setColumnName("user_id").build()).addColumn(newBooleanColumnDefBuilder().setColumnName("shared").setDefaultValue(false).setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("description").setLimit(4000).build()).addColumn(newClobColumnDefBuilder().setColumnName("data").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("created_at").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("updated_at").build()).build());
addIndex(context, "measure_filters", "measure_filters_name", false, nameCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createFileSources.
private void createFileSources(Context context) throws SQLException {
VarcharColumnDef projectUuidCol = newLenientVarcharBuilder("project_uuid").setLimit(50).setIsNullable(false).build();
BigIntegerColumnDef updatedAtCol = newBigIntegerColumnDefBuilder().setColumnName("updated_at").setIsNullable(false).build();
VarcharColumnDef dataTypeCol = newLenientVarcharBuilder("data_type").setLimit(20).build();
VarcharColumnDef fileUuidCol = newLenientVarcharBuilder("file_uuid").setLimit(50).setIsNullable(false).build();
context.execute(newTableBuilder("file_sources").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(projectUuidCol).addColumn(fileUuidCol).addColumn(newClobColumnDefBuilder().setColumnName("line_hashes").build()).addColumn(newLenientVarcharBuilder("data_hash").setLimit(50).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").setIsNullable(false).build()).addColumn(updatedAtCol).addColumn(newLenientVarcharBuilder("src_hash").setLimit(50).build()).addColumn(newBlobColumnDefBuilder().setColumnName("binary_data").build()).addColumn(dataTypeCol).addColumn(newLenientVarcharBuilder("revision").setLimit(100).build()).build());
addIndex(context, "file_sources", "file_sources_project_uuid", false, projectUuidCol);
addIndex(context, "file_sources", "file_sources_updated_at", false, updatedAtCol);
addIndex(context, "file_sources", "file_sources_uuid_type", true, fileUuidCol, dataTypeCol);
}
use of org.sonar.server.platform.db.migration.def.VarcharColumnDef in project sonarqube by SonarSource.
the class CreateInitialSchema method createMetrics.
private void createMetrics(Context context) throws SQLException {
VarcharColumnDef nameCol = newLenientVarcharBuilder("name").setLimit(64).setIsNullable(false).build();
context.execute(newTableBuilder("metrics").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(nameCol).addColumn(newLenientVarcharBuilder("description").setLimit(255).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("direction").setIsNullable(false).setDefaultValue(0).build()).addColumn(newLenientVarcharBuilder("domain").setLimit(64).build()).addColumn(newLenientVarcharBuilder("short_name").setLimit(64).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("qualitative").setDefaultValue(false).setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("val_type").setLimit(8).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("user_managed").setDefaultValue(false).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("enabled").setDefaultValue(true).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("worst_value").setPrecision(38).setScale(20).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("best_value").setPrecision(38).setScale(20).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("optimized_best_value").build()).addColumn(newBooleanColumnDefBuilder().setColumnName("hidden").build()).addColumn(newBooleanColumnDefBuilder().setColumnName("delete_historical_data").build()).addColumn(newIntegerColumnDefBuilder().setColumnName("decimal_scale").build()).build());
addIndex(context, "metrics", "metrics_unique_name", true, nameCol);
}
Aggregations