fix immutable columns for session_state and session_connnection_state (#449)

This commit is contained in:
Jim authored and GitHub committed 2020-09-25 16:04:43 -04:00
1 parent f7ac991d32
commit 978f7dc34c
4 files changed
+24 -4

No files matched your search

+3 -2
View File
@@ -3764,7 +3764,8 @@ begin;
immutable_columns
before
update on session_state
for each row execute procedure immutable_columns('session_id', 'start_time', 'previous_end_time');
for each row execute procedure immutable_columns('session_id', 'state', 'start_time', 'previous_end_time');
create or replace function
insert_session_state()
@@ -4101,7 +4102,7 @@ begin;
immutable_columns
before
update on session_connection_state
for each row execute procedure immutable_columns('connection_id', 'state', 'start_time');
for each row execute procedure immutable_columns('connection_id', 'state', 'start_time', 'previous_end_time');
create or replace function
insert_session_connection_state()
@@ -408,7 +408,8 @@ begin;
immutable_columns
before
update on session_state
for each row execute procedure immutable_columns('session_id', 'start_time', 'previous_end_time');
for each row execute procedure immutable_columns('session_id', 'state', 'start_time', 'previous_end_time');
create or replace function
insert_session_state()
@@ -249,7 +249,7 @@ begin;
immutable_columns
before
update on session_connection_state
for each row execute procedure immutable_columns('connection_id', 'state', 'start_time');
for each row execute procedure immutable_columns('connection_id', 'state', 'start_time', 'previous_end_time');
create or replace function
insert_session_connection_state()
+18
View File
@@ -119,6 +119,15 @@ func TestState_ImmutableFields(t *testing.T) {
}(),
fieldMask: []string{"PublicId"},
},
{
name: "status",
update: func() *State {
s := new.Clone().(*State)
s.Status = "active"
return s
}(),
fieldMask: []string{"Status"},
},
{
name: "start time",
update: func() *State {
@@ -258,6 +267,15 @@ func TestConnectionState_ImmutableFields(t *testing.T) {
}(),
fieldMask: []string{"PublicId"},
},
{
name: "status",
update: func() *ConnectionState {
s := new.Clone().(*ConnectionState)
s.Status = "closed"
return s
}(),
fieldMask: []string{"Status"},
},
{
name: "start time",
update: func() *ConnectionState {