Search in sources :

Example 1 with BigIntegerColumnDef

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

the class CreateInitialSchema method createUsers.

private void createUsers(Context context) throws SQLException {
    VarcharColumnDef loginCol = newLenientVarcharBuilder("login").setLimit(255).build();
    BigIntegerColumnDef updatedAtCol = newBigIntegerColumnDefBuilder().setColumnName("updated_at").build();
    context.execute(newTableBuilder("users").addPkColumn(newIntegerColumnDefBuilder().setColumnName("id").setIsNullable(false).build(), AUTO_INCREMENT).addColumn(loginCol).addColumn(newLenientVarcharBuilder("name").setLimit(200).build()).addColumn(newLenientVarcharBuilder("email").setLimit(100).build()).addColumn(newLenientVarcharBuilder("crypted_password").setLimit(40).build()).addColumn(newLenientVarcharBuilder("salt").setLimit(40).build()).addColumn(newLenientVarcharBuilder("remember_token").setLimit(500).build()).addColumn(newTimestampColumnDefBuilder().setColumnName("remember_token_expires_at").build()).addColumn(newBooleanColumnDefBuilder().setColumnName("active").setDefaultValue(true).build()).addColumn(newBigIntegerColumnDefBuilder().setColumnName("created_at").build()).addColumn(updatedAtCol).addColumn(newLenientVarcharBuilder("scm_accounts").setLimit(4000).build()).addColumn(newLenientVarcharBuilder("external_identity").setLimit(255).build()).addColumn(newLenientVarcharBuilder("external_identity_provider").setLimit(100).build()).addColumn(newBooleanColumnDefBuilder().setColumnName("user_local").build()).build());
    addIndex(context, "users", "users_login", true, loginCol);
    addIndex(context, "users", "users_updated_at", false, updatedAtCol);
}
Also used : VarcharColumnDef(org.sonar.server.platform.db.migration.def.VarcharColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 2 with BigIntegerColumnDef

use of org.sonar.server.platform.db.migration.def.BigIntegerColumnDef 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 3 with BigIntegerColumnDef

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

the class CreateInitialSchema method createGroupsUsers.

private void createGroupsUsers(Context context) throws SQLException {
    BigIntegerColumnDef userIdCol = newBigIntegerColumnDefBuilder().setColumnName("user_id").setIsNullable(true).build();
    BigIntegerColumnDef groupIdCol = newBigIntegerColumnDefBuilder().setColumnName("group_id").setIsNullable(true).build();
    context.execute(newTableBuilder("groups_users").addColumn(userIdCol).addColumn(groupIdCol).build());
    addIndex(context, "groups_users", "index_groups_users_on_user_id", false, userIdCol);
    addIndex(context, "groups_users", "index_groups_users_on_group_id", false, groupIdCol);
    addIndex(context, "groups_users", "groups_users_unique", true, groupIdCol, userIdCol);
}
Also used : BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Example 4 with BigIntegerColumnDef

use of org.sonar.server.platform.db.migration.def.BigIntegerColumnDef 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);
}
Also used : VarcharColumnDef(org.sonar.server.platform.db.migration.def.VarcharColumnDef) BigIntegerColumnDef(org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)

Aggregations

BigIntegerColumnDef (org.sonar.server.platform.db.migration.def.BigIntegerColumnDef)4 VarcharColumnDef (org.sonar.server.platform.db.migration.def.VarcharColumnDef)3 IntegerColumnDef (org.sonar.server.platform.db.migration.def.IntegerColumnDef)1 TinyIntColumnDef (org.sonar.server.platform.db.migration.def.TinyIntColumnDef)1