Skip to content

Commit

Permalink
Copy toasted column and toggle marshalling old values (#68)
Browse files Browse the repository at this point in the history
  • Loading branch information
stlava authored Dec 9, 2020
1 parent a293e59 commit c958b5e
Show file tree
Hide file tree
Showing 15 changed files with 343 additions and 29 deletions.
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,13 @@ pg-bifrost currently supports table level filtering in both a whitelist and blac

Additionally, there is a regex mode to enable matching multiple tables at once, using `whitelist-regex` and `blacklist-regex`

### Marshalling

Config Var | Description
-- | --
no-marshal-old-value | Disable marshalling of the old value. This can help with performance by only writing the new values.

In order for pg-bifrost to replicate TOAST-ed columns you must set `REPLICA IDENTITY FULL` on the table containing TOAST columns. Postgres will then send the old and new values for each row written instead of just the current value. If you do not wish to include both the old and new values in your output then you can use `no-marshal-old-value` to disable outputting old values. It is important to note that setting replicate identity to `FULL` can cause severe performance implications. See https://www.postgresql.org/docs/10/logical-replication-publication.html for details.

### Partitioning

Expand Down
1 change: 1 addition & 0 deletions app/config/headers.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,5 @@ const (
VAR_NAME_BLACKLIST_REGEX = "blacklist-regex"
VAR_NAME_PARTITION_METHOD = "partition-method"
VAR_NAME_PARTITION_COUNT = "partition-count"
VAR_NAME_NO_MARSHAL_OLD_VALUE = "no-marshal-old-value"
)
11 changes: 10 additions & 1 deletion app/runner.go
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ func New(shutdownHandler shutdown.ShutdownHandler,
replicationSlot string,
clientConfig map[string]interface{},
filterConfig map[string]interface{},
marshallerConfig map[string]interface{},
partitionConfig map[string]interface{},
batcherConfig map[string]interface{},
transportType transport.TransportType,
Expand Down Expand Up @@ -104,6 +105,13 @@ func New(shutdownHandler shutdown.ShutdownHandler,
log.Panic("Wrong type assertion")
}

// Get marshaller configurations
noMarshalOldValue, ok := marshallerConfig[config.VAR_NAME_NO_MARSHAL_OLD_VALUE].(bool)
if !ok {
log.Panic("Wrong type assertion")
}
log.Info("noMarshalOldValue=", noMarshalOldValue)

// Get partitioner configurations
partMethod, ok := partitionConfig[config.VAR_NAME_PARTITION_METHOD].(partitioner.PartitionMethod)
if !ok {
Expand Down Expand Up @@ -180,7 +188,8 @@ func New(shutdownHandler shutdown.ShutdownHandler,
marshallerInstance := marshaller.New(
shutdownHandler,
partitionerInstance.OutputChan,
statsChan)
statsChan,
noMarshalOldValue)

transportManager := manager.New(
shutdownHandler,
Expand Down
1 change: 1 addition & 0 deletions itests/containers/defaults.env
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ CREATE_SLOT=true
AWS_ACCESS_KEY_ID=DUMMYACCESSKEYID
AWS_SECRET_ACCESS_KEY=DUMMYSECRETACCESSKEY
AWS_REGION=us-east-1
NO_MARSHAL_OLD_VALUE=true
1 change: 1 addition & 0 deletions itests/tests/base/test_toasted/envfile.env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
EXPECTED_COUNT=4
7 changes: 7 additions & 0 deletions itests/tests/base/test_toasted/golden/test.0

Large diffs are not rendered by default.

13 changes: 13 additions & 0 deletions itests/tests/base/test_toasted/input/001.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
CREATE TABLE toast_test (id SERIAL PRIMARY KEY, value TEXT, ivalue INTEGER);

INSERT INTO toast_test (value, ivalue) VALUES('small text', 1);
INSERT INTO toast_test (value, ivalue) VALUES('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', 1);

UPDATE toast_test SET ivalue = 2 where id = 1;
UPDATE toast_test SET ivalue = 2 where id = 2;

ALTER TABLE toast_test REPLICA IDENTITY FULL;
INSERT INTO toast_test (value, ivalue) VALUES('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', 1);
UPDATE toast_test SET ivalue = 2 where id = 3;

UPDATE toast_test SET value = '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' where id = 3;
5 changes: 5 additions & 0 deletions itests/tests/base/test_toasted/test.bats
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
load ../../../common

@test "base/test_toasted" {
do_test
}
2 changes: 2 additions & 0 deletions itests/tests/base/test_toasted_withold/envfile.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
EXPECTED_COUNT=4
NO_MARSHAL_OLD_VALUE=false
Loading

0 comments on commit c958b5e

Please sign in to comment.