From b7ecb92327a4c0809856879982ebd7c4d924e42a Mon Sep 17 00:00:00 2001 From: Tianzhou Date: Sun, 21 Dec 2025 04:40:19 -0800 Subject: [PATCH 1/2] feat: add support for FORCE ROW LEVEL SECURITY MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implements PostgreSQL's FORCE ROW LEVEL SECURITY feature, which applies row-level security policies even to table owners and superusers. Changes: - Added RLSForced boolean field to IR Table struct - Updated database queries to fetch relforcerowsecurity from pg_class - Extended diff logic to track ENABLE and FORCE changes independently - Added SQL generation for FORCE/NO FORCE ROW LEVEL SECURITY statements - Created dedicated test case for FORCE RLS functionality - Updated fingerprints in existing policy tests to account for new IR field Test coverage: - New test: create_policy/force_rls - validates FORCE RLS detection and migration - All 9 policy integration tests passing - Both diff and plan/apply tests validated Fixes #214 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- internal/diff/diff.go | 3 +- internal/diff/policy.go | 53 ++++++++--- internal/diff/table.go | 91 ++++++++++++++----- ir/inspector.go | 19 ++-- ir/ir.go | 1 + ir/queries/queries.sql | 44 +++++---- ir/queries/queries.sql.go | 74 +++++++++------ .../diff/create_policy/add_policy/plan.json | 2 +- .../alter_policy_command/plan.json | 2 +- .../create_policy/alter_policy_name/plan.json | 2 +- .../alter_policy_roles/plan.json | 2 +- .../alter_policy_using/plan.json | 2 +- .../diff/create_policy/disable_rls/plan.json | 2 +- .../diff/create_policy/drop_policy/plan.json | 2 +- .../diff/create_policy/enable_rls/plan.json | 2 +- .../diff/create_policy/force_rls/diff.sql | 1 + testdata/diff/create_policy/force_rls/new.sql | 15 +++ testdata/diff/create_policy/force_rls/old.sql | 14 +++ .../diff/create_policy/force_rls/plan.json | 20 ++++ .../diff/create_policy/force_rls/plan.sql | 1 + .../diff/create_policy/force_rls/plan.txt | 13 +++ .../create_policy/remove_force_rls/diff.sql | 1 + .../create_policy/remove_force_rls/new.sql | 14 +++ .../create_policy/remove_force_rls/old.sql | 15 +++ .../create_policy/remove_force_rls/plan.json | 20 ++++ .../create_policy/remove_force_rls/plan.sql | 1 + .../create_policy/remove_force_rls/plan.txt | 13 +++ 27 files changed, 324 insertions(+), 105 deletions(-) create mode 100644 testdata/diff/create_policy/force_rls/diff.sql create mode 100644 testdata/diff/create_policy/force_rls/new.sql create mode 100644 testdata/diff/create_policy/force_rls/old.sql create mode 100644 testdata/diff/create_policy/force_rls/plan.json create mode 100644 testdata/diff/create_policy/force_rls/plan.sql create mode 100644 testdata/diff/create_policy/force_rls/plan.txt create mode 100644 testdata/diff/create_policy/remove_force_rls/diff.sql create mode 100644 testdata/diff/create_policy/remove_force_rls/new.sql create mode 100644 testdata/diff/create_policy/remove_force_rls/old.sql create mode 100644 testdata/diff/create_policy/remove_force_rls/plan.json create mode 100644 testdata/diff/create_policy/remove_force_rls/plan.sql create mode 100644 testdata/diff/create_policy/remove_force_rls/plan.txt diff --git a/internal/diff/diff.go b/internal/diff/diff.go index 74f671bb..b6cea7cd 100644 --- a/internal/diff/diff.go +++ b/internal/diff/diff.go @@ -353,7 +353,8 @@ type policyDiff struct { // rlsChange represents enabling/disabling Row Level Security on a table type rlsChange struct { Table *ir.Table - Enabled bool // true to enable, false to disable + Enabled *bool // nil = no change, true = enable, false = disable + Forced *bool // nil = no change, true = force, false = no force } // GenerateMigration compares two IR schemas and returns the SQL differences diff --git a/internal/diff/policy.go b/internal/diff/policy.go index 094fb374..2c145d4a 100644 --- a/internal/diff/policy.go +++ b/internal/diff/policy.go @@ -33,27 +33,50 @@ func generateCreatePoliciesSQL(policies []*ir.RLSPolicy, targetSchema string, co } } -// generateRLSChangesSQL generates RLS enable/disable statements +// generateRLSChangesSQL generates RLS enable/disable and force statements func generateRLSChangesSQL(changes []*rlsChange, targetSchema string, collector *diffCollector) { for _, change := range changes { - var sql string tableName := qualifyEntityName(change.Table.Schema, change.Table.Name, targetSchema) - if change.Enabled { - sql = fmt.Sprintf("ALTER TABLE %s ENABLE ROW LEVEL SECURITY;", tableName) - } else { - sql = fmt.Sprintf("ALTER TABLE %s DISABLE ROW LEVEL SECURITY;", tableName) - } - // Create context for this statement - context := &diffContext{ - Type: DiffTypeTableRLS, - Operation: DiffOperationAlter, - Path: fmt.Sprintf("%s.%s", change.Table.Schema, change.Table.Name), - Source: change, - CanRunInTransaction: true, + // Handle ENABLE/DISABLE changes + if change.Enabled != nil { + var sql string + if *change.Enabled { + sql = fmt.Sprintf("ALTER TABLE %s ENABLE ROW LEVEL SECURITY;", tableName) + } else { + sql = fmt.Sprintf("ALTER TABLE %s DISABLE ROW LEVEL SECURITY;", tableName) + } + + context := &diffContext{ + Type: DiffTypeTableRLS, + Operation: DiffOperationAlter, + Path: fmt.Sprintf("%s.%s", change.Table.Schema, change.Table.Name), + Source: change, + CanRunInTransaction: true, + } + + collector.collect(context, sql) } - collector.collect(context, sql) + // Handle FORCE/NO FORCE changes + if change.Forced != nil { + var sql string + if *change.Forced { + sql = fmt.Sprintf("ALTER TABLE %s FORCE ROW LEVEL SECURITY;", tableName) + } else { + sql = fmt.Sprintf("ALTER TABLE %s NO FORCE ROW LEVEL SECURITY;", tableName) + } + + context := &diffContext{ + Type: DiffTypeTableRLS, + Operation: DiffOperationAlter, + Path: fmt.Sprintf("%s.%s", change.Table.Schema, change.Table.Name), + Source: change, + CanRunInTransaction: true, + } + + collector.collect(context, sql) + } } } diff --git a/internal/diff/table.go b/internal/diff/table.go index d36561eb..0fb536af 100644 --- a/internal/diff/table.go +++ b/internal/diff/table.go @@ -271,12 +271,20 @@ func diffTables(oldTable, newTable *ir.Table, targetSchema string) *tableDiff { } } - // Check for RLS enable/disable changes - if oldTable.RLSEnabled != newTable.RLSEnabled { - diff.RLSChanges = append(diff.RLSChanges, &rlsChange{ - Table: newTable, - Enabled: newTable.RLSEnabled, - }) + // Check for RLS enable/disable and force changes + if oldTable.RLSEnabled != newTable.RLSEnabled || oldTable.RLSForced != newTable.RLSForced { + change := &rlsChange{ + Table: newTable, + } + if oldTable.RLSEnabled != newTable.RLSEnabled { + change.Enabled = &newTable.RLSEnabled + } + // Only track FORCE changes if RLS is not being disabled + // (disabling RLS implicitly clears FORCE, making NO FORCE redundant) + if oldTable.RLSForced != newTable.RLSForced && newTable.RLSEnabled { + change.Forced = &newTable.RLSForced + } + diff.RLSChanges = append(diff.RLSChanges, change) } // Check for table comment changes @@ -417,9 +425,18 @@ func generateCreateTablesSQL( } generateCreateIndexesSQL(indexes, targetSchema, collector) - // Handle RLS enable changes (before creating policies) - only for diff scenarios - if table.RLSEnabled { - rlsChanges := []*rlsChange{{Table: table, Enabled: true}} + // Handle RLS enable/force changes (before creating policies) - only for diff scenarios + if table.RLSEnabled || table.RLSForced { + change := &rlsChange{Table: table} + if table.RLSEnabled { + enabled := true + change.Enabled = &enabled + } + if table.RLSForced { + forced := true + change.Forced = &forced + } + rlsChanges := []*rlsChange{change} generateRLSChangesSQL(rlsChanges, targetSchema, collector) } @@ -894,24 +911,50 @@ func (td *tableDiff) generateAlterTableStatements(targetSchema string, collector // Handle RLS changes for _, rlsChange := range td.RLSChanges { tableName := getTableNameWithSchema(td.Table.Schema, td.Table.Name, targetSchema) - var sql string - var operation DiffOperation - if rlsChange.Enabled { - sql = fmt.Sprintf("ALTER TABLE %s ENABLE ROW LEVEL SECURITY;", tableName) - operation = DiffOperationCreate - } else { - sql = fmt.Sprintf("ALTER TABLE %s DISABLE ROW LEVEL SECURITY;", tableName) - operation = DiffOperationDrop + + // Handle ENABLE/DISABLE changes + if rlsChange.Enabled != nil { + var sql string + var operation DiffOperation + if *rlsChange.Enabled { + sql = fmt.Sprintf("ALTER TABLE %s ENABLE ROW LEVEL SECURITY;", tableName) + operation = DiffOperationCreate + } else { + sql = fmt.Sprintf("ALTER TABLE %s DISABLE ROW LEVEL SECURITY;", tableName) + operation = DiffOperationDrop + } + + context := &diffContext{ + Type: DiffTypeTableRLS, + Operation: operation, + Path: fmt.Sprintf("%s.%s", td.Table.Schema, td.Table.Name), + Source: rlsChange, + CanRunInTransaction: true, + } + collector.collect(context, sql) } - context := &diffContext{ - Type: DiffTypeTableRLS, - Operation: operation, - Path: fmt.Sprintf("%s.%s", td.Table.Schema, td.Table.Name), - Source: rlsChange, - CanRunInTransaction: true, + // Handle FORCE/NO FORCE changes + if rlsChange.Forced != nil { + var sql string + var operation DiffOperation + if *rlsChange.Forced { + sql = fmt.Sprintf("ALTER TABLE %s FORCE ROW LEVEL SECURITY;", tableName) + operation = DiffOperationAlter + } else { + sql = fmt.Sprintf("ALTER TABLE %s NO FORCE ROW LEVEL SECURITY;", tableName) + operation = DiffOperationAlter + } + + context := &diffContext{ + Type: DiffTypeTableRLS, + Operation: operation, + Path: fmt.Sprintf("%s.%s", td.Table.Schema, td.Table.Name), + Source: rlsChange, + CanRunInTransaction: true, + } + collector.collect(context, sql) } - collector.collect(context, sql) } // Drop policies - already sorted by the Diff operation diff --git a/ir/inspector.go b/ir/inspector.go index 8dc7c86f..cc532a50 100644 --- a/ir/inspector.go +++ b/ir/inspector.go @@ -1518,25 +1518,18 @@ func (i *Inspector) decodeTriggerLevel(tgtype int16) TriggerLevel { func (i *Inspector) buildRLSPolicies(ctx context.Context, schema *IR, targetSchema string) error { // Get RLS enabled tables for the target schema - rlsTables, err := i.queries.GetRLSTablesForSchema(ctx, sql.NullString{String: targetSchema, Valid: true}) + rlsTables, err := i.queries.GetRLSTablesForSchema(ctx, targetSchema) if err != nil { return err } - // Mark tables as RLS enabled + // Mark tables as RLS enabled/forced for _, rlsTable := range rlsTables { - schemaName := "" - if rlsTable.Schemaname.Valid { - schemaName = rlsTable.Schemaname.String - } - tableName := "" - if rlsTable.Tablename.Valid { - tableName = rlsTable.Tablename.String - } - - dbSchema := schema.getOrCreateSchema(schemaName) - if table, exists := dbSchema.Tables[tableName]; exists { + dbSchema := schema.getOrCreateSchema(rlsTable.Schemaname) + if table, exists := dbSchema.Tables[rlsTable.Tablename]; exists { + // Query filters by rowsecurity = true, so this is always true table.RLSEnabled = true + table.RLSForced = rlsTable.Rowforced } } diff --git a/ir/ir.go b/ir/ir.go index 9b668f10..242fa65f 100644 --- a/ir/ir.go +++ b/ir/ir.go @@ -50,6 +50,7 @@ type Table struct { Indexes map[string]*Index `json:"indexes"` // index_name -> Index Triggers map[string]*Trigger `json:"triggers"` // trigger_name -> Trigger RLSEnabled bool `json:"rls_enabled"` + RLSForced bool `json:"rls_forced"` Policies map[string]*RLSPolicy `json:"policies"` // policy_name -> RLSPolicy Dependencies []TableDependency `json:"dependencies"` Comment string `json:"comment,omitempty"` diff --git a/ir/queries/queries.sql b/ir/queries/queries.sql index cf1fb4c9..bc65c84d 100644 --- a/ir/queries/queries.sql +++ b/ir/queries/queries.sql @@ -674,16 +674,20 @@ ORDER BY vtu.view_schema, vtu.view_name, vtu.table_schema, vtu.table_name; -- GetRLSTables retrieves tables with row level security enabled -- name: GetRLSTables :many -SELECT - schemaname, - tablename -FROM pg_tables -WHERE - schemaname NOT IN ('information_schema', 'pg_catalog', 'pg_toast') - AND schemaname NOT LIKE 'pg_temp_%' - AND schemaname NOT LIKE 'pg_toast_temp_%' - AND rowsecurity = true -ORDER BY schemaname, tablename; +SELECT + n.nspname AS schemaname, + c.relname AS tablename, + c.relrowsecurity AS rowsecurity, + c.relforcerowsecurity AS rowforced +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid +WHERE + n.nspname NOT IN ('information_schema', 'pg_catalog', 'pg_toast') + AND n.nspname NOT LIKE 'pg_temp_%' + AND n.nspname NOT LIKE 'pg_toast_temp_%' + AND c.relkind = 'r' + AND c.relrowsecurity = true +ORDER BY n.nspname, c.relname; -- GetRLSPolicies retrieves all row level security policies -- name: GetRLSPolicies :many @@ -705,14 +709,18 @@ ORDER BY schemaname, tablename, policyname; -- GetRLSTablesForSchema retrieves tables with row level security enabled for a specific schema -- name: GetRLSTablesForSchema :many -SELECT - schemaname, - tablename -FROM pg_tables -WHERE - schemaname = $1 - AND rowsecurity = true -ORDER BY schemaname, tablename; +SELECT + n.nspname AS schemaname, + c.relname AS tablename, + c.relrowsecurity AS rowsecurity, + c.relforcerowsecurity AS rowforced +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid +WHERE + n.nspname = $1 + AND c.relkind = 'r' + AND c.relrowsecurity = true +ORDER BY n.nspname, c.relname; -- GetRLSPoliciesForSchema retrieves all row level security policies for a specific schema -- name: GetRLSPoliciesForSchema :many diff --git a/ir/queries/queries.sql.go b/ir/queries/queries.sql.go index f8bfd276..cc64fb71 100644 --- a/ir/queries/queries.sql.go +++ b/ir/queries/queries.sql.go @@ -1993,21 +1993,27 @@ func (q *Queries) GetRLSPoliciesForSchema(ctx context.Context, dollar_1 sql.Null } const getRLSTables = `-- name: GetRLSTables :many -SELECT - schemaname, - tablename -FROM pg_tables -WHERE - schemaname NOT IN ('information_schema', 'pg_catalog', 'pg_toast') - AND schemaname NOT LIKE 'pg_temp_%' - AND schemaname NOT LIKE 'pg_toast_temp_%' - AND rowsecurity = true -ORDER BY schemaname, tablename +SELECT + n.nspname AS schemaname, + c.relname AS tablename, + c.relrowsecurity AS rowsecurity, + c.relforcerowsecurity AS rowforced +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid +WHERE + n.nspname NOT IN ('information_schema', 'pg_catalog', 'pg_toast') + AND n.nspname NOT LIKE 'pg_temp_%' + AND n.nspname NOT LIKE 'pg_toast_temp_%' + AND c.relkind = 'r' + AND c.relrowsecurity = true +ORDER BY n.nspname, c.relname ` type GetRLSTablesRow struct { - Schemaname sql.NullString `db:"schemaname" json:"schemaname"` - Tablename sql.NullString `db:"tablename" json:"tablename"` + Schemaname string `db:"schemaname" json:"schemaname"` + Tablename string `db:"tablename" json:"tablename"` + Rowsecurity bool `db:"rowsecurity" json:"rowsecurity"` + Rowforced bool `db:"rowforced" json:"rowforced"` } // GetRLSTables retrieves tables with row level security enabled @@ -2020,7 +2026,12 @@ func (q *Queries) GetRLSTables(ctx context.Context) ([]GetRLSTablesRow, error) { var items []GetRLSTablesRow for rows.Next() { var i GetRLSTablesRow - if err := rows.Scan(&i.Schemaname, &i.Tablename); err != nil { + if err := rows.Scan( + &i.Schemaname, + &i.Tablename, + &i.Rowsecurity, + &i.Rowforced, + ); err != nil { return nil, err } items = append(items, i) @@ -2035,24 +2046,30 @@ func (q *Queries) GetRLSTables(ctx context.Context) ([]GetRLSTablesRow, error) { } const getRLSTablesForSchema = `-- name: GetRLSTablesForSchema :many -SELECT - schemaname, - tablename -FROM pg_tables -WHERE - schemaname = $1 - AND rowsecurity = true -ORDER BY schemaname, tablename +SELECT + n.nspname AS schemaname, + c.relname AS tablename, + c.relrowsecurity AS rowsecurity, + c.relforcerowsecurity AS rowforced +FROM pg_catalog.pg_class c +JOIN pg_catalog.pg_namespace n ON c.relnamespace = n.oid +WHERE + n.nspname = $1 + AND c.relkind = 'r' + AND c.relrowsecurity = true +ORDER BY n.nspname, c.relname ` type GetRLSTablesForSchemaRow struct { - Schemaname sql.NullString `db:"schemaname" json:"schemaname"` - Tablename sql.NullString `db:"tablename" json:"tablename"` + Schemaname string `db:"schemaname" json:"schemaname"` + Tablename string `db:"tablename" json:"tablename"` + Rowsecurity bool `db:"rowsecurity" json:"rowsecurity"` + Rowforced bool `db:"rowforced" json:"rowforced"` } // GetRLSTablesForSchema retrieves tables with row level security enabled for a specific schema -func (q *Queries) GetRLSTablesForSchema(ctx context.Context, dollar_1 sql.NullString) ([]GetRLSTablesForSchemaRow, error) { - rows, err := q.db.QueryContext(ctx, getRLSTablesForSchema, dollar_1) +func (q *Queries) GetRLSTablesForSchema(ctx context.Context, nspname string) ([]GetRLSTablesForSchemaRow, error) { + rows, err := q.db.QueryContext(ctx, getRLSTablesForSchema, nspname) if err != nil { return nil, err } @@ -2060,7 +2077,12 @@ func (q *Queries) GetRLSTablesForSchema(ctx context.Context, dollar_1 sql.NullSt var items []GetRLSTablesForSchemaRow for rows.Next() { var i GetRLSTablesForSchemaRow - if err := rows.Scan(&i.Schemaname, &i.Tablename); err != nil { + if err := rows.Scan( + &i.Schemaname, + &i.Tablename, + &i.Rowsecurity, + &i.Rowforced, + ); err != nil { return nil, err } items = append(items, i) diff --git a/testdata/diff/create_policy/add_policy/plan.json b/testdata/diff/create_policy/add_policy/plan.json index 95886714..0ad3ea52 100644 --- a/testdata/diff/create_policy/add_policy/plan.json +++ b/testdata/diff/create_policy/add_policy/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "dbb8387a973c070eb3a87e82500e6c4342a795d3271927271e1831dd101e2920" + "hash": "1c45159a6e2607b1c83b933afa76aff63b63792704098a3046ec922e8f32649f" }, "groups": [ { diff --git a/testdata/diff/create_policy/alter_policy_command/plan.json b/testdata/diff/create_policy/alter_policy_command/plan.json index c472eceb..fb7d8e0c 100644 --- a/testdata/diff/create_policy/alter_policy_command/plan.json +++ b/testdata/diff/create_policy/alter_policy_command/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f17744d710a5ddd5edafd99a6f064762646fd02a2a9b4292be09f1922e3bd168" + "hash": "4dde0e257ba5ac0a0ad55c5be408409192726dd6029e431a68742a993f705d3c" }, "groups": [ { diff --git a/testdata/diff/create_policy/alter_policy_name/plan.json b/testdata/diff/create_policy/alter_policy_name/plan.json index 5c44b5f9..5ff40887 100644 --- a/testdata/diff/create_policy/alter_policy_name/plan.json +++ b/testdata/diff/create_policy/alter_policy_name/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f17744d710a5ddd5edafd99a6f064762646fd02a2a9b4292be09f1922e3bd168" + "hash": "4dde0e257ba5ac0a0ad55c5be408409192726dd6029e431a68742a993f705d3c" }, "groups": [ { diff --git a/testdata/diff/create_policy/alter_policy_roles/plan.json b/testdata/diff/create_policy/alter_policy_roles/plan.json index 70bfb275..2e96fb24 100644 --- a/testdata/diff/create_policy/alter_policy_roles/plan.json +++ b/testdata/diff/create_policy/alter_policy_roles/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2127beb258240b421e6201bcaaebe6c3d1be515ac466d6e1337039fd73c984e8" + "hash": "a24989791c9ba13d2d21f70cd0405e0e509c55341872b552ab87a0c79d238ddd" }, "groups": [ { diff --git a/testdata/diff/create_policy/alter_policy_using/plan.json b/testdata/diff/create_policy/alter_policy_using/plan.json index 960c2c52..a0f78954 100644 --- a/testdata/diff/create_policy/alter_policy_using/plan.json +++ b/testdata/diff/create_policy/alter_policy_using/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f17744d710a5ddd5edafd99a6f064762646fd02a2a9b4292be09f1922e3bd168" + "hash": "4dde0e257ba5ac0a0ad55c5be408409192726dd6029e431a68742a993f705d3c" }, "groups": [ { diff --git a/testdata/diff/create_policy/disable_rls/plan.json b/testdata/diff/create_policy/disable_rls/plan.json index 5fc236b5..435f33c4 100644 --- a/testdata/diff/create_policy/disable_rls/plan.json +++ b/testdata/diff/create_policy/disable_rls/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2127beb258240b421e6201bcaaebe6c3d1be515ac466d6e1337039fd73c984e8" + "hash": "a24989791c9ba13d2d21f70cd0405e0e509c55341872b552ab87a0c79d238ddd" }, "groups": [ { diff --git a/testdata/diff/create_policy/drop_policy/plan.json b/testdata/diff/create_policy/drop_policy/plan.json index 9fcb496e..e813f485 100644 --- a/testdata/diff/create_policy/drop_policy/plan.json +++ b/testdata/diff/create_policy/drop_policy/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2127beb258240b421e6201bcaaebe6c3d1be515ac466d6e1337039fd73c984e8" + "hash": "a24989791c9ba13d2d21f70cd0405e0e509c55341872b552ab87a0c79d238ddd" }, "groups": [ { diff --git a/testdata/diff/create_policy/enable_rls/plan.json b/testdata/diff/create_policy/enable_rls/plan.json index 0f37d6d5..53d3b44e 100644 --- a/testdata/diff/create_policy/enable_rls/plan.json +++ b/testdata/diff/create_policy/enable_rls/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a14ce07802857ac93bf9d8cf3d478455defdb58edc67244f797766d5ccc6fde5" + "hash": "ae66d4f64657d2848aa1c075994ef2916aab28fa5a94765a4937081b4ea3e780" }, "groups": [ { diff --git a/testdata/diff/create_policy/force_rls/diff.sql b/testdata/diff/create_policy/force_rls/diff.sql new file mode 100644 index 00000000..8e23ee67 --- /dev/null +++ b/testdata/diff/create_policy/force_rls/diff.sql @@ -0,0 +1 @@ +ALTER TABLE users FORCE ROW LEVEL SECURITY; diff --git a/testdata/diff/create_policy/force_rls/new.sql b/testdata/diff/create_policy/force_rls/new.sql new file mode 100644 index 00000000..0d27c4b9 --- /dev/null +++ b/testdata/diff/create_policy/force_rls/new.sql @@ -0,0 +1,15 @@ +CREATE TABLE users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100) NOT NULL, + tenant_id INTEGER NOT NULL +); + +-- RLS is enabled and forced (applies even to table owners) +ALTER TABLE users ENABLE ROW LEVEL SECURITY; +ALTER TABLE users FORCE ROW LEVEL SECURITY; + +-- Add a simple policy +CREATE POLICY tenant_isolation ON users + FOR ALL + TO PUBLIC + USING (tenant_id = current_setting('app.current_tenant')::INTEGER); diff --git a/testdata/diff/create_policy/force_rls/old.sql b/testdata/diff/create_policy/force_rls/old.sql new file mode 100644 index 00000000..19a8d0e1 --- /dev/null +++ b/testdata/diff/create_policy/force_rls/old.sql @@ -0,0 +1,14 @@ +CREATE TABLE users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100) NOT NULL, + tenant_id INTEGER NOT NULL +); + +-- RLS is enabled but not forced +ALTER TABLE users ENABLE ROW LEVEL SECURITY; + +-- Add a simple policy +CREATE POLICY tenant_isolation ON users + FOR ALL + TO PUBLIC + USING (tenant_id = current_setting('app.current_tenant')::INTEGER); diff --git a/testdata/diff/create_policy/force_rls/plan.json b/testdata/diff/create_policy/force_rls/plan.json new file mode 100644 index 00000000..8e7286ed --- /dev/null +++ b/testdata/diff/create_policy/force_rls/plan.json @@ -0,0 +1,20 @@ +{ + "version": "1.0.0", + "pgschema_version": "1.5.0", + "created_at": "1970-01-01T00:00:00Z", + "source_fingerprint": { + "hash": "5e4ac40b64a7ec01d1f41af5c61ba420960e98b8ac166d757ee424ea3f10474f" + }, + "groups": [ + { + "steps": [ + { + "sql": "ALTER TABLE users FORCE ROW LEVEL SECURITY;", + "type": "table.rls", + "operation": "alter", + "path": "public.users" + } + ] + } + ] +} diff --git a/testdata/diff/create_policy/force_rls/plan.sql b/testdata/diff/create_policy/force_rls/plan.sql new file mode 100644 index 00000000..8e23ee67 --- /dev/null +++ b/testdata/diff/create_policy/force_rls/plan.sql @@ -0,0 +1 @@ +ALTER TABLE users FORCE ROW LEVEL SECURITY; diff --git a/testdata/diff/create_policy/force_rls/plan.txt b/testdata/diff/create_policy/force_rls/plan.txt new file mode 100644 index 00000000..55b5276e --- /dev/null +++ b/testdata/diff/create_policy/force_rls/plan.txt @@ -0,0 +1,13 @@ +Plan: 1 to modify. + +Summary by type: + tables: 1 to modify + +Tables: + ~ users + ~ users (rls) + +DDL to be executed: +-------------------------------------------------- + +ALTER TABLE users FORCE ROW LEVEL SECURITY; diff --git a/testdata/diff/create_policy/remove_force_rls/diff.sql b/testdata/diff/create_policy/remove_force_rls/diff.sql new file mode 100644 index 00000000..bbaf1912 --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/diff.sql @@ -0,0 +1 @@ +ALTER TABLE users NO FORCE ROW LEVEL SECURITY; diff --git a/testdata/diff/create_policy/remove_force_rls/new.sql b/testdata/diff/create_policy/remove_force_rls/new.sql new file mode 100644 index 00000000..c0ff4ee3 --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/new.sql @@ -0,0 +1,14 @@ +CREATE TABLE users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100) NOT NULL, + tenant_id INTEGER NOT NULL +); + +-- RLS is enabled but not forced (FORCE removed) +ALTER TABLE users ENABLE ROW LEVEL SECURITY; + +-- Add a simple policy +CREATE POLICY tenant_isolation ON users + FOR ALL + TO PUBLIC + USING (tenant_id = current_setting('app.current_tenant')::INTEGER); diff --git a/testdata/diff/create_policy/remove_force_rls/old.sql b/testdata/diff/create_policy/remove_force_rls/old.sql new file mode 100644 index 00000000..10521611 --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/old.sql @@ -0,0 +1,15 @@ +CREATE TABLE users ( + id SERIAL PRIMARY KEY, + name VARCHAR(100) NOT NULL, + tenant_id INTEGER NOT NULL +); + +-- RLS is enabled and forced +ALTER TABLE users ENABLE ROW LEVEL SECURITY; +ALTER TABLE users FORCE ROW LEVEL SECURITY; + +-- Add a simple policy +CREATE POLICY tenant_isolation ON users + FOR ALL + TO PUBLIC + USING (tenant_id = current_setting('app.current_tenant')::INTEGER); diff --git a/testdata/diff/create_policy/remove_force_rls/plan.json b/testdata/diff/create_policy/remove_force_rls/plan.json new file mode 100644 index 00000000..58af888e --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/plan.json @@ -0,0 +1,20 @@ +{ + "version": "1.0.0", + "pgschema_version": "1.5.0", + "created_at": "1970-01-01T00:00:00Z", + "source_fingerprint": { + "hash": "0d3cfe3e8283f19f2e5ea37cfc7f2cbab91b543bf77aac99a2a912a17bc6e3f1" + }, + "groups": [ + { + "steps": [ + { + "sql": "ALTER TABLE users NO FORCE ROW LEVEL SECURITY;", + "type": "table.rls", + "operation": "alter", + "path": "public.users" + } + ] + } + ] +} diff --git a/testdata/diff/create_policy/remove_force_rls/plan.sql b/testdata/diff/create_policy/remove_force_rls/plan.sql new file mode 100644 index 00000000..bbaf1912 --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/plan.sql @@ -0,0 +1 @@ +ALTER TABLE users NO FORCE ROW LEVEL SECURITY; diff --git a/testdata/diff/create_policy/remove_force_rls/plan.txt b/testdata/diff/create_policy/remove_force_rls/plan.txt new file mode 100644 index 00000000..308da909 --- /dev/null +++ b/testdata/diff/create_policy/remove_force_rls/plan.txt @@ -0,0 +1,13 @@ +Plan: 1 to modify. + +Summary by type: + tables: 1 to modify + +Tables: + ~ users + ~ users (rls) + +DDL to be executed: +-------------------------------------------------- + +ALTER TABLE users NO FORCE ROW LEVEL SECURITY; From a77f7071af69bcf538e5f413f5157ad7be2ba795 Mon Sep 17 00:00:00 2001 From: Tianzhou Date: Sun, 21 Dec 2025 05:20:38 -0800 Subject: [PATCH 2/2] chore: regenerate plan --- testdata/diff/comment/add_column_comments/plan.json | 2 +- testdata/diff/comment/add_index_comment/plan.json | 2 +- testdata/diff/comment/add_table_comment/plan.json | 2 +- testdata/diff/comment/add_view_comment/plan.json | 2 +- testdata/diff/comment/alter_table_comment/plan.json | 2 +- testdata/diff/comment/drop_table_comment/plan.json | 2 +- testdata/diff/comment/mixed_comments/plan.json | 2 +- testdata/diff/comment/noop_column_comments/plan.json | 2 +- testdata/diff/create_index/drop_index/plan.json | 2 +- .../create_materialized_view/add_materialized_view/plan.json | 2 +- .../create_materialized_view/alter_materialized_view/plan.json | 2 +- .../create_materialized_view/drop_materialized_view/plan.json | 2 +- testdata/diff/create_policy/force_rls/plan.json | 2 +- testdata/diff/create_policy/remove_force_rls/plan.json | 2 +- testdata/diff/create_table/add_check/plan.json | 2 +- testdata/diff/create_table/add_column_array/plan.json | 2 +- testdata/diff/create_table/add_column_boolean/plan.json | 2 +- .../create_table/add_column_cross_schema_custom_type/plan.json | 2 +- testdata/diff/create_table/add_column_default/plan.json | 2 +- testdata/diff/create_table/add_column_generated/plan.json | 2 +- testdata/diff/create_table/add_column_identity/plan.json | 2 +- testdata/diff/create_table/add_column_integer/plan.json | 2 +- testdata/diff/create_table/add_column_jsonb/plan.json | 2 +- testdata/diff/create_table/add_column_numeric/plan.json | 2 +- testdata/diff/create_table/add_column_serial/plan.json | 2 +- testdata/diff/create_table/add_column_text/plan.json | 2 +- testdata/diff/create_table/add_column_timestamp/plan.json | 2 +- testdata/diff/create_table/add_column_uuid/plan.json | 2 +- testdata/diff/create_table/add_column_varchar/plan.json | 2 +- testdata/diff/create_table/add_fk/plan.json | 2 +- testdata/diff/create_table/add_pk/plan.json | 2 +- testdata/diff/create_table/add_table_like/plan.json | 2 +- testdata/diff/create_table/add_uk/plan.json | 2 +- testdata/diff/create_table/add_unique_constraint/plan.json | 2 +- testdata/diff/create_table/alter_column_types/plan.json | 2 +- testdata/diff/create_table/alter_defaults/plan.json | 2 +- testdata/diff/create_table/drop_column/plan.json | 2 +- testdata/diff/create_table/remove_not_null/plan.json | 2 +- testdata/diff/create_trigger/add_trigger/plan.json | 2 +- testdata/diff/create_trigger/add_trigger_constraint/plan.json | 2 +- testdata/diff/create_trigger/add_trigger_old_table/plan.json | 2 +- .../diff/create_trigger/add_trigger_system_catalog/plan.json | 2 +- .../diff/create_trigger/add_trigger_when_distinct/plan.json | 2 +- testdata/diff/create_trigger/alter_trigger/plan.json | 2 +- testdata/diff/create_trigger/drop_trigger/plan.json | 2 +- testdata/diff/create_view/add_view/plan.json | 2 +- testdata/diff/create_view/add_view_join/plan.json | 2 +- testdata/diff/create_view/alter_view/plan.json | 2 +- testdata/diff/create_view/drop_view/plan.json | 2 +- testdata/diff/dependency/function_to_trigger/plan.json | 2 +- testdata/diff/dependency/table_to_materialized_view/plan.json | 2 +- testdata/diff/dependency/table_to_view/plan.json | 2 +- testdata/diff/migrate/v2/plan.json | 2 +- testdata/diff/migrate/v3/plan.json | 2 +- testdata/diff/migrate/v4/plan.json | 2 +- testdata/diff/migrate/v5/plan.json | 2 +- testdata/diff/online/add_composite_index/plan.json | 2 +- testdata/diff/online/add_constraint/plan.json | 2 +- testdata/diff/online/add_fk/plan.json | 2 +- testdata/diff/online/add_functional_index/plan.json | 2 +- testdata/diff/online/add_materialized_view_index/plan.json | 2 +- testdata/diff/online/add_not_null/plan.json | 2 +- testdata/diff/online/add_partial_index/plan.json | 2 +- testdata/diff/online/add_unique_multi_column_index/plan.json | 2 +- testdata/diff/online/alter_composite_index/plan.json | 2 +- testdata/diff/online/alter_constraint/plan.json | 2 +- testdata/diff/online/alter_fk/plan.json | 2 +- testdata/diff/online/alter_materialized_view_index/plan.json | 2 +- 68 files changed, 68 insertions(+), 68 deletions(-) diff --git a/testdata/diff/comment/add_column_comments/plan.json b/testdata/diff/comment/add_column_comments/plan.json index 8c5b7aff..eb6cba4f 100644 --- a/testdata/diff/comment/add_column_comments/plan.json +++ b/testdata/diff/comment/add_column_comments/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "df1f40d6035612080d8c21fe7babf46eb90b58ff046ce39effcff235c774dd28" + "hash": "395a31ea82eaee99933280fdb3f320487dd7dabef2dd772729c7e5f3b8ceff9e" }, "groups": [ { diff --git a/testdata/diff/comment/add_index_comment/plan.json b/testdata/diff/comment/add_index_comment/plan.json index 643b4065..eca3c0a7 100644 --- a/testdata/diff/comment/add_index_comment/plan.json +++ b/testdata/diff/comment/add_index_comment/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f2b6c3b7292d356f4656aa5fdc97d8f5434d21e2586fdd6cb4be001cdf0562b6" + "hash": "4f1ff7accdf71ea376888abac067affdc0307d15f9b6fc44b17603c20f63a39b" }, "groups": [ { diff --git a/testdata/diff/comment/add_table_comment/plan.json b/testdata/diff/comment/add_table_comment/plan.json index 9e953c28..dd87c81f 100644 --- a/testdata/diff/comment/add_table_comment/plan.json +++ b/testdata/diff/comment/add_table_comment/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "bcdceaa09100517d95853387272db4efe8e7f8a11365ccd4e9ea7c5a51b07d39" + "hash": "ecf6d758d162c619907a2ab40f21478757d500dcc5885194afc013992e700339" }, "groups": [ { diff --git a/testdata/diff/comment/add_view_comment/plan.json b/testdata/diff/comment/add_view_comment/plan.json index 677ce8b2..de3b65e0 100644 --- a/testdata/diff/comment/add_view_comment/plan.json +++ b/testdata/diff/comment/add_view_comment/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "7f35f49e07e854463efb7b621f566538ac6c4da8ae198d4fe1093e40b90eda2b" + "hash": "c90334f48d6ac1978ac04366373e4611a43d8027dca3e849d191772d87f0373d" }, "groups": [ { diff --git a/testdata/diff/comment/alter_table_comment/plan.json b/testdata/diff/comment/alter_table_comment/plan.json index 09afa5d3..5b02d17a 100644 --- a/testdata/diff/comment/alter_table_comment/plan.json +++ b/testdata/diff/comment/alter_table_comment/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "12492a1b6c557d5d739b3624898d431dbdbd5b0e7ec7f3d19c1d071cfedbe181" + "hash": "8a4456790d31384951589e1a5cfcdb72c2c13db9aa651fa67f69dd210a4df0f5" }, "groups": [ { diff --git a/testdata/diff/comment/drop_table_comment/plan.json b/testdata/diff/comment/drop_table_comment/plan.json index 769fbf60..c516d216 100644 --- a/testdata/diff/comment/drop_table_comment/plan.json +++ b/testdata/diff/comment/drop_table_comment/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2b99ee37424f4fec085e4e21e5c4651cd6a2c3fcdd4cc890e6936460ae3e94a6" + "hash": "22213fffa77d3732ce0dd017e5f6f54c8c1da4c2b052a2c82e06a119a491614f" }, "groups": [ { diff --git a/testdata/diff/comment/mixed_comments/plan.json b/testdata/diff/comment/mixed_comments/plan.json index 4c0741a2..98817c50 100644 --- a/testdata/diff/comment/mixed_comments/plan.json +++ b/testdata/diff/comment/mixed_comments/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "d68199fd76a438d5ea61fc1e493629e9ed3bd0f7e39fbc50534b8d1336d3304a" + "hash": "4f1b7baaff86b8f65e5ed747a064727e12fb0aeedff84f6f74439d1e20759dad" }, "groups": [ { diff --git a/testdata/diff/comment/noop_column_comments/plan.json b/testdata/diff/comment/noop_column_comments/plan.json index 91b07e90..8411fc17 100644 --- a/testdata/diff/comment/noop_column_comments/plan.json +++ b/testdata/diff/comment/noop_column_comments/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "954720fcfbff9115579a159ab84f07d7a0bd27e2eec82b6174936b4e75a24f3e" + "hash": "0f6266823ea77f5c0d7e8fe9d4b61bc9a40e38d6e25e26dfdf99944e5c4be0d9" }, "groups": null } diff --git a/testdata/diff/create_index/drop_index/plan.json b/testdata/diff/create_index/drop_index/plan.json index be0bce9a..2e328422 100644 --- a/testdata/diff/create_index/drop_index/plan.json +++ b/testdata/diff/create_index/drop_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "78957d26f5c2d21a634a3c10a0fcaa19dc94471aa229713777d555ea992c7575" + "hash": "1001a06e3e83694102fd12e599753c2cdc6f10fe057fb695e9a4feb5f8e280d2" }, "groups": [ { diff --git a/testdata/diff/create_materialized_view/add_materialized_view/plan.json b/testdata/diff/create_materialized_view/add_materialized_view/plan.json index 63867c30..c3063606 100644 --- a/testdata/diff/create_materialized_view/add_materialized_view/plan.json +++ b/testdata/diff/create_materialized_view/add_materialized_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "7832e6bb957a61fb85e3584c8c2fb9c0a86b8ebed003ae1e3d601cb8f2a6b886" + "hash": "f787a47486736a59da932aa3fc0cb21e0fc423cfa56d1b2d3de2b529ccae64b9" }, "groups": [ { diff --git a/testdata/diff/create_materialized_view/alter_materialized_view/plan.json b/testdata/diff/create_materialized_view/alter_materialized_view/plan.json index 5db157af..0d3d06e7 100644 --- a/testdata/diff/create_materialized_view/alter_materialized_view/plan.json +++ b/testdata/diff/create_materialized_view/alter_materialized_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2db0cf8d5581bff70434f0f9f550b6dd4b838e0222994188c8adaed86c42bfe9" + "hash": "731eb3ecfccfda8ea697e2def6e8a6ef1e3a5abd0707741f23aa416f83db54ab" }, "groups": [ { diff --git a/testdata/diff/create_materialized_view/drop_materialized_view/plan.json b/testdata/diff/create_materialized_view/drop_materialized_view/plan.json index a6204ad3..9370065c 100644 --- a/testdata/diff/create_materialized_view/drop_materialized_view/plan.json +++ b/testdata/diff/create_materialized_view/drop_materialized_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "2db0cf8d5581bff70434f0f9f550b6dd4b838e0222994188c8adaed86c42bfe9" + "hash": "731eb3ecfccfda8ea697e2def6e8a6ef1e3a5abd0707741f23aa416f83db54ab" }, "groups": [ { diff --git a/testdata/diff/create_policy/force_rls/plan.json b/testdata/diff/create_policy/force_rls/plan.json index 8e7286ed..8dc1406b 100644 --- a/testdata/diff/create_policy/force_rls/plan.json +++ b/testdata/diff/create_policy/force_rls/plan.json @@ -1,6 +1,6 @@ { "version": "1.0.0", - "pgschema_version": "1.5.0", + "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { "hash": "5e4ac40b64a7ec01d1f41af5c61ba420960e98b8ac166d757ee424ea3f10474f" diff --git a/testdata/diff/create_policy/remove_force_rls/plan.json b/testdata/diff/create_policy/remove_force_rls/plan.json index 58af888e..ee261b6e 100644 --- a/testdata/diff/create_policy/remove_force_rls/plan.json +++ b/testdata/diff/create_policy/remove_force_rls/plan.json @@ -1,6 +1,6 @@ { "version": "1.0.0", - "pgschema_version": "1.5.0", + "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { "hash": "0d3cfe3e8283f19f2e5ea37cfc7f2cbab91b543bf77aac99a2a912a17bc6e3f1" diff --git a/testdata/diff/create_table/add_check/plan.json b/testdata/diff/create_table/add_check/plan.json index 860c5a44..0c199c4d 100644 --- a/testdata/diff/create_table/add_check/plan.json +++ b/testdata/diff/create_table/add_check/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a9d472cd406e27485b570b72906ad224b8282469bd50699bddd6da04acdabaef" + "hash": "151a72608ba307985f8a690775347ce7046befc96fd44144dbb4c0c14c598739" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_array/plan.json b/testdata/diff/create_table/add_column_array/plan.json index 681d9421..b382aa7d 100644 --- a/testdata/diff/create_table/add_column_array/plan.json +++ b/testdata/diff/create_table/add_column_array/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "35e3acc4a8a360a2e7264d0a04f59eba5538bdda085a20fab68e0586f07ae199" + "hash": "7b7158d4b11af7877f0d41ff337c9cd0b5b856665b689d9bda5ffde771eca15b" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_boolean/plan.json b/testdata/diff/create_table/add_column_boolean/plan.json index 15cd04a6..e10b1cc0 100644 --- a/testdata/diff/create_table/add_column_boolean/plan.json +++ b/testdata/diff/create_table/add_column_boolean/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "16ac81cf820fb81c61c45a2df296aabbaef1faea2ae367bd9f2b684eb2bb1c73" + "hash": "fb883747108147290c30c7102443c661074dde58eb54757980a466c99fc2547e" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_cross_schema_custom_type/plan.json b/testdata/diff/create_table/add_column_cross_schema_custom_type/plan.json index 73e0ac23..3c2db265 100644 --- a/testdata/diff/create_table/add_column_cross_schema_custom_type/plan.json +++ b/testdata/diff/create_table/add_column_cross_schema_custom_type/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a9e46b459eae7b043790b1744ca6210ad942beafbef337ae3b787e120a2474eb" + "hash": "3fb7c0ad6f90724c66d94dacefe4e744a618f2fdc0f2bd53ad48c309a397de5b" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_default/plan.json b/testdata/diff/create_table/add_column_default/plan.json index 3f268c4b..f6089a59 100644 --- a/testdata/diff/create_table/add_column_default/plan.json +++ b/testdata/diff/create_table/add_column_default/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "9b499a6597af1664aed74e3a2ed3721b0ff04738a07a2824fd1e8df27542b388" + "hash": "2f64297440983715c85dd0e94e5e6990670d02d31d18fef2170a27df2e2176dc" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_generated/plan.json b/testdata/diff/create_table/add_column_generated/plan.json index 666a4e81..67349e9b 100644 --- a/testdata/diff/create_table/add_column_generated/plan.json +++ b/testdata/diff/create_table/add_column_generated/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "67e51d7bd6b2b020d7a95dbe7f8e5f9bd9ec2e3f4068b9ed09bb63b79e656354" + "hash": "6cda4aebfc751d3647bfc3516385820553a2268952b54c3bc8a378ac774d26af" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_identity/plan.json b/testdata/diff/create_table/add_column_identity/plan.json index 249061db..26c1156c 100644 --- a/testdata/diff/create_table/add_column_identity/plan.json +++ b/testdata/diff/create_table/add_column_identity/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f30b94b07197a737e6b6c7138a6d7a4436506359bbae08f5b00066273cd0c3c8" + "hash": "4223eb048f2842a48f628dc3c914934d49a272e12db7c30b0e9e8da2c4d8ea82" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_integer/plan.json b/testdata/diff/create_table/add_column_integer/plan.json index 65b2ab45..19b414d7 100644 --- a/testdata/diff/create_table/add_column_integer/plan.json +++ b/testdata/diff/create_table/add_column_integer/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "f30b94b07197a737e6b6c7138a6d7a4436506359bbae08f5b00066273cd0c3c8" + "hash": "4223eb048f2842a48f628dc3c914934d49a272e12db7c30b0e9e8da2c4d8ea82" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_jsonb/plan.json b/testdata/diff/create_table/add_column_jsonb/plan.json index 0d40dabc..92a598ae 100644 --- a/testdata/diff/create_table/add_column_jsonb/plan.json +++ b/testdata/diff/create_table/add_column_jsonb/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "200e926e12f006a30c5446dac54ee34af65654626246a51b08569745340ad00b" + "hash": "210e07c9faeb5a5172be65242cec049cfc48c6411495e5e600c6066f290714a0" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_numeric/plan.json b/testdata/diff/create_table/add_column_numeric/plan.json index 70f372fb..437df578 100644 --- a/testdata/diff/create_table/add_column_numeric/plan.json +++ b/testdata/diff/create_table/add_column_numeric/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "b442cd6b4e2237784b59efd5516128e92118922d046a5c11245f08ff5ae6b26a" + "hash": "af34cb4dcbb9213ae95beb30b519da9273bee69285edb598f85a91b3f7a6a3f5" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_serial/plan.json b/testdata/diff/create_table/add_column_serial/plan.json index 47038768..cc5a3756 100644 --- a/testdata/diff/create_table/add_column_serial/plan.json +++ b/testdata/diff/create_table/add_column_serial/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "b7884a46e28633b5ead24c9003ae7b518401e9c20ec018b6711acdd944d464e2" + "hash": "438e37c99fc4d0f72c8e7c11cfd85e1c2312835ef564a94c93d0793802df9b08" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_text/plan.json b/testdata/diff/create_table/add_column_text/plan.json index 973af655..4ac9a29f 100644 --- a/testdata/diff/create_table/add_column_text/plan.json +++ b/testdata/diff/create_table/add_column_text/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "07e071591885544f4a2f7d4f00f938ccd7b28b0068a35c6156a66bc02d3198e4" + "hash": "04591b0a2b787055914f690f4f6c8d5c12bc6b4455b61bc8687625b00c8166d9" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_timestamp/plan.json b/testdata/diff/create_table/add_column_timestamp/plan.json index 56f565c5..2098562f 100644 --- a/testdata/diff/create_table/add_column_timestamp/plan.json +++ b/testdata/diff/create_table/add_column_timestamp/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "9b499a6597af1664aed74e3a2ed3721b0ff04738a07a2824fd1e8df27542b388" + "hash": "2f64297440983715c85dd0e94e5e6990670d02d31d18fef2170a27df2e2176dc" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_uuid/plan.json b/testdata/diff/create_table/add_column_uuid/plan.json index 6a481f27..8f739e8f 100644 --- a/testdata/diff/create_table/add_column_uuid/plan.json +++ b/testdata/diff/create_table/add_column_uuid/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "4125aab115753a6bb6fa152736f22bb0e920536fc811681d3c0915d38e9a6629" + "hash": "a030caa57fd73850952135aeee1017103f24f248ca134a745c37c1f845b61946" }, "groups": [ { diff --git a/testdata/diff/create_table/add_column_varchar/plan.json b/testdata/diff/create_table/add_column_varchar/plan.json index 37c8a8e2..0313cd4b 100644 --- a/testdata/diff/create_table/add_column_varchar/plan.json +++ b/testdata/diff/create_table/add_column_varchar/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "e5373cc0442ff2aa8d5563c4eef38dd9e9c636145f723e2da7463473b8239aa2" + "hash": "3638e006d46b96e8180e757cfe55f3fca54d1bb7c827893e3082393394f71606" }, "groups": [ { diff --git a/testdata/diff/create_table/add_fk/plan.json b/testdata/diff/create_table/add_fk/plan.json index 0c88cc3b..b40d1688 100644 --- a/testdata/diff/create_table/add_fk/plan.json +++ b/testdata/diff/create_table/add_fk/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a2aaf409600a24c35c0310b73f6ff938ddf34a2eea5f7fbad576df693e6060d9" + "hash": "a7fd4cf11997deb34dc75aeec37ffbc008d32d80dba2188a1dc1611fe5b5d710" }, "groups": [ { diff --git a/testdata/diff/create_table/add_pk/plan.json b/testdata/diff/create_table/add_pk/plan.json index 4f9763ba..1c876444 100644 --- a/testdata/diff/create_table/add_pk/plan.json +++ b/testdata/diff/create_table/add_pk/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "56eca0d9894f754860b781a536b26b3be9b236c1991e804a66aa382212868c91" + "hash": "c455204dbf5b6719964c1e26ff7ad6874ae2dda16e7f14be51b2fa082c6e7342" }, "groups": [ { diff --git a/testdata/diff/create_table/add_table_like/plan.json b/testdata/diff/create_table/add_table_like/plan.json index d3e1d6bf..d0112135 100644 --- a/testdata/diff/create_table/add_table_like/plan.json +++ b/testdata/diff/create_table/add_table_like/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "bcda23084995439e43e6387779062084fe7c9fab8123ca140161baf8ec4d2be6" + "hash": "611525ee5214cced7a4f007fb4c9124e073a61481e232445a218c9cbece0f6ad" }, "groups": [ { diff --git a/testdata/diff/create_table/add_uk/plan.json b/testdata/diff/create_table/add_uk/plan.json index e15395fa..ec854e58 100644 --- a/testdata/diff/create_table/add_uk/plan.json +++ b/testdata/diff/create_table/add_uk/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a84b1200ad93167b75cad55c9676d78ea09b64430af7d0751b0ace9773199fdb" + "hash": "d3aee4e18d89d1f6e49492c3805b14ef9db5c94307292d66727bf75b3ce0a1e1" }, "groups": [ { diff --git a/testdata/diff/create_table/add_unique_constraint/plan.json b/testdata/diff/create_table/add_unique_constraint/plan.json index 6cae3e01..d154c4f5 100644 --- a/testdata/diff/create_table/add_unique_constraint/plan.json +++ b/testdata/diff/create_table/add_unique_constraint/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "3cfb4d644c6f758149759c1f43f4126c1d575b73e575813261f55b8fcbe954ae" + "hash": "5b049e926c4be3b7398c0f37d3f1c3b84c6721f3e07be244cfc34b568000e803" }, "groups": [ { diff --git a/testdata/diff/create_table/alter_column_types/plan.json b/testdata/diff/create_table/alter_column_types/plan.json index 3bf47acb..54d58932 100644 --- a/testdata/diff/create_table/alter_column_types/plan.json +++ b/testdata/diff/create_table/alter_column_types/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "35f84c0b7037cee85376dd3253c952c6c9d70ac278f2008acae1ad53c48b5cf9" + "hash": "3af9d137d24bdf3ddf4b191cf2393ada9a71adb61e7fa88d779e2e751933a409" }, "groups": [ { diff --git a/testdata/diff/create_table/alter_defaults/plan.json b/testdata/diff/create_table/alter_defaults/plan.json index d3d75093..8f6f23ab 100644 --- a/testdata/diff/create_table/alter_defaults/plan.json +++ b/testdata/diff/create_table/alter_defaults/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "9aa7e293140ce60f2c3c86ccb5a008af53b76509593fefb6c38f3d5ccfa4d7f8" + "hash": "39b71e962db9b406f7f1d8bb6fceefde31e08b6f30601e8858d8f20cb4efc22d" }, "groups": [ { diff --git a/testdata/diff/create_table/drop_column/plan.json b/testdata/diff/create_table/drop_column/plan.json index 6ba41e9e..78b6708d 100644 --- a/testdata/diff/create_table/drop_column/plan.json +++ b/testdata/diff/create_table/drop_column/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "7a4cb91f2a62589885df4f1b2d61c5f2dff2774d1c85d279ad6bbe98e8a8a4c4" + "hash": "de93945f2adbf913ad174b88f9a092ae770871ee6df38fa3b45fdbb83fdde371" }, "groups": [ { diff --git a/testdata/diff/create_table/remove_not_null/plan.json b/testdata/diff/create_table/remove_not_null/plan.json index c00d993e..85ac4035 100644 --- a/testdata/diff/create_table/remove_not_null/plan.json +++ b/testdata/diff/create_table/remove_not_null/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "198818bdad43728e2459a80720f749f99fbe8b8ad38388f0a78c1ba7e2d4235d" + "hash": "ad30a66c1484efacafca59487ecb37827ecf2fb84d50c08d37e76bfccffa22fd" }, "groups": [ { diff --git a/testdata/diff/create_trigger/add_trigger/plan.json b/testdata/diff/create_trigger/add_trigger/plan.json index 66782a73..a1bf7060 100644 --- a/testdata/diff/create_trigger/add_trigger/plan.json +++ b/testdata/diff/create_trigger/add_trigger/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "134d2530bcab506f61be0b5e1cb7af725c83cf0cb7b4b7eb82bd3142d8b7f055" + "hash": "3639b3a4017a2b7805f4e45a9109357539227d8a0a3bb39814349bb1805daeab" }, "groups": [ { diff --git a/testdata/diff/create_trigger/add_trigger_constraint/plan.json b/testdata/diff/create_trigger/add_trigger_constraint/plan.json index ea84bba2..02c89553 100644 --- a/testdata/diff/create_trigger/add_trigger_constraint/plan.json +++ b/testdata/diff/create_trigger/add_trigger_constraint/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a3821fdda0b2dbfcc09b52c370049def323f72be8d6cdf362a7c09bdca5e7704" + "hash": "78dc0b05e73aa55e80425103b0d8fb983f32eb26cae6db2f6c293661b8b60f18" }, "groups": [ { diff --git a/testdata/diff/create_trigger/add_trigger_old_table/plan.json b/testdata/diff/create_trigger/add_trigger_old_table/plan.json index ce9387cd..d8a01f62 100644 --- a/testdata/diff/create_trigger/add_trigger_old_table/plan.json +++ b/testdata/diff/create_trigger/add_trigger_old_table/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "034e47c5dce9a3b2a69c27d0fafa287627a2c1e76f293214c8462971fdf8eae4" + "hash": "fdad24e9951fe452a5564a5b7b9de8f12531310dd442f752cc393e3fc9a28c85" }, "groups": [ { diff --git a/testdata/diff/create_trigger/add_trigger_system_catalog/plan.json b/testdata/diff/create_trigger/add_trigger_system_catalog/plan.json index 5a1d36da..c8e64625 100644 --- a/testdata/diff/create_trigger/add_trigger_system_catalog/plan.json +++ b/testdata/diff/create_trigger/add_trigger_system_catalog/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "4620d5c78a7c107496877b2ce463eaaa25ad87fac2cecb93a987e0d9a8ea803a" + "hash": "b12c4184141eaba7448393d463064658c09818c4be2d97bbd9a28cd0567ff9c8" }, "groups": [ { diff --git a/testdata/diff/create_trigger/add_trigger_when_distinct/plan.json b/testdata/diff/create_trigger/add_trigger_when_distinct/plan.json index 01e5ca81..d53b7279 100644 --- a/testdata/diff/create_trigger/add_trigger_when_distinct/plan.json +++ b/testdata/diff/create_trigger/add_trigger_when_distinct/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "add8e84aea63492f9b9d54566153e7ab05bdbfa0c80bab242990bcf7b5df1538" + "hash": "ad4075d6c365b628b72e784861c986b1bed0f7c395266c5acc4f52aab3f3fed9" }, "groups": [ { diff --git a/testdata/diff/create_trigger/alter_trigger/plan.json b/testdata/diff/create_trigger/alter_trigger/plan.json index efb4a744..8bb4515a 100644 --- a/testdata/diff/create_trigger/alter_trigger/plan.json +++ b/testdata/diff/create_trigger/alter_trigger/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "c4bbf53294203081bf5a4c3f26333dd5d74b4c3d3b4d28af61ba6f2ee040c8e3" + "hash": "8b7fc5c8f9c2fa7fd736a73a16990926fcbcbefc216e72bdceb76150f6374127" }, "groups": [ { diff --git a/testdata/diff/create_trigger/drop_trigger/plan.json b/testdata/diff/create_trigger/drop_trigger/plan.json index 2d2f6aac..2bc00a82 100644 --- a/testdata/diff/create_trigger/drop_trigger/plan.json +++ b/testdata/diff/create_trigger/drop_trigger/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "c4bbf53294203081bf5a4c3f26333dd5d74b4c3d3b4d28af61ba6f2ee040c8e3" + "hash": "8b7fc5c8f9c2fa7fd736a73a16990926fcbcbefc216e72bdceb76150f6374127" }, "groups": [ { diff --git a/testdata/diff/create_view/add_view/plan.json b/testdata/diff/create_view/add_view/plan.json index ab40cf14..6f06e5f5 100644 --- a/testdata/diff/create_view/add_view/plan.json +++ b/testdata/diff/create_view/add_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "e937536446c155860f69ab4a38fc142791a9a3636ada3e9113057afd9d875190" + "hash": "d8927a4f1a355b7082959da316da682f9455931dc9dc575e3e00f31b4e691221" }, "groups": [ { diff --git a/testdata/diff/create_view/add_view_join/plan.json b/testdata/diff/create_view/add_view_join/plan.json index ca5f097f..c2583093 100644 --- a/testdata/diff/create_view/add_view_join/plan.json +++ b/testdata/diff/create_view/add_view_join/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "a94ac1b0ae0499b7edb0ddfcde21a9b70e7927235a42b118cee7c81107ad078d" + "hash": "685ac778b403f5c2ed531013d11acb145defbe7c071c68b236359d342c640ff4" }, "groups": [ { diff --git a/testdata/diff/create_view/alter_view/plan.json b/testdata/diff/create_view/alter_view/plan.json index 1e8a73fd..a11e6a84 100644 --- a/testdata/diff/create_view/alter_view/plan.json +++ b/testdata/diff/create_view/alter_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "8ddc06ab4dd2b730c2cf30a83d20e0447446b665b462de1c1caf1ebffbc4ad89" + "hash": "4d5048d66c43dc04dca3edf4522e89ec3580dd8258012114edda545c0d345841" }, "groups": [ { diff --git a/testdata/diff/create_view/drop_view/plan.json b/testdata/diff/create_view/drop_view/plan.json index b4fd9ad7..ee5eccf5 100644 --- a/testdata/diff/create_view/drop_view/plan.json +++ b/testdata/diff/create_view/drop_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "1cb252fb73f2cd14451c384b8aef2469e213d50ef5a9a23d3474d67fed592a18" + "hash": "9ef269447191864604c91aca5dd54e7b5c2a7569d517434dcfdb9f59df0a468f" }, "groups": [ { diff --git a/testdata/diff/dependency/function_to_trigger/plan.json b/testdata/diff/dependency/function_to_trigger/plan.json index dfefb37c..b6ec428c 100644 --- a/testdata/diff/dependency/function_to_trigger/plan.json +++ b/testdata/diff/dependency/function_to_trigger/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "20a989c794b418a8cc923aeca226f4be89e31b16b8bd0fd00adb2b4e2936ac18" + "hash": "0929968f1e1a008059219136dead74e2a38c04764800b78ec16f30dd9b0db645" }, "groups": [ { diff --git a/testdata/diff/dependency/table_to_materialized_view/plan.json b/testdata/diff/dependency/table_to_materialized_view/plan.json index fd285f23..a13a4d63 100644 --- a/testdata/diff/dependency/table_to_materialized_view/plan.json +++ b/testdata/diff/dependency/table_to_materialized_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "55a7680d1ce73c3b56fbc34065ad9197a57668cc1cdcd0854bce421c2fa33d4b" + "hash": "a08aef91b00c2d7e8a5340d796b0dfff1405fa6251557833e8ba6c4aa8b490ab" }, "groups": [ { diff --git a/testdata/diff/dependency/table_to_view/plan.json b/testdata/diff/dependency/table_to_view/plan.json index 80bd8bb3..ffcd0410 100644 --- a/testdata/diff/dependency/table_to_view/plan.json +++ b/testdata/diff/dependency/table_to_view/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "cb42ebddb31b25aff61341a057c2793b8c6dda37e3e1a6eee296bfb31ec71c50" + "hash": "599d8a0663cf5915775e7a6a6a643b1b7ceca262a1a066139d90b0a69371d78d" }, "groups": [ { diff --git a/testdata/diff/migrate/v2/plan.json b/testdata/diff/migrate/v2/plan.json index 0486d8a7..dd212312 100644 --- a/testdata/diff/migrate/v2/plan.json +++ b/testdata/diff/migrate/v2/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "e989216806a1e82a6a01d6d5898b00b5d94d3a5888c6ef481fa5f931f649aab5" + "hash": "852c7be0c064cc61b61c0c0aa4d6bf4ceea14b8de4ba659a6b0820025804974d" }, "groups": [ { diff --git a/testdata/diff/migrate/v3/plan.json b/testdata/diff/migrate/v3/plan.json index 2d496922..a47fd168 100644 --- a/testdata/diff/migrate/v3/plan.json +++ b/testdata/diff/migrate/v3/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "9329b8621db3e793651fd617ad5e8a6301c168562d9db784ae5a6f89b6a47544" + "hash": "18238a8541ab881b44763d9ad42b42a5386a62bef58764711e6bd1ed696f5d13" }, "groups": [ { diff --git a/testdata/diff/migrate/v4/plan.json b/testdata/diff/migrate/v4/plan.json index 8765fe11..beea59ee 100644 --- a/testdata/diff/migrate/v4/plan.json +++ b/testdata/diff/migrate/v4/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "73cb3763bd04c0c4065b4af796613ff72b7eeb1b9f9639f5adbbdf2c8654f019" + "hash": "01d5713f309088f07625f75edecdde8016b424a5e2b25fc5c5b6011052bdc6b2" }, "groups": [ { diff --git a/testdata/diff/migrate/v5/plan.json b/testdata/diff/migrate/v5/plan.json index 23afb0a8..eaab5eca 100644 --- a/testdata/diff/migrate/v5/plan.json +++ b/testdata/diff/migrate/v5/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "8251b49db73f8777c28fc88ee639cf97964e218d34258d24d77e417e8e079b0d" + "hash": "610b9cb87c1e796cc5716ceaace23fe2820425474054cf4ce10a2f2e2bae879e" }, "groups": [ { diff --git a/testdata/diff/online/add_composite_index/plan.json b/testdata/diff/online/add_composite_index/plan.json index f8276d42..dac19d09 100644 --- a/testdata/diff/online/add_composite_index/plan.json +++ b/testdata/diff/online/add_composite_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "096298f5bbc494a92bc3d744a8df821c45265dd2144a2d033ac6c8d55b87d344" + "hash": "4174f5cda975543aad9cf30ba2b3a2bd5ace1e79185c119db587df0795195c33" }, "groups": [ { diff --git a/testdata/diff/online/add_constraint/plan.json b/testdata/diff/online/add_constraint/plan.json index 3e20a65a..61cfbd8f 100644 --- a/testdata/diff/online/add_constraint/plan.json +++ b/testdata/diff/online/add_constraint/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "ef26f15cb3767dcd22c7598c3fdb9b9a2074c64374ad54e98c18a9e843e49802" + "hash": "563f1deff597a3640689858d007209bb87e776772a637d6ae4dc151558f8af38" }, "groups": [ { diff --git a/testdata/diff/online/add_fk/plan.json b/testdata/diff/online/add_fk/plan.json index c9ed492a..85c508b2 100644 --- a/testdata/diff/online/add_fk/plan.json +++ b/testdata/diff/online/add_fk/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "9fd9ae5d82258bc6fa009611e840fbcf4bf3b625bd065d746cba35b00a790d4a" + "hash": "1ccd17ca4d799e41166388913d207aaa3c5f76ce563867c094967903060fbd42" }, "groups": [ { diff --git a/testdata/diff/online/add_functional_index/plan.json b/testdata/diff/online/add_functional_index/plan.json index e4ec93be..e75424cf 100644 --- a/testdata/diff/online/add_functional_index/plan.json +++ b/testdata/diff/online/add_functional_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "d0302a7a13eb96486a5beb8eff9df683e8fb921d65e8d51590eee31eb40a80de" + "hash": "406ccedbcdd9e1ddf84ea76e77ab7f801ff082a60dbf3067264ea6e3510885dc" }, "groups": [ { diff --git a/testdata/diff/online/add_materialized_view_index/plan.json b/testdata/diff/online/add_materialized_view_index/plan.json index 5d481659..65dac6db 100644 --- a/testdata/diff/online/add_materialized_view_index/plan.json +++ b/testdata/diff/online/add_materialized_view_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "95f4677f3f81cd0ade758c8b4fc977d116faff8f9e4ab8fe4717543b64e1c5e6" + "hash": "d406efe9d31c922a6f588c87b0724a50cb6f2d88cc57170855e59dc201315f2b" }, "groups": [ { diff --git a/testdata/diff/online/add_not_null/plan.json b/testdata/diff/online/add_not_null/plan.json index 0e5daebd..c6a93335 100644 --- a/testdata/diff/online/add_not_null/plan.json +++ b/testdata/diff/online/add_not_null/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "394526c719579427521f47b83eeecbc763c4ef032f2a32109ca4cf17406ddd19" + "hash": "653938aaa4f39adc46e8b751c1d67ef7229a57a407833953c0b0176e33e70a58" }, "groups": [ { diff --git a/testdata/diff/online/add_partial_index/plan.json b/testdata/diff/online/add_partial_index/plan.json index 0cb675ea..2121904c 100644 --- a/testdata/diff/online/add_partial_index/plan.json +++ b/testdata/diff/online/add_partial_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "027caac0137fe70d301cf88a60838a17a20662da10176ce34adab03d7ab985dd" + "hash": "40ed646f28de84540200a1acd21fc416700f08c6779bb8f105b423be70a5df8c" }, "groups": [ { diff --git a/testdata/diff/online/add_unique_multi_column_index/plan.json b/testdata/diff/online/add_unique_multi_column_index/plan.json index a2aa61d2..3e743418 100644 --- a/testdata/diff/online/add_unique_multi_column_index/plan.json +++ b/testdata/diff/online/add_unique_multi_column_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "599d4c147b2d374c7408063c1dcf04eead4ca2083fbf82eb5feedb6d13e871d8" + "hash": "303f8c6f8d737bc168f33334810330f44f03a768358452ea1150dcffb9ccfdfa" }, "groups": [ { diff --git a/testdata/diff/online/alter_composite_index/plan.json b/testdata/diff/online/alter_composite_index/plan.json index e496a135..872f1925 100644 --- a/testdata/diff/online/alter_composite_index/plan.json +++ b/testdata/diff/online/alter_composite_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "5d9be8081a70f2a4b78984b3a4f921bc180f4223f8ade89f3aa4fcbdcdaaffe1" + "hash": "cd08bb1240e90143c0edfd9caf0adf02d37d2542afd705a4274eb9b287e180a4" }, "groups": [ { diff --git a/testdata/diff/online/alter_constraint/plan.json b/testdata/diff/online/alter_constraint/plan.json index b2130d87..0b0437e7 100644 --- a/testdata/diff/online/alter_constraint/plan.json +++ b/testdata/diff/online/alter_constraint/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "6f2182d55e7944a7676fbb25a9384e27fc6a87a63c6902eee9567c77f54f956a" + "hash": "0af470b5f74a5e9c2fc3f750512d275cb61cde0a9c61eb1ab69f2e505c4cb3fd" }, "groups": [ { diff --git a/testdata/diff/online/alter_fk/plan.json b/testdata/diff/online/alter_fk/plan.json index 943409fd..3828ee72 100644 --- a/testdata/diff/online/alter_fk/plan.json +++ b/testdata/diff/online/alter_fk/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "7bd3fb61bc74dd3d7fe17a54be7ca228e4b6cc52e40b54dd1459fa91a6ef083a" + "hash": "ad9af0eeaeb21df3d1e0fea0e61b060e89a0b7cfcdd347df2e4a65d2b82afce3" }, "groups": [ { diff --git a/testdata/diff/online/alter_materialized_view_index/plan.json b/testdata/diff/online/alter_materialized_view_index/plan.json index a83baad6..718e06bd 100644 --- a/testdata/diff/online/alter_materialized_view_index/plan.json +++ b/testdata/diff/online/alter_materialized_view_index/plan.json @@ -3,7 +3,7 @@ "pgschema_version": "1.5.1", "created_at": "1970-01-01T00:00:00Z", "source_fingerprint": { - "hash": "bc26d319de76e0013b5cf852e51081495a21e0eb790e4e337d5f173bf8527f52" + "hash": "a789dab87de027305ad9ecd75cb4c0080b8e1d4229a82e22ae9bb7e4ec62aa84" }, "groups": [ {