"TAGS" CHARACTER VARYING(500),
"CREATED_AT" BIGINT,
"UPDATED_AT" BIGINT NOT NULL,
- "NCLOC" BIGINT,
- "INITIAL_PERM_SYNC" CHARACTER VARYING(40) DEFAULT 'NOT_APPLICABLE'
+ "NCLOC" BIGINT
);
ALTER TABLE "PROJECTS" ADD CONSTRAINT "PK_NEW_PROJECTS" PRIMARY KEY("UUID");
CREATE UNIQUE INDEX "UNIQ_PROJECTS_KEE" ON "PROJECTS"("KEE" NULLS FIRST);
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2023 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.platform.db.migration.version.v102;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-import org.sonar.db.Database;
-import org.sonar.db.DatabaseUtils;
-import org.sonar.server.platform.db.migration.def.ColumnDef;
-import org.sonar.server.platform.db.migration.def.VarcharColumnDef;
-import org.sonar.server.platform.db.migration.sql.AddColumnsBuilder;
-import org.sonar.server.platform.db.migration.step.DdlChange;
-
-public class AddInitialPermSyncColumnInProjects extends DdlChange {
- private static final String TABLE_NAME = "projects";
- private static final String COLUMN_NAME = "initial_perm_sync";
- private static final int COLUMN_SIZE = 40;
-
- public AddInitialPermSyncColumnInProjects(Database db) {
- super(db);
- }
-
- @Override
- public void execute(Context context) throws SQLException {
- try (Connection connection = getDatabase().getDataSource().getConnection()) {
- if (!DatabaseUtils.tableColumnExists(connection, TABLE_NAME, COLUMN_NAME)) {
- ColumnDef columnDef = VarcharColumnDef.newVarcharColumnDefBuilder()
- .setColumnName(COLUMN_NAME)
- .setLimit(COLUMN_SIZE)
- .setIsNullable(true)
- .setDefaultValue("NOT_APPLICABLE")
- .build();
- context.execute(new AddColumnsBuilder(getDialect(), TABLE_NAME).addColumn(columnDef).build());
- }
- }
- }
-}
.add(10_2_030, "Create table 'anticipated_transitions'", CreateAnticipatedTransitionsTable.class)
.add(10_2_031, "Increase size of 'ce_queue.is_last_key' from 55 to 80 characters", IncreaseIsLastKeyInCeActivity.class)
- .add(10_2_032, "Increase size of 'ce_queue.main_is_last_key' from 55 to 80 characters", IncreaseMainIsLastKeyInCeActivity.class)
-
- .add(10_2_033, "Add 'initial_perm_sync' column in 'projects' table", AddInitialPermSyncColumnInProjects.class);
+ .add(10_2_032, "Increase size of 'ce_queue.main_is_last_key' from 55 to 80 characters", IncreaseMainIsLastKeyInCeActivity.class);
}
}
+++ /dev/null
-/*
- * SonarQube
- * Copyright (C) 2009-2023 SonarSource SA
- * mailto:info AT sonarsource DOT com
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 3 of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-package org.sonar.server.platform.db.migration.version.v102;
-
-import java.sql.SQLException;
-import java.sql.Types;
-import org.junit.Rule;
-import org.junit.Test;
-import org.sonar.db.CoreDbTester;
-
-public class AddInitialPermSyncColumnInProjectsTest {
-
- private static final String TABLE_NAME = "projects";
- private static final String COLUMN_NAME = "initial_perm_sync";
- private static final int COLUMN_SIZE = 40;
-
- @Rule
- public final CoreDbTester db = CoreDbTester.createForSchema(AddInitialPermSyncColumnInProjectsTest.class, "schema.sql");
-
- private final AddInitialPermSyncColumnInProjects underTest = new AddInitialPermSyncColumnInProjects(db.database());
-
- @Test
- public void execute_whenColumnDoesNotExist_shouldCreateColumn() throws SQLException {
- db.assertColumnDoesNotExist(TABLE_NAME, COLUMN_NAME);
- underTest.execute();
- db.assertColumnDefinition(TABLE_NAME, COLUMN_NAME, Types.VARCHAR, COLUMN_SIZE, true);
- }
-
- @Test
- public void execute_whenExecutedTwice_shouldNotFail() throws SQLException {
- db.assertColumnDoesNotExist(TABLE_NAME, COLUMN_NAME);
- underTest.execute();
- underTest.execute();
- db.assertColumnDefinition(TABLE_NAME, COLUMN_NAME, Types.VARCHAR, COLUMN_SIZE, true);
- }
-
-}
\ No newline at end of file
+++ /dev/null
-CREATE TABLE "PROJECTS"(
- "UUID" CHARACTER VARYING(40) NOT NULL,
- "KEE" CHARACTER VARYING(400) NOT NULL,
- "QUALIFIER" CHARACTER VARYING(10) NOT NULL,
- "NAME" CHARACTER VARYING(2000),
- "DESCRIPTION" CHARACTER VARYING(2000),
- "PRIVATE" BOOLEAN NOT NULL,
- "TAGS" CHARACTER VARYING(500),
- "CREATED_AT" BIGINT,
- "UPDATED_AT" BIGINT NOT NULL,
- "NCLOC" BIGINT
-);
-ALTER TABLE "PROJECTS" ADD CONSTRAINT "PK_NEW_PROJECTS" PRIMARY KEY("UUID");
-CREATE UNIQUE INDEX "UNIQ_PROJECTS_KEE" ON "PROJECTS"("KEE" NULLS FIRST);
-CREATE INDEX "IDX_QUALIFIER" ON "PROJECTS"("QUALIFIER" NULLS FIRST);