Skip to content

[bot] Merge 26.9 to develop - #997

Merged
github-actions[bot] merged 4 commits into
developfrom
fb_bot_merge_26.9
Sep 9, 2026
Merged

[bot] Merge 26.9 to develop#997
github-actions[bot] merged 4 commits into
developfrom
fb_bot_merge_26.9

Conversation

@github-actions

@github-actions github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown

Generated automatically.
Merging changes from: 6234410
Approve all matching PRs simultaneously.
Approval will trigger automatic merge.
Verify all PRs before approving: https://internal.labkey.com/Scrumtime/Backlog/harvest-gitOpenPullRequests.view?branch=fb_bot_merge_26.9

labkey-martyp and others added 4 commits September 1, 2026 12:41
…985)

## Rationale

Make it possible to tell from the ETL job log which event data rows
ended up holding no attribute values. The _SND Event Data step clears
attribute values as a side effect of its merge and only the _SND
Attribute Data step restores them; because the two steps decide
independently which rows to process, a mismatch leaves event data
silently stripped. Newly inserted rows carry the same exposure, arriving
with no attribute values and depending on that same second step to
supply them. Until now nothing in the log identified the rows either
step handled, so the problem could only be found by querying the
database after the fact.

## Changes

- Both ETL steps log the EventDataIds they handled, so the two logs can
be diffed against each other.
- The event data step logs on every path that touches exp.Object: merge,
insert, and delete.
- The merge also logs which rows are about to have their attribute
values cleared.
- The attribute data step logs the rows it received, the rows it wrote,
and the difference between them.
- The attribute data step reports when its source rows arrive ungrouped,
which is one way the values fail to be restored.
- Failures that abort the attribute data step now name the row that
failed and note that the batch was left with its attribute values
cleared.
- Both steps also log the source rowversion span of each batch, so the
rows a step actually handled can be placed against the incremental
window the ETL logs for the run.
- The attribute data step pairs each EventDataId it left unwritten with
its rowversion; one falling inside the window points at the source view
dropping the row rather than at a window mismatch.
- Id lists are sorted and chunked for diffing, and omitted above 2000
ids so the full batches of an initial load don't flood the log.
- Everything logs at debug, which the ETL job logger runs at by default;
the diagnostics that cost queries or memory are skipped when debug is
off.
- No change to what the merge writes.
@github-actions
github-actions Bot merged commit 2c681fe into develop Sep 9, 2026
8 checks passed
@github-actions
github-actions Bot deleted the fb_bot_merge_26.9 branch September 9, 2026 13:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants