Skip to content

Qualify activity deadline authority during Avro read load - #442

Merged
rmcdaniel merged 6 commits into
mainfrom
rust-325-codec-deadline-health
Oct 14, 2026
Merged

rmcdaniel merged 6 commits into
mainfrom
rust-325-codec-deadline-health

Conversation

@rmcdaniel

@rmcdaniel rmcdaniel commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

Qualify an original activity's global deadline while genuine Avro description reads saturate the native service. Independent load and health processes keep bounded counts/hashes/timings, and the installed SDK preserves exact input, original policy/identity/history, canonical timeout/parent delivery and late-outcome fences. The profile fixes eight readers, nine seconds, one CPU/512 MiB/no swap, two-second absolute reads, a four-second global timeout and the original 35-second observer budget before admission.

An optimized native SQLite original passes: 91/91 dense reads and 88/88 health/readiness reads, measured busy CPU around expiry, exact original prefix/deadlines, one activity attempt/timeout and zero repairs in a stopped read-only WAL-aware audit. Maximum read times are 926 ms and 27 ms. 29 corruption controls run against that actual original and retain lossless int64 bytes. Seven streaming/timeout/status controls and 4,826 shared Node tests pass with one existing skip. PHP syntax checks pass.

Failed missing-header/debug/native setup originals remain recorded. The frozen PHP 2.6.2 Apache original hits OOM/read timeouts under the same declared workload and retains one stored timeout/unclaimed unrepaired parent, but fails HTTP qualification. Actual outcome and limits. This is one bounded source qualification, not matched performance, embedded CPU behavior or full timer/lease-renewal/cancellation health on every database.

The default corpus, native source, dependencies, frozen actors and capabilities remain unchanged. Final-head ordinary matrix, review and promotion are pending. Refs #325 and its existing CPU/deadline scope.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Run 38494055609 attempt 1 is failed before any database execution. The unchanged locked published Rust SDK adapter build returned exit 101 in job 115625681074. Cargo stderr was redirected to rust-sdk-build.txt, but that failed job did not publish a diagnostic artifact. The available job log proves terminal failure and does not establish its cause. All native/shared actor inputs, source and declared 25-minute/2CPU/2GiB adapter limits are unchanged.

I am making one identical-head, identical-limits retry of this terminal failed adapter job. The failed original remains failed. This is not an observation-timeout restart, source correction or qualification claim. Local #442 PHP/native load preparation proceeds independently; actual load/deadline acceptance is still pending.

@rmcdaniel

Copy link
Copy Markdown
Member Author

The first local committed-source ccd82d8 original is runner-blocked, not CPU/deadline-qualified. The genuine dense seed and separate activity were admitted; the original activity's late completion/failure returned409, heartbeat refused progress and canonical timeout/parent delivery survived. However all458 direct description requests returned400/missing_control_plane_version. The reader omitted the published control-plane2 header. Its CPU usage therefore cannot count as real Avro-read load, and the existing strict validator correctly refuses the record. The original run and deadlines are not restarted, repaired or rebudgeted.

The correction adds the published header on every read and checks it against the installed SDK's Version constant, with a real HTTP counterfactual and regression control. Payload shape, eight readers, nine-second wave, service resources, original activity timeout and observer budgets stay unchanged. New qualification will use separate fresh originals; this is a runner fix, not a PHP/native defect or a lighter workload. The first native bootstrap command also refused an unsupported CLI spelling before data setup; the documented schema-bootstrap command is now being used. No native code change.

The one identical-head/limits hosted adapter retry succeeds. Its original exit101 remains failed with no captured stderr/cause; downstream originals are now running. Future failed SDK setup will retain small diagnostics instead of losing the build error. No complete matrix, performance or release claim.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Actual optimized native SQLite qualification passes the unchanged pending CPU/deadline profile. Producer/runner 0a014b28e uses native subtree f8ca2ece95360786f404ec1f77512149ecd8c9cf; the production-optimized binary SHA-256 is a6bc79cf1485d1ed0dbffeb9c2f6e67fbd4142eb8c15ae855a026747199a2909. The clean single-job release build took 7m13s. Compile/cache data is removed after binary copy.

Original 01M4W1CRD5J1H5Y0NCE92FB88N runs against one CPU / 512 MiB / no swap. Its actual 8,192-row Avro input decodes identically before and after the eight-reader nine-second wave, SHA-256 642e3617a9bfb8a77b65e475869d1e976528bc72d66fa169e80d17595e171cb0. All 91 dense reads and 88 independently observed health/readiness reads succeed, maxima 925.7ms and 26.4ms within the original 2s absolute limit. Actual busy CPU samples surround the original expiry, peak sampled memory 73,498,624 bytes. No payload, concurrency, deadline or memory limit is relaxed.

The original authored four-second schedule-to-close deadline is 01:45:57.354000 UTC; canonical timeout records at 01:45:57.424000. Late completion/failure are 409, late heartbeat is 200 with can_continue=false and heartbeat_recorded=false. The entire original four-event prefix survives and one timeout creates the retained parent delivery. Stopped read-only SQLite audit includes its WAL and verifies attempt 1, one canonical timeout, zero repairs on every task, and parent 01M4W1CWDGZS0JAKT066KJ2A66 leased once. It does not count workflow completion or full CPU/deadline parity.

29 controls derived from this actual record refuse altered actor/identity/typed values, original clocks/policy/prefix, stale outcome acceptance, failed/empty/late reads, missing or idle CPU evidence, changed allocation/swap and excessive memory. Original int64 bytes survive the profile writer. Seven focused streaming/timeout/status controls pass; the current shared Node suite passes 4,826 tests with one existing skip. No fixture builds a substitute producer or turns a failed original into a pass.

Failed observations remain explicit:

  • The missing control-plane-header original fails before meaningful codec load. A subsequent optimized setup has a fixture variable-shadow failure before admission; the fresh original above uses its corrected source.
  • The debug native original has 84/84 healthy reads but only 10/42 dense reads within the strict limit. It stays failed.
  • PHP's earlier development-server observation OOMs and its explicit parent-repair maintenance invalidates zero-repair qualification. It is not a production-entrypoint proof.
  • Fresh normally published PHP 2.6.2 Apache-entrypoint original 01m4w1kxsr58xzrfgn7h5vkmmf, SDK 2.3.9 and unchanged limits also fails: 40/40 dense reads time out, health 9/12 succeeds, service records OOM and peak 512 MiB, author is SIGKILLed at its original 35s observer boundary with its prepared checkpoint intact. The activity-only normal timeout enforcer does not repair the parent. Stopped read-only audit verifies original deadline 01:49:52.514757, one canonical timeout 01:49:52.709106, attempt 1, ready parent attempt 0 / repair 0 and exact full retry list. This does not qualify HTTP late fences/parent delivery or a current-release/customer defect.

Current source f20eae3da8eb8964d008a4115129455b5ef98c70 retains these outcomes and executable controls. This is bounded SQLite source qualification, not matched performance, release capacity, embedded CPU behavior or complete timer/lease-renewal/cancellation health on every database. Full default-corpus hosted qualification and promotion remain pending. Native/dependencies/frozen tuples stay unchanged. All local bulk, runtime and dependencies are being retired immediately after this audit.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Current f20eae3da8eb8964d008a4115129455b5ef98c70 run 38498037842 is the fresh final-head default-corpus qualification, including corrected read headers, original checkpoints, activity-only maintenance and actual-record corruption controls. PHP/source and boundary gates are running separately.

The earlier ccd82d8f1 run 38494055609 attempt 1 retains its unexplained adapter setup exit 101; no failure log artifact existed. Attempt 2's adapter passes, but PostgreSQL 17 stops after passing ordinary/direction/child/timer cases: SDK update/signal/query installation fails before admission on GitHub HTTP/2 500 symfony/polyfill-php82 downloads. Original artifact 11864606546 SHA-256 cbd53ff4c854fe028091b390d5d2b9e3995e8e31b66262097c55db0f487bd2b7 was verified and inspected, and the local ZIP was deleted.

Remaining older attempt-2 jobs are intentionally cancelled because the corrected final head supersedes them. This is a source revision, not a retry that changes their failed/cancelled outcomes or proves a network cause. The new final head adds small setup-log retention on failure and keeps source/resource/request budgets unchanged. No old original is called passed by the new run. Native subtree f8 and frozen tuples remain unchanged.

@rmcdaniel

Copy link
Copy Markdown
Member Author

Immediate local audit and cleanup are complete. The published Apache original's WAL-aware read-only audit confirms exactly one ActivityTimedOut, original attempt 1 and complete unchanged retry snapshot, with the retained parent ready/unclaimed at attempt 0 / repair 0. It remains an OOM/read-timeout HTTP failure, not a passing deadline-delivery observation.

Task containers, network, databases/WALs, compiler caches, dependencies, binaries, runtime images and full recordings/downloads are deleted. The readable outcome and regression/profile code remain. Final-head38498037842 and normal source checks are still running. No publication, matched performance or full #325 claim.

@rmcdaniel rmcdaniel left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the declared workload, installed SDK identity/control-plane header, separate absolute-timeout read and health processes, original admission/handoff/observer budgets, late-outcome fencing, whole history/policy/typed-value checks, actual CPU/resource evidence, and lossless original JSON writer. The verified local optimized SQLite original and 29 corruption controls qualify this bounded case. Earlier missing-header, debug read-timeout and PHP OOM observations remain failed. All six final-head default-corpus jobs and applicable PHP/source/boundary checks pass; the conditional cancellation/prepared-local job is explicitly skipped. Complete candidate and CI merge trees both equal d22aac11b6680a22d4963faa33bc62677cb1d5cc. Native f8, dependencies, frozen actors and default corpus are unchanged. Broader CPU operations remain separately owned in draft443; no performance, published native, migration or full325 claim.

@rmcdaniel
rmcdaniel marked this pull request as ready for review October 14, 2026 02:42
@rmcdaniel
rmcdaniel merged commit 59b58d2 into main Oct 14, 2026
14 checks passed
@rmcdaniel

rmcdaniel commented Oct 14, 2026 •

Copy link
Copy Markdown
Member Author

#442 merged at 59b58d2841edca8a0cb43c2dd4d5f8df77832949, complete tree d22aac11b6680a22d4963faa33bc62677cb1d5cc, identical to the reviewed final head and tested CI merge. All six candidate jobs in 38498037842 and applicable PHP/source/repository/boundary gates pass. Conditional cancellation/prepared-local qualification is explicitly skipped.

Fresh-main qualification remains pending: Shared Server fixtures 38502424493, PHP/source 38502424660, and boundary 38502424648. The local optimized SQLite activity-expiry proof and 29 guards keep their bounded scope. Broader CPU timer/renewal/cleanup is separate in draft #443, with other databases still pending. No publication, matched performance, migration, native capability, or full #325 claim.

Draft #443 is retargeted to main after integrating this identical main tree. Its newer canonical-clock reader refuses one-microsecond early/excess lateness without changing raw timestamps. The original failed race/source/reference outcomes remain recorded. Merged #442's remote head returns 404, and its clean worktree/local branch are removed. Runtime, build, dependency, and raw data were already deleted.

@rmcdaniel
rmcdaniel deleted the rust-325-codec-deadline-health branch October 14, 2026 02:46
@rmcdaniel

Copy link
Copy Markdown
Member Author

#442 is delivered at main 59b58d2841edca8a0cb43c2dd4d5f8df77832949, complete tree d22aac11b6680a22d4963faa33bc62677cb1d5cc, identical to reviewed final candidate f20eae3da8eb8964d008a4115129455b5ef98c70 and its qualified CI merge.

Fresh main shared run 38502424493 attempt 1 passes all six original database jobs without reruns: SQLite 115653977745, PostgreSQL 16 115653977663, PostgreSQL 17 115653977613, MySQL 8.0 115653977690, MySQL 8.4 115653977717, MariaDB 10.11 115653977773; installed SDK setup 115652233778 also passes. Exact PHP/source 38502424660 and boundary 38502424648 pass. Conditional cooperative cancellation/prepared-local qualification remains explicitly skipped, not claimed as covered.

This delivers the bounded activity-only Avro read/health/original global-deadline fixture, including its actual optimized native SQLite original and 29 corruption controls. Earlier missing-header/debug/native timeout and frozen PHP OOM/read-timeout originals remain failed. No current PHP cause, matched throughput/capacity, all-database CPU health, timer/renewal/cleanup CPU coverage, migration, release or full #325 completion is inferred from these ordinary six-database jobs. Those additional CPU families remain separate #443 qualification.

Frozen actors/tuples, native subtree f8ca2ece and the default corpus remain unchanged. Completed #442 branch/worktree and runtime/build/cache/DB/raw resources were already removed; only code, tests, concise outcomes and existing hosted records remain. #438 current-main integration 97e63c01a is separately qualifying before promotion. #443 final compiler-provenance correction requires its own final-head hosted acceptance.

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.

2 participants