Skip to content

Commit ea93e18

Browse files
committed
Add user activity table
1 parent becf920 commit ea93e18

1 file changed

Lines changed: 8 additions & 2 deletions

File tree

charts/tidepool/charts/kafka/templates/2-users-source-kafka-connector.yaml

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,11 +27,17 @@ spec:
2727
value.converter: 'org.apache.kafka.connect.json.JsonConverter'
2828
value.converter.schemas.enable: false
2929
snapshot.mode: {{ .Values.keycloak.snapshotMode }}
30-
table.include.list: 'public.user_entity,public.user_role_mapping,public.keycloak_role'
30+
table.include.list: 'public.user_entity,public.user_role_mapping,public.keycloak_role,public.tidepool_user_activity_event'
31+
# Key the user-activity outbox by user_id (rather than the row's PK) so every
32+
# event for a user lands on one partition and is consumed in commit order. This
33+
# is what lets the clinic-worker consumer apply updates as last-writer-wins
34+
# safely; combined with snapshot.mode=never it removes out-of-order/replay
35+
# regressions. Other tables keep their default primary-key based message key.
36+
message.key.columns: 'public.tidepool_user_activity_event:user_id'
3137
transforms: 'filter'
3238
transforms.filter.type: 'io.debezium.transforms.Filter'
3339
transforms.filter.language: 'jsr223.groovy'
34-
transforms.filter.topic.regex: '.+\.public.(user_entity|keycloak_role)'
40+
transforms.filter.topic.regex: '.+\.public.(user_entity|keycloak_role|tidepool_user_activity_event)'
3541
transforms.filter.condition: "value.op && (((value.op == 'r' || value.op == 'c' || value.op == 'u') && (value.after && value.after.realm_id && value.after.realm_id == '{{ $realm }}')) || (value.op == 'd'))"
3642
tasksMax: 1
3743
{{- end }}

0 commit comments

Comments
 (0)