Repository navigation
Conversation
Narrows posthog_frozen_perf to the Trino targets and the queries bounded by per-split Parquet footer handling, to measure PostHog/trino#72 without the full five-engine run: - targets: trino, trino_cached (no PGWire, no Athena) - queries: q_events_total_v5, q_events_count_one_day_v5, and q_events_by_name_march_2026_v5 as a scan-bound regression check - 1 warmup + 2 measured iterations; no properties comparison The scenario keeps its name because scenario-dev.yml and run.sh select the Trino suite and image by it. The scenario tests that pin the nightly shape are adjusted to the targeted one. Branch runs do not publish to the perf dashboard (publishing requires refs/heads/main). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Test Impact PlanDeterministic summary of how this PR changes tests, CI runners, and coverage-risk signals. Summary
Signals
Coverage risk: neutral or increased No coverage-reduction warnings detected. |
…umn bounds (do not merge) Restore the full nightly query set for the trino and trino_cached targets, still with one warmup and two measured iterations. Pin the isolated hoglake server to a build of main 27a705ed, which serves /scan column_stats (PostHog/hoglake#189), so the connector's planning-time pruning (PostHog/trino#77) has bounds to prune on. The merge of main brings the stats-hydration wait (#1229). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Warning
Do not merge. This branch runs the full benchmark with dictionary aggregation enabled in isolated Trino fixtures. It is an experiment for deciding the PostHog runtime default.
The full performance run already uses a Trino image containing PostHog/trino#95, but leaves dictionary aggregation at its upstream default of false. This experiment enables the aggregation path that reuses preserved Parquet dictionary entries.
The branch includes current main and restores the complete benchmark: all seven table queries, all five engine configurations, the properties comparison, one warmup and four measured iterations. The diff against main contains only two Trino configuration properties, an existing fixture regression assertion, and documentation. The shared fixture template also affects isolated Trino E2E/bootstrap clusters.
For the comparison, use the same digest-pinned Trino image as the completed configuration-off run:
ghcr.io/posthog/trino:97d08abc2c6835b6040be1107b9b1de781934ba2@sha256:8556bb02a431a701e5457cd9bd22e31013cf7fb13caf4c184df16457b239adc5. That run's source tree matches the current main base. Compare latency, Trino query CPU, peak memory and failures across the complete corpus; interpret Athena queueing separately from engine time.Validation:
just test-mw-fixturesandjust test-perfpassed.just lintreports six staticcheck findings in unchanged code; untouched main produces identical lint output.No production configuration is changed. Raw queries, dataset locations, credentials and deployment identifiers are omitted from this PR.