• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

supabase / etl / 24786574685 / 1
76%
main: 76%

Build:
DEFAULT BRANCH: main
Ran 22 Apr 2026 03:32PM UTC
Files 166
Run time 6s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

22 Apr 2026 03:18PM UTC coverage: 77.887% (+0.2%) from 77.714%
24786574685.1

push

github

web-flow
test(etl): register notify_on_* before starting pipeline (#681)

* test(etl): register notify_on_* before starting pipeline

`pipeline_processes_concurrent_inserts_during_startup` registered
`notify_on_table_state_type` for both tables after `pipeline.start()`
returned. `pipeline.start()` spawns the apply worker and returns; the
worker then drives the table states asynchronously. If a table
transitioned to `Ready` before the notify was registered, the Notify
was never armed and the test hung until the 120s `TimedNotify` timeout.

`NotifyingStore::notify_on_*` and
`TestDestinationWrapper::wait_for_*` only fire on updates that occur
after registration, so all wait-for conditions must be set up before
the producer is started. Move the three registrations above
`pipeline.start()` to close the window.

* chore(etl): silence dead_code lint on RetryDirective::NoRetry

`NoRetry` is only constructed inside a `#[cfg(feature = "failpoints")]`
arm in `build_error_handling_policy`, so clippy flags the variant as
dead code in default builds and fails CI with `-D warnings`.

Gate the `allow(dead_code)` on the feature so the variant is allowed
to be uncostructed only when failpoints is off.

* docs(agents): note notify-before-start race in testing guidelines

Codify the rule that backed the preceding
`test(etl): register notify_on_* before starting pipeline` fix, so future
tests don't repeat the same register-after-start race against
`NotifyingStore` / `TestDestinationWrapper` helpers.

* test(etl): register ready notifier before start in empty_tables test

`empty_tables_are_created_at_destination` registered its
`notify_on_table_state_type(Ready)` after `pipeline.start()`, same race
as `pipeline_processes_concurrent_inserts_during_startup`. The Init ->
Ready transition driven by the apply worker during startup could land
before the notifier is armed, making `.notified()` hang for 120s.

25170 of 32316 relevant lines covered (77.89%)

1039.07 hits per line

Source Files on job 24786574685.1
  • Tree
  • List 166
  • Changed 6
  • Source Changed 1
  • Coverage Changed 6
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 24786574685
  • e50d660e on github
  • Prev Job for on main (#24785048241.1)
  • Next Job for on main (#24787531124.1)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc