Skip to content

Commit

Permalink
don't generate unnecessary migrations
Browse files Browse the repository at this point in the history
  • Loading branch information
Aleksandra Sikora committed Apr 13, 2020
1 parent 9b66724 commit 272cb2a
Showing 1 changed file with 14 additions and 7 deletions.
21 changes: 14 additions & 7 deletions console/src/components/Services/Data/TableModify/ModifyActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,8 +84,8 @@ const REMOVE_PRIMARY_KEY = 'ModifyTable/REMOVE_PRIMARY_KEY';
const RESET_PRIMARY_KEY = 'ModifyTable/RESET_PRIMARY_KEY';
const SET_PRIMARY_KEYS = 'ModifyTable/SET_PRIMARY_KEYS';

const SET_COLUMN_EDIT = 'ModifyTable/SET_COLUMN_EDIT;';
const RESET_COLUMN_EDIT = 'ModifyTable/RESET_COLUMN_EDIT;';
const SET_COLUMN_EDIT = 'ModifyTable/SET_COLUMN_EDIT';
const RESET_COLUMN_EDIT = 'ModifyTable/RESET_COLUMN_EDIT';
const EDIT_COLUMN = 'ModifyTable/EDIT_COLUMN';

const SET_FOREIGN_KEYS = 'ModifyTable/SET_FOREIGN_KEYS';
Expand Down Expand Up @@ -1438,18 +1438,25 @@ const saveTableCommentSql = isTable => {
};

const isColumnUnique = (tableSchema, colName) => {
return (
tableSchema.unique_constraints.filter(
const { primary_key, unique_constraints } = tableSchema;

const columnPkConstraint =
primary_key.columns.includes(colName) && primary_key.columns.length === 1;

const columnUniqueConstraint =
unique_constraints.filter(
constraint =>
constraint.columns.includes(colName) && constraint.columns.length === 1
).length !== 0
);
).length > 0;

return columnPkConstraint || columnUniqueConstraint;
};

const saveColumnChangesSql = (colName, column, onSuccess) => {
// eslint-disable-line no-unused-vars
return (dispatch, getState) => {
const columnEdit = getState().tables.modify.columnEdit[colName];

const { tableName } = columnEdit;
const colType = columnEdit.type;
const nullable = columnEdit.isNullable;
Expand All @@ -1464,7 +1471,7 @@ const saveColumnChangesSql = (colName, column, onSuccess) => {
const table = findTable(getState().tables.allSchemas, tableDef);

// check if column type has changed before making it part of the migration
const originalColType = column.data_type; // "value"
const originalColType = column.udt_name; // "value"
const originalColDefault = column.column_default || ''; // null or "value"
const originalColComment = column.comment || ''; // null or "value"
const originalColNullable = column.is_nullable; // "YES" or "NO"
Expand Down

0 comments on commit 272cb2a

Please sign in to comment.