Search in sources :

Example 1 with IntegerColumnDef

use of org.sonar.server.platform.db.migration.def.IntegerColumnDef in project sonarqube by SonarSource.

the class CreateInitialSchema method createIssues.

private void createIssues(Context context) throws SQLException {
    VarcharColumnDef assigneeCol = newLenientVarcharBuilder("assignee").setLimit(255).build();
    VarcharColumnDef componentUuidCol = newLenientVarcharBuilder("component_uuid").setLimit(50).build();
    BigIntegerColumnDef issueCreationDateCol = newBigIntegerColumnDefBuilder().setColumnName("issue_creation_date").build();
    VarcharColumnDef keeCol = newLenientVarcharBuilder("kee").setLimit(50).setIsNullable(false).build();
    VarcharColumnDef projectUuidCol = newLenientVarcharBuilder("project_uuid").setLimit(50).build();
    VarcharColumnDef resolutionCol = newLenientVarcharBuilder("resolution").setLimit(20).build();
    IntegerColumnDef ruleIdCol = newIntegerColumnDefBuilder().setColumnName("rule_id").build();
    BigIntegerColumnDef updatedAtCol = newBigIntegerColumnDefBuilder().setColumnName("updated_at").build();
    context.execute(newTableBuilder("issues").addPkColumn(newBigIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(keeCol).addColumn(ruleIdCol).addColumn(newLenientVarcharBuilder("severity").setLimit(10).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("manual_severity").setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("message").setIgnoreOracleUnit(false).setLimit(4000).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("line").build()).addColumn(newDecimalColumnDefBuilder().setColumnName("gap").setPrecision(30).setScale(20).build()).addColumn(newLenientVarcharBuilder("status").setLimit(20).build()).addColumn(resolutionCol).addColumn(newLenientVarcharBuilder("checksum").setLimit(1000).build()).addColumn(newLenientVarcharBuilder("reporter").setLimit(255).build()).addColumn(assigneeCol).addColumn(newLenientVarcharBuilder("author_login").setLimit(255).build()).addColumn(newLenientVarcharBuilder("action_plan_key").setLimit(50).build()).addColumn(newLenientVarcharBuilder("issue_attributes").setLimit(4000).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("effort").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").build()).addColumn(updatedAtCol).addColumn(issueCreationDateCol).addColumn(newBigIntegerColumnDefBuilder().setColumnName("issue_update_date").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("issue_close_date").build()).addColumn(newLenientVarcharBuilder("tags").setLimit(4000).build()).addColumn(componentUuidCol).addColumn(projectUuidCol).addColumn(newBlobColumnDefBuilder().setColumnName("locations").build()).addColumn(new TinyIntColumnDef.Builder().setColumnName("issue_type").build()).build());
    addIndex(context, "issues", "issues_assignee", false, assigneeCol);
    addIndex(context, "issues", "issues_component_uuid", false, componentUuidCol);
    addIndex(context, "issues", "issues_creation_date", false, issueCreationDateCol);
    addIndex(context, "issues", "issues_kee", true, keeCol);
    addIndex(context, "issues", "issues_project_uuid", false, projectUuidCol);
    addIndex(context, "issues", "issues_resolution", false, resolutionCol);
    addIndex(context, "issues", "issues_rule_id", false, ruleIdCol);
    addIndex(context, "issues", "issues_updated_at", false, updatedAtCol);
}
Also used : TinyIntColumnDef(org.sonar.server.platform.db.migration.def.TinyIntColumnDef) VarcharColumnDef(org.sonar.server.platform.db.migration.def.VarcharColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef) IntegerColumnDef(org.sonar.server.platform.db.migration.def.IntegerColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 2 with IntegerColumnDef

use of org.sonar.server.platform.db.migration.def.IntegerColumnDef in project sonarqube by SonarSource.

the class CreateInitialSchema method createProjectMeasures.

private void createProjectMeasures(Context context) throws SQLException {
    IntegerColumnDef personIdCol = newIntegerColumnDefBuilder().setColumnName("person_id").build();
    IntegerColumnDef metricIdCol = newIntegerColumnDefBuilder().setColumnName("metric_id").setIsNullable(false).build();
    IntegerColumnDef snapshotIdCol = newIntegerColumnDefBuilder().setColumnName("snapshot_id").setIsNullable(true).build();
    context.execute(newTableBuilder("project_measures").addPkColumn(newBigIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(newDecimalColumnDefBuilder().setColumnName("value").setPrecision(38).setScale(20).build()).addColumn(metricIdCol).addColumn(snapshotIdCol).addColumn(newIntegerColumnDefBuilder().setColumnName("rule_id").setIsNullable(true).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("rules_category_id").setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("text_value").setLimit(4000).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("tendency").build()).addColumn(newTimestampColumnDefBuilder().setColumnName("measure_date").build()).addColumn(newIntegerColumnDefBuilder().setColumnName("project_id").build()).addColumn(newLenientVarcharBuilder("alert_status").setLimit(5).build()).addColumn(newLenientVarcharBuilder("alert_text").setLimit(4000).build()).addColumn(newLenientVarcharBuilder("url").setLimit(2000).build()).addColumn(newLenientVarcharBuilder("description").setLimit(4000).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("rule_priority").build()).addColumn(newIntegerColumnDefBuilder().setColumnName("characteristic_id").build()).addColumn(personIdCol).addColumn(newDecimalColumnDefBuilder().setColumnName("variation_value_1").setPrecision(38).setScale(20).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("variation_value_2").setPrecision(38).setScale(20).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("variation_value_3").setPrecision(38).setScale(20).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("variation_value_4").setPrecision(38).setScale(20).build()).addColumn(newDecimalColumnDefBuilder().setColumnName("variation_value_5").setPrecision(38).setScale(20).build()).addColumn(newBlobColumnDefBuilder().setColumnName("measure_data").build()).build());
    addIndex(context, "project_measures", "measures_sid_metric", false, snapshotIdCol, metricIdCol);
    addIndex(context, "project_measures", "measures_person", false, personIdCol);
}
Also used : IntegerColumnDef(org.sonar.server.platform.db.migration.def.IntegerColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 3 with IntegerColumnDef

use of org.sonar.server.platform.db.migration.def.IntegerColumnDef in project sonarqube by SonarSource.

the class CreateInitialSchema method createResourceIndex.

private void createResourceIndex(Context context) throws SQLException {
    VarcharColumnDef keeCol = newLenientVarcharBuilder("kee").setLimit(400).setIsNullable(false).build();
    IntegerColumnDef resourceIdCol = newIntegerColumnDefBuilder().setColumnName("resource_id").setIsNullable(false).build();
    context.execute(newTableBuilder("resource_index").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(keeCol).addColumn(newIntegerColumnDefBuilder().setColumnName("position").setIsNullable(false).build()).addColumn(newIntegerColumnDefBuilder().setColumnName("name_size").setIsNullable(false).build()).addColumn(resourceIdCol).addColumn(newIntegerColumnDefBuilder().setColumnName("root_project_id").setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("qualifier").setLimit(10).setIsNullable(false).build()).build());
    addIndex(context, "resource_index", "resource_index_key", false, keeCol);
    addIndex(context, "resource_index", "resource_index_rid", false, resourceIdCol);
}
Also used : VarcharColumnDef(org.sonar.server.platform.db.migration.def.VarcharColumnDef) IntegerColumnDef(org.sonar.server.platform.db.migration.def.IntegerColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 4 with IntegerColumnDef

use of org.sonar.server.platform.db.migration.def.IntegerColumnDef in project sonarqube by SonarSource.

the class CreateInitialSchema method createActiveRules.

private void createActiveRules(Context context) throws SQLException {
    IntegerColumnDef profileIdCol = newIntegerColumnDefBuilder().setColumnName("profile_id").setIsNullable(false).build();
    IntegerColumnDef ruleIdCol = newIntegerColumnDefBuilder().setColumnName("rule_id").setIsNullable(false).build();
    context.execute(newTableBuilder("active_rules").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(profileIdCol).addColumn(ruleIdCol).addColumn(newIntegerColumnDefBuilder().setColumnName("failure_level").setIsNullable(false).build()).addColumn(newLenientVarcharBuilder("inheritance").setLimit(10).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("updated_at").build()).build());
    addIndex(context, "active_rules", "uniq_profile_rule_ids", true, profileIdCol, ruleIdCol);
}
Also used : IntegerColumnDef(org.sonar.server.platform.db.migration.def.IntegerColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 5 with IntegerColumnDef

use of org.sonar.server.platform.db.migration.def.IntegerColumnDef in project sonarqube by SonarSource.

the class CreateInitialSchema method createWidgetProperties.

private void createWidgetProperties(Context context) throws SQLException {
    IntegerColumnDef widgetIdCol = newIntegerColumnDefBuilder().setColumnName("widget_id").setIsNullable(false).build();
    context.execute(newTableBuilder("widget_properties").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(widgetIdCol).addColumn(newLenientVarcharBuilder("kee").setLimit(100).setIsNullable(true).build()).addColumn(newLenientVarcharBuilder("text_value").setLimit(4000).setIsNullable(true).build()).build());
    addIndex(context, "widget_properties", "widget_properties_widgets", false, widgetIdCol);
}
Also used : IntegerColumnDef(org.sonar.server.platform.db.migration.def.IntegerColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Aggregations

IntegerColumnDef (org.sonar.server.platform.db.migration.def.IntegerColumnDef)16 BigIntegerColumnDef (org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)15 VarcharColumnDef (org.sonar.server.platform.db.migration.def.VarcharColumnDef)9 TinyIntColumnDef (org.sonar.server.platform.db.migration.def.TinyIntColumnDef)1 CreateIndexBuilder (org.sonar.server.platform.db.migration.sql.CreateIndexBuilder)1 CreateTableBuilder (org.sonar.server.platform.db.migration.sql.CreateTableBuilder)1