Skip to content

Commit

Permalink
#3459 Postgres varchar default to no length (aka text)
Browse files Browse the repository at this point in the history
Change Postgres platform to default a String to varchar [with no length defined] rather than varchar(255)
  • Loading branch information
rbygrave committed Feb 26, 2025
1 parent 0a5c3ce commit b13bdc9
Show file tree
Hide file tree
Showing 19 changed files with 175 additions and 168 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -172,7 +172,6 @@ public String renderType(int deployLength, int deployScale) {
* </p>
*/
public String renderType(int deployLength, int deployScale, boolean strict) {

int len = deployLength != 0 ? deployLength : defaultLength;
if (len > maxLength) {
return fallback.renderType(deployLength, deployScale, strict);
Expand All @@ -182,7 +181,6 @@ public String renderType(int deployLength, int deployScale, boolean strict) {
if ((canHaveLength || !strict) && len > 0) {
renderLengthScale(len, deployScale, sb);
}

return sb.toString();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@
-- apply changes
create table migtest_ckey_assoc (
id integer generated by default as identity not null,
assoc_one varchar(255),
assoc_one varchar,
constraint pk_migtest_ckey_assoc primary key (id)
);

create table migtest_ckey_detail (
id integer generated by default as identity not null,
something varchar(255),
something varchar,
constraint pk_migtest_ckey_detail primary key (id)
);

create table migtest_ckey_parent (
one_key integer not null,
two_key varchar(127) not null,
name varchar(255),
name varchar,
version integer not null,
constraint pk_migtest_ckey_parent primary key (one_key,two_key)
);
Expand Down Expand Up @@ -62,7 +62,7 @@ create table migtest_e_basic (
description varchar(127),
description_file bytea,
json_list json,
a_lob varchar(255) default 'X' not null,
a_lob varchar default 'X' not null,
some_date timestamptz,
old_boolean boolean default false not null,
old_boolean2 boolean,
Expand Down Expand Up @@ -90,21 +90,21 @@ create table migtest_e_enum (

create table migtest_e_history (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_history primary key (id)
);

create table migtest_e_history2 (
id integer generated by default as identity not null,
test_string varchar(255),
obsolete_string1 varchar(255),
obsolete_string2 varchar(255),
test_string varchar,
obsolete_string1 varchar,
obsolete_string2 varchar,
constraint pk_migtest_e_history2 primary key (id)
);

create table migtest_e_history3 (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_history3 primary key (id)
);

Expand All @@ -128,7 +128,7 @@ create table migtest_e_history6 (
);

create table "migtest_QuOtEd" (
id varchar(255) not null,
id varchar not null,
status1 varchar(1),
status2 varchar(1),
constraint ck_migtest_quoted_status1 check ( status1 in ('N','A','I')),
Expand All @@ -146,43 +146,43 @@ create table migtest_e_ref (

create table migtest_e_softdelete (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_softdelete primary key (id)
);

create table "table" (
"index" varchar(255) not null,
"from" varchar(255),
"to" varchar(255),
"varchar" varchar(255),
"foreign" varchar(255),
textfield varchar(255) not null,
"index" varchar not null,
"from" varchar,
"to" varchar,
"varchar" varchar,
"foreign" varchar,
textfield varchar not null,
constraint uq_table_to unique ("to"),
constraint uq_table_varchar unique ("varchar"),
constraint pk_table primary key ("index")
);

create table migtest_mtm_c (
id integer generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_mtm_c primary key (id)
);

create table migtest_mtm_m (
id bigint generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_mtm_m primary key (id)
);

create table migtest_oto_child (
id integer generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_oto_child primary key (id)
);

create table migtest_oto_master (
id bigint generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_oto_master primary key (id)
);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ create table migtest_mtm_m_migtest_mtm_c (

create table migtest_mtm_m_phone_numbers (
migtest_mtm_m_id bigint not null,
value varchar(255) not null
value varchar not null
);


Expand All @@ -172,8 +172,8 @@ update migtest_e_history2 set test_string = 'unknown' where test_string is null;
update migtest_e_history6 set test_number1 = 42 where test_number1 is null;
-- apply alter tables
alter table "table" alter column textfield drop not null;
alter table "table" add column "select" varchar(255);
alter table "table" add column textfield2 varchar(255);
alter table "table" add column "select" varchar;
alter table "table" add column textfield2 varchar;
alter table migtest_ckey_detail add column one_key integer;
alter table migtest_ckey_detail add column two_key varchar(127);
alter table migtest_ckey_parent add column assoc_id integer;
Expand All @@ -185,16 +185,16 @@ alter table migtest_e_basic alter column status2 drop not null;
alter table migtest_e_basic alter column a_lob drop default;
alter table migtest_e_basic alter column a_lob drop not null;
alter table migtest_e_basic alter column user_id drop not null;
alter table migtest_e_basic add column new_string_field varchar(255) default 'foo''bar' not null;
alter table migtest_e_basic add column new_string_field varchar default 'foo''bar' not null;
alter table migtest_e_basic add column new_boolean_field boolean default true not null;
alter table migtest_e_basic add column new_boolean_field2 boolean default true not null;
alter table migtest_e_basic add column progress integer default 0 not null;
alter table migtest_e_basic add column new_integer integer default 42 not null;
alter table migtest_e_history alter column test_string type bigint;
alter table migtest_e_history2 alter column test_string set default 'unknown';
alter table migtest_e_history2 alter column test_string set not null;
alter table migtest_e_history2 add column test_string2 varchar(255);
alter table migtest_e_history2 add column test_string3 varchar(255) default 'unknown' not null;
alter table migtest_e_history2 add column test_string2 varchar;
alter table migtest_e_history2 add column test_string3 varchar default 'unknown' not null;
alter table migtest_e_history2 add column new_column varchar(20);
alter table migtest_e_history4 alter column test_number type bigint;
alter table migtest_e_history5 add column test_boolean boolean default false not null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ drop index if exists ix_migtest_e_basic_indextest6;
drop index if exists ix_table_textfield2;
-- apply changes
create table "migtest_QuOtEd" (
id varchar(255) not null,
id varchar not null,
status1 varchar(1),
status2 varchar(1),
constraint ck_migtest_quoted_status1 check ( status1 in ('N','A','I')),
Expand Down Expand Up @@ -59,7 +59,7 @@ alter table migtest_e_basic alter column status drop not null;
alter table migtest_e_basic alter column status2 type varchar(1);
alter table migtest_e_basic alter column status2 set default 'N';
alter table migtest_e_basic alter column status2 set not null;
alter table migtest_e_basic alter column a_lob type varchar(255);
alter table migtest_e_basic alter column a_lob type varchar;
alter table migtest_e_basic alter column a_lob set default 'X';
alter table migtest_e_basic alter column a_lob set not null;
alter table migtest_e_basic alter column user_id set default 23;
Expand All @@ -70,8 +70,8 @@ alter table migtest_e_basic add column old_boolean2 boolean;
alter table migtest_e_basic add column eref_id integer;
alter table migtest_e_history2 alter column test_string drop default;
alter table migtest_e_history2 alter column test_string drop not null;
alter table migtest_e_history2 add column obsolete_string1 varchar(255);
alter table migtest_e_history2 add column obsolete_string2 varchar(255);
alter table migtest_e_history2 add column obsolete_string1 varchar;
alter table migtest_e_history2 add column obsolete_string2 varchar;
alter table migtest_e_history4 alter column test_number type integer;
alter table migtest_e_history6 alter column test_number1 drop default;
alter table migtest_e_history6 alter column test_number1 drop not null;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
1434934404, 1.0__initial.sql
-645855838, 1.1.sql
479024598, 1.0__initial.sql
51162323, 1.1.sql
856096334, 1.2__dropsFor_1.1.sql
1769792822, 1.3.sql
-1876375912, 1.3.sql
-1416035730, 1.4__dropsFor_1.3.sql
561281075, R__order_views.sql

Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@
-- apply changes
create table migtest_ckey_assoc (
id integer generated by default as identity not null,
assoc_one varchar(255),
assoc_one varchar,
constraint pk_migtest_ckey_assoc primary key (id)
);

create table migtest_ckey_detail (
id integer generated by default as identity not null,
something varchar(255),
something varchar,
constraint pk_migtest_ckey_detail primary key (id)
);

create table migtest_ckey_parent (
one_key integer not null,
version integer not null,
two_key varchar(127) not null,
name varchar(255),
name varchar,
constraint pk_migtest_ckey_parent primary key (one_key,two_key)
);

Expand Down Expand Up @@ -58,7 +58,7 @@ create table migtest_e_basic (
id integer generated by default as identity not null,
description_file bytea,
json_list json,
a_lob varchar(255) default 'X' not null,
a_lob varchar default 'X' not null,
some_date timestamptz,
old_boolean boolean default false not null,
old_boolean2 boolean,
Expand Down Expand Up @@ -90,21 +90,21 @@ create table migtest_e_enum (

create table migtest_e_history (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_history primary key (id)
);

create table migtest_e_history2 (
id integer generated by default as identity not null,
test_string varchar(255),
obsolete_string1 varchar(255),
obsolete_string2 varchar(255),
test_string varchar,
obsolete_string1 varchar,
obsolete_string2 varchar,
constraint pk_migtest_e_history2 primary key (id)
);

create table migtest_e_history3 (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_history3 primary key (id)
);

Expand All @@ -128,7 +128,7 @@ create table migtest_e_history6 (
);

create table "migtest_QuOtEd" (
id varchar(255) not null,
id varchar not null,
status1 varchar(1),
status2 varchar(1),
constraint ck_migtest_quoted_status1 check ( status1 in ('N','A','I')),
Expand All @@ -146,17 +146,17 @@ create table migtest_e_ref (

create table migtest_e_softdelete (
id integer generated by default as identity not null,
test_string varchar(255),
test_string varchar,
constraint pk_migtest_e_softdelete primary key (id)
);

create table "table" (
"index" varchar(255) not null,
"from" varchar(255),
"to" varchar(255),
"varchar" varchar(255),
"foreign" varchar(255),
textfield varchar(255) not null,
"index" varchar not null,
"from" varchar,
"to" varchar,
"varchar" varchar,
"foreign" varchar,
textfield varchar not null,
constraint uq_table_to unique ("to"),
constraint uq_table_varchar unique ("varchar"),
constraint pk_table primary key ("index")
Expand All @@ -165,25 +165,25 @@ comment on column "table"."index" is 'this is a comment';

create table migtest_mtm_c (
id integer generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_mtm_c primary key (id)
);

create table migtest_mtm_m (
id bigint generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_mtm_m primary key (id)
);

create table migtest_oto_child (
id integer generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_oto_child primary key (id)
);

create table migtest_oto_master (
id bigint generated by default as identity not null,
name varchar(255),
name varchar,
constraint pk_migtest_oto_master primary key (id)
);

Expand Down
Loading

0 comments on commit b13bdc9

Please sign in to comment.