Skip to content

Emit error log on apply failure - #56

Merged
slashmo merged 2 commits into
mainfrom
feature/logging
May 25, 2026
Merged

slashmo merged 2 commits into
mainfrom
feature/logging

Conversation

@slashmo

@slashmo slashmo commented May 25, 2026

Copy link
Copy Markdown
Member

We previously silently re-threw target-based errors in apply(). Now, we add a final error log line to let operators know that the migration run failed. The PR also adds extensive unit testing for all log entries across the library.

@slashmo
slashmo enabled auto-merge (squash) May 25, 2026 00:23
@codecov

codecov Bot commented May 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ All tests successful. No failed tests found.

📢 Thoughts on this report? Let us know!

@slashmo
slashmo merged commit 73d78e9 into main May 25, 2026
18 checks passed
@slashmo
slashmo deleted the feature/logging branch May 25, 2026 00:26
@github-actions

Copy link
Copy Markdown

✅ Pull request no significant performance differences ✅

Summary

�[33mWarning: this project depends on the benchmark package using its legacy
identifier 'package-benchmark'. The repository has been renamed; please update
your Package.swift to use the new URL and identifier:

.package(url: "https://github.com/ordo-one/benchmark", ...)
.product(name: "Benchmark", package: "benchmark"),
.plugin(name: "BenchmarkPlugin", package: "benchmark"),

Support for the legacy 'package-benchmark' identifier will be removed in a
future release.�[0m

�[33mWarning: running with the Swift runtime interposer on Linux to avoid the Swift 6.3 runtime hook crash. See https://github.com/ordo-one/benchmark/issues/349�[0m

New baseline 'pull_request' is WITHIN the 'main' baseline thresholds.

Full Benchmark Comparison

�[33mWarning: this project depends on the benchmark package using its legacy
identifier 'package-benchmark'. The repository has been renamed; please update
your Package.swift to use the new URL and identifier:

.package(url: "https://github.com/ordo-one/benchmark", ...)
.product(name: "Benchmark", package: "benchmark"),
.plugin(name: "BenchmarkPlugin", package: "benchmark"),

Support for the legacy 'package-benchmark' identifier will be removed in a
future release.�[0m

�[33mWarning: running with the Swift runtime interposer on Linux to avoid the Swift 6.3 runtime hook crash. See https://github.com/ordo-one/benchmark/issues/349�[0m

Comparing results between 'main' and 'pull_request'

Host 'f744ecb461d6' with 4 'x86_64' processors with 15 GB memory, running:
#13~24.04.1-Ubuntu SMP Wed Apr 15 16:52:17 UTC 2026

CraneBenchmarks

FileSystemMigrationResolver: Read SQL Script metrics

Time (wall clock): results within specified thresholds, fold down for details.

Time (wall clock) (μs) * p0 p25 p50 p75 p90 p99 p100 Samples
main 11 11 11 11 11 13 13 88
pull_request 11 11 11 11 11 13 13 89
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

Time (total CPU): results within specified thresholds, fold down for details.

Time (total CPU) (μs) * p0 p25 p50 p75 p90 p99 p100 Samples
main 0 10 10 10 20 20 20 88
pull_request 0 10 10 10 20 20 20 89
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

Throughput (# / s): results within specified thresholds, fold down for details.

Throughput (# / s) (K) p0 p25 p50 p75 p90 p99 p100 Samples
main 93 92 92 92 91 76 76 88
pull_request 93 93 92 92 91 79 79 89
Δ 0 1 0 0 0 3 3 1
Improvement % 0 1 0 0 0 4 4 1

Memory (resident peak): results within specified thresholds, fold down for details.

Memory (resident peak) (M) p0 p25 p50 p75 p90 p99 p100 Samples
main 49 50 50 50 50 50 50 88
pull_request 49 49 49 49 49 49 49 89
Δ 0 -1 -1 -1 -1 -1 -1 1
Improvement % 0 2 2 2 2 2 2 1

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) * p0 p25 p50 p75 p90 p99 p100 Samples
main 9 9 9 9 9 9 9 88
pull_request 9 9 9 9 9 9 9 89
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

FileSystemMigrationResolver: Resolve metrics

Time (wall clock): results within specified thresholds, fold down for details.

Time (wall clock) (ms) * p0 p25 p50 p75 p90 p99 p100 Samples
main 73 73 74 74 74 74 74 14
pull_request 72 72 72 72 73 73 73 14
Δ -1 -1 -2 -2 -1 -1 -1 0
Improvement % 1 1 3 3 1 1 1 0

Time (total CPU): results within specified thresholds, fold down for details.

Time (total CPU) (ms) * p0 p25 p50 p75 p90 p99 p100 Samples
main 70 70 70 80 80 80 80 14
pull_request 60 70 70 80 80 80 80 14
Δ -10 0 0 0 0 0 0 0
Improvement % 14 0 0 0 0 0 0 0

Throughput (# / s): results within specified thresholds, fold down for details.

Throughput (# / s) (#) p0 p25 p50 p75 p90 p99 p100 Samples
main 14 14 14 14 14 14 14 14
pull_request 14 14 14 14 14 14 14 14
Δ 0 0 0 0 0 0 0 0
Improvement % 0 0 0 0 0 0 0 0

Memory (resident peak): results within specified thresholds, fold down for details.

Memory (resident peak) (M) p0 p25 p50 p75 p90 p99 p100 Samples
main 49 49 49 49 49 49 49 14
pull_request 49 49 49 49 49 49 49 14
Δ 0 0 0 0 0 0 0 0
Improvement % 0 0 0 0 0 0 0 0

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) (K) * p0 p25 p50 p75 p90 p99 p100 Samples
main 75 75 75 75 75 75 75 14
pull_request 75 75 75 75 75 75 75 14
Δ 0 0 0 0 0 0 0 0
Improvement % 0 0 0 0 0 0 0 0

FileSystemMigrationResolver: Resolve recursively metrics

Time (wall clock): results within specified thresholds, fold down for details.

Time (wall clock) (ms) * p0 p25 p50 p75 p90 p99 p100 Samples
main 75 76 76 76 76 88 88 13
pull_request 75 75 75 75 76 77 77 14
Δ 0 -1 -1 -1 0 -11 -11 1
Improvement % 0 1 1 1 0 12 12 1

Time (total CPU): results within specified thresholds, fold down for details.

Time (total CPU) (ms) * p0 p25 p50 p75 p90 p99 p100 Samples
main 60 70 80 80 90 90 90 13
pull_request 70 70 80 80 80 90 90 14
Δ 10 0 0 0 -10 0 0 1
Improvement % -17 0 0 0 11 0 0 1

Throughput (# / s): results within specified thresholds, fold down for details.

Throughput (# / s) (#) p0 p25 p50 p75 p90 p99 p100 Samples
main 13 13 13 13 13 11 11 13
pull_request 13 13 13 13 13 13 13 14
Δ 0 0 0 0 0 2 2 1
Improvement % 0 0 0 0 0 18 18 1

Memory (resident peak): results within specified thresholds, fold down for details.

Memory (resident peak) (M) p0 p25 p50 p75 p90 p99 p100 Samples
main 49 49 49 49 49 49 49 13
pull_request 49 49 49 49 49 49 49 14
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

Malloc (total): results within specified thresholds, fold down for details.

Malloc (total) (K) * p0 p25 p50 p75 p90 p99 p100 Samples
main 76 76 76 76 76 76 76 13
pull_request 76 76 76 76 76 76 76 14
Δ 0 0 0 0 0 0 0 1
Improvement % 0 0 0 0 0 0 0 1

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.

1 participant