Skip to content

[Bug]: logservice gossip fixture calls obsolete port allocator signature #30047

Closed

Description

@iamlinjunhong

CI compilation failure on official main

pkg/logservice tests do not compile at current official main 3e50e1b32d8da61bbbf70c89989fb08b671809de (the revision containing #29978).

makeGossipFixtureConfigs calls randomPorts.allocate(probeTestPort) in pkg/logservice/gossip_fixture_test.go:130. The allocator in pkg/logservice/test_utils.go:124 now requires (first, limit int, probe func(int) error). The caller has not been updated to the bounded candidate-range API.

pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
    have (func(port int) error)
    want (int, int, func(int) error)

Expected behavior: logservice test fixtures compile and use the intended port-candidate range, preserving allocation failure handling and gossip cohort cleanup.

CI occurrence

Both complete failed-job logs were read via the completed-job logs API because the parent workflow is still in progress and gh run view --log-failed cannot yet read it.

Clean-main comparison and reproduction

A new, clean, detached worktree at exact official main was created inside the authorized Loom lane. Its tracked and untracked Git status was empty before and after this command:

GOWORK=off go vet -mod=readonly -tags matrixone_test ./pkg/logservice

With repository CGo header flags and verified platform-matched thirdparty headers, this command fails with the same file, line, argument count and types above. Local environment: Darwin/arm64, Go 1.27.1, CGO enabled. This is a platform-independent Go type error in files compiled on both CI platforms; no linked baseline test/runtime pass is claimed. The normal CGo test wrapper was also tried, but rejected primary-artifact reuse because its native provenance stamp was stale; that environment result is separate from the successful reproduction of the compiler error through go vet. No native library or provenance guard was modified.

The PR's complete diff changes rank-option parser/planner/protobuf code and tests; it contains no change under pkg/logservice, no allocator or gossip-fixture change, and no CI-harness change. The source at the cited caller and allocator is identical on the PR and clean official-main revisions. This establishes an independent main defect rather than a flaky-test hypothesis.

The same PR run also contains separate PR-local planner-test compilation errors after the generic index-scan refactor. Those are being fixed in PR #30002; this issue tracks only the allocator call on official main.

Delivery plan: push the in-scope planner-test repair to the existing PR, which starts a new CI run. Do not rerun the obsolete failing head. A logservice owner fix must update the caller to the supported range-aware allocator contract and validate the fixture on the current main revision.

Activity

  1. added
    kind/bugSomething isn't working
    needs-triageNeeds evaluation before prioritization. Not yet decided whether to proceed
    on Oct 13, 2026
  2. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    Additional occurrence of the upstream logservice test compilation failure on the same official-main revision.

    Both completed-job logs were downloaded and inspected through the job-logs API while the parent workflow was still in progress. Both contain the same compiler error:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    The SCA command is make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1; its go vet -mod=readonly -vettool=molint ./... phase reports the error and make exits 2. The coverage command uses go test -mod=readonly -count=1 -json -short -v -tags matrixone_test with CGO enabled. Its parsed report identifies exactly one build failure and one failed package event, both pkg/logservice [build failed]; no logservice test body ran. The final producer guard then rejects the failed coverage test result. The subsequent Coverage merge job (115086919921) fails its prerequisite check with coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated. Its complete 169-line job log confirms profile merging and rate calculation were skipped; this is the downstream missing-profile consequence, not a measured PR coverage-rate failure.

    Independent clean-main comparison: a new detached control worktree at exact official main 3e50e1b32d8da61bbbf70c89989fb08b671809de was created inside this authorized Loom lane. Its Git status was empty before and after this command:

    .agents/skills/mo-dev/scripts/mo-cgo-test -count=1 -run='^$' -p 2 -timeout=120s ./pkg/logservice

    On Darwin/arm64, Go 1.27.1, CGO enabled, the repository wrapper accepted verified CPU native provenance and then compilation exited 1 with the identical caller line and argument types. This is compilation-only negative evidence: the command intentionally runs no test bodies, and no baseline runtime test pass is claimed. The caller and allocator source bytes are identical between clean main and this PR.

    The complete 33-file PR delta contains no logservice, port-allocator, gossip-fixture or CI-harness change. It modifies external TIME assignment/readers, their planners and regression cases. Its relevant source fingerprints are unchanged from the already verified exact-head evidence: seven normal owning-package suites, vet, pinned lint, twelve public warning-budget cases, fourteen native assignment controls and two 187/187 normal BVT rounds passed. These focused passes are not represented as a successful repository-wide CI SCA/coverage run.

    This is the deterministic main defect already tracked by this issue and independently observed on PR 30002, rather than a flaky-test hypothesis. No unrelated logservice change is added to the TIME PR. Reproduction is the clean-main compilation command above, or inspection of either linked CI job.

    Recovery plan: after run 38328764915 completes, request one failed-jobs rerun and verify its accepted attempt. At this evidence update the run remains in progress, attempt 1; this task has not requested a rerun. A rerun alone does not repair the deterministic compiler error: the caller must be updated through the owning main fix. Do not cancel active lanes or repeatedly rerun a repeated signature.

  3. XuPeng-SH commented on Oct 13, 2026

    @XuPeng-SH
    Contributor

    Confirmed again on latest official main 175a645a85994f2c95992d3aa8d6dacb6d9e167f during continuous local QA (2026-10-13 UTC), Linux/amd64, Go 1.27.1, using the repository CGo test wrapper:

    .agents/skills/mo-dev/scripts/mo-cgo-test -run '^$' -count=1 -p=1 ./pkg/logservice

    Exit status 1:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    FAIL github.com/matrixorigin/matrixone/pkg/logservice [build failed]
    

    This blocks compilation before any test executes. The scope of this confirmation is the test build; it does not establish a production runtime failure. Reusing this issue rather than filing a duplicate.

  4. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    Additional occurrence on PR 30002 after the planner-test repair; the five failed checks reduce to the existing allocator compilation defect and its downstream gates.

    The complete failed-job logs were downloaded with gh run view 38331440642 --log-failed and inspected (13,729 lines). All three compiler lanes report:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    UT runs time make ut UT_CONFIGURED=1 UT_PARALLEL=6 UT_TIMEOUT=40 UT_SHARD=all, with CGO-enabled matrixone_test race tests. Its final failed-package table contains only pkg/logservice, with no failed test cases, and make ut exits 2. SCA runs make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1; its vet/molint phase reports the same type error and make exits 2. Coverage runs go test -mod=readonly -count=1 -json -short -v -tags matrixone_test -timeout=20m with set-mode coverage; its analyzer reports exactly one build failure and one failed package event, both logservice. No logservice test body executes.

    Coverage merge then fails its prerequisite guard with coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated. CI Required fails with matrixone-ci: failure. These are downstream consequences, not a measured coverage-rate regression.

    Causal comparison: this issue already links an independent Linux/x86 occurrence on unrelated PR 29969, run 38328764915. The maintainer confirmation at #30047 (comment) reproduces this exact compiler signature with the repository CGo wrapper on latest official main 175a645a85994f2c95992d3aa8d6dacb6d9e167f. The caller and allocator are byte-identical on that main revision and this PR. The complete 17-file nprobe delta changes parser/planner/protobuf code and vector regression cases; it does not modify the allocator, gossip fixture, logservice test contract or CI harness. This is deterministic main compilation failure, not a flaky-test classification.

    The PR has been locally rebased onto that exact main revision without conflicts. Both replayed commits are patch-equivalent to the failing head. On candidate 9ee51c8c4026c22b94b4d63d4066fab3e5164ea8, the normal full planner suite passes with .agents/skills/mo-dev/scripts/mo-cgo-test -tags matrixone_test -count=1 -p=2 -timeout=300s ./pkg/sql/plan (19.152s), planner vet passes, and lint from pinned v2.14.0 reports 0 issues. Unchanged parser/protobuf and vector-case inputs retain the earlier passing focused tests and two normal 35/35 BVT rounds. These scoped passes do not claim a successful repository-wide CI run.

    Recovery for this PR follows its authorized rebase-first policy: publish the rebased branch with an exact old-head lease to start new CI, then end this repair round. No rerun of this obsolete run is requested. The upstream caller still needs the range-aware allocator repair tracked here; rebasing alone does not fix it.

  5. gouhongshen commented on Oct 13, 2026

    @gouhongshen
    Contributor

    Additional occurrence on PR #29798, exact head e088a231b95cb4b5c52c3d2a2a91dcfe0ed32a16 (merge-base/current official main 175a645a85994f2c95992d3aa8d6dacb6d9e167f), workflow run 38340554382 attempt 1.

    The PR changes ALTER COPY preparation/publication, logtail source-frontier validation, and related tests; it does not modify pkg/logservice. The caller and allocator are identical on PR head and its merge-base, so this is the tracked main compilation defect rather than a PR regression or transient failure. The run is not being rerun.

  6. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    Additional occurrence on PR 30082, confirmed against current clean official main.

    The complete three failed-job logs were downloaded through the completed-job logs API and inspected (3,255 / 2,103 / 169 lines). The initial gh run view --log-failed request was unavailable because the parent workflow remains in progress. SCA fails its Static Code Analysis step while executing make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1; the vet/molint phase reports:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    UT Coverage uses CGO-enabled go test -mod=readonly -count=1 -json -short -v -tags matrixone_test -timeout=20m with set-mode coverage. Its failed-package summary contains only pkg/logservice [build failed] with the same compiler error. The Coverage merge prerequisite step then fails with coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated. No coverage rate was calculated; this is the upstream build-failure consequence.

    A clean detached main control worktree was created inside the authorized PR 30082 Loom lane at the official revision above. Git status was empty before and after reproduction. The repository CGo wrapper accepted platform-matched, provenance-verified native artifacts and then reproduced the identical compiler signature:

    .agents/skills/mo-dev/scripts/mo-cgo-test -count=1 -short -tags matrixone_test -timeout=120s -run '^TestGossipFixtureConfigAllocationFailure$' ./pkg/logservice

    Result: exit 1, logservice test build failed before any test body executed. Environment: Darwin/arm64, Go 1.27.1, CGO enabled. The failure is a shared Go type error in files compiled on both CI platforms, rather than a runtime or flaky-test claim. The caller, allocator, native build inputs and module files are identical between PR head and this clean current main. The same signature was also reproduced on PR head with the controlled wrapper.

    The complete four-file PR diff changes only two recursive query-block clause guards, their planner regression cases, and the recursive-CTE SQL/result fixture. It does not modify logservice, port allocation, gossip fixtures or CI harnesses. Exact-head validation completed successfully:

    .agents/skills/mo-dev/scripts/mo-cgo-test -v -count=1 -short -tags matrixone_test -timeout=180s ./pkg/sql/plan

    The full planner package passed (7.704s), including all 14 named TestRecursiveCteAggregateQueryBlockScope subtests. The exact-head shared build and both enabled BVT lanes are also successful. These passes do not claim repository-wide SCA or UT Coverage passed.

    Completion addendum (2026-10-13): attempt 1 has now completed with failure. The full combined failed-job log was obtained with gh run view 38341849652 --log-failed and inspected: 13,337 lines covering all five failed jobs. It includes the original three logs unchanged, plus the newly completed UT Ubuntu/x86 job (7,744 lines) and CI Required gate (66 lines).

    UT runs time make ut UT_CONFIGURED=1 UT_PARALLEL=6 UT_TIMEOUT=40 UT_SHARD=all with CGO-enabled matrixone_test race tests. Its failure summary and build-output records identify the same logservice allocator signature above, before logservice tests execute. There is no additional failed test case or package in its final failure table. The command exits 2 through the Makefile UT target. CI Required reports matrixone-ci: failure from the already failed UT/SCA lanes; it adds no independent product signature.

    Official main is still 21f19ae06305ca2acd253d15123f851899d6b6a1, the clean control's HEAD remains identical and its status is empty. PR head and all four changed files are unchanged, so the recorded clean-main reproduction and full exact-head planner pass remain valid and are reused. No unrelated logservice code is changed in PR 30082.

    Recovery plan: request one failed-jobs rerun of run 38341849652 now and verify the accepted new attempt. This is the first rerun request for this occurrence. A rerun alone does not repair the deterministic main allocator defect tracked here.

    Attempt 2 recurrence (2026-10-13): the single failed-jobs rerun accepted at 05:05:53 UTC has reproduced the same deterministic upstream compiler error at unchanged PR head 22566e4f7c33488bf340d4930931a19e151ab1d2.

    All three completed-job logs were downloaded and inspected through the job-logs API after gh run view 38341849652 --attempt 2 --log-failed reported that combined logs were unavailable while sibling jobs remained unfinished. SCA again fails make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1 in vet/molint with the identical randomPorts.allocate arity/type error and exits 2. UT Coverage again reports exactly one build failure and one failed package event, both logservice, with no failing test body. Coverage merge again fails its missing-producer prerequisite without calculating a coverage rate. There is no newly observed PR-local error in these three reports.

    Fresh comparison after the failed rerun: fetched official main is still 21f19ae06305ca2acd253d15123f851899d6b6a1. The retained detached control is clean at that exact revision. The repository CGo wrapper accepted provenance-verified native artifacts, and this race/tag-matched compilation probe exited 1 with the same compiler signature before any test body executed:

    .agents/skills/mo-dev/scripts/mo-cgo-test -race -count=1 -short -tags matrixone_test -timeout=120s -run '^TestGossipFixtureConfigAllocationFailure$' ./pkg/logservice

    Environment: Darwin/arm64, Go 1.27.1, CGO enabled. Git status was empty before and after the probe. Caller, allocator and the entire logservice directory remain identical between current PR and official main. The PR's four-file recursive-CTE delta, exact-head planner pass and independent Linux/x86/maintainer comparisons recorded above remain valid. This is still the deterministic main test-build defect, rather than a flaky-test classification.

    No second rerun is requested, and no duplicate issue is created. Completing this PR's CI recovery requires the owning official-main fix to make the gossip fixture use the range-aware allocator contract (including the first/limit range and its error handling). That unrelated logservice repair is outside this recursive-CTE PR's authorized change scope. The lane remains clean and retains the repeat-failure evidence; once the upstream fix is available, its integration can be assessed without repeating unchanged tests or endless reruns. The remaining UT sibling's pending/running state does not remove this already confirmed compile blocker.

  7. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    New occurrence on PR 30002, exact head 9ee51c8c4026c22b94b4d63d4066fab3e5164ea8:

    gh run view --log-failed was attempted, but the running parent does not yet expose combined logs. Both completed-job logs were therefore downloaded through the job-logs API and inspected in full: SCA 3,794 lines, UT Coverage 2,108 lines. Both contain only the tracked compiler root:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    SCA's make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1 reports the type error in its vet/molint phase and exits 2. The CGO-enabled coverage command uses go test -mod=readonly -count=1 -json -short -v -tags matrixone_test -timeout=20m with set-mode coverage. Its analyzer identifies exactly one build failure and one failed package event, both pkg/logservice [build failed]; the final producer guard exits 1. No logservice test body executes, and there is no additional PR-local compilation or failed test case in these two reports.

    Independent comparison is retained from this open issue: the unrelated Linux/x86 CI occurrence on PR 29969, run 38328764915, and the maintainer's Linux/amd64 repository-wrapper confirmation at #30047 (comment) establish the exact allocator contract mismatch on official main 175a645a85994f2c95992d3aa8d6dacb6d9e167f. Current official main 21f19ae06305ca2acd253d15123f851899d6b6a1 leaves all logservice files unchanged. The caller and allocator are also unchanged by this PR's full 17-file delta, which does not modify that mechanism, fixture or CI harness. This is deterministic main compilation failure, not a flaky-test classification or a production runtime failure.

    The PR's own changed closure is validated. Its locally rebased candidate bc30a79be8912d0f0035494e79e8e1d830d9fe3e contains two patch-equivalent commits and all 17 feature files remain byte-identical to the previously validated head. Because the three newer main commits change shared parser/planner and prepared execution paths, validation was refreshed rather than assuming the whole old evidence set still applied:

    .agents/skills/mo-dev/scripts/mo-cgo-test -tags matrixone_test -count=1 -p=2 -timeout=300s ./pkg/sql/plan ./pkg/sql/parsers/dialect/mysql ./pkg/sql/parsers

    All three normal suites pass (8.257s, 1.295s, 0.449s). Their vet and pinned v2.14.0 lint pass with 0 issues. The current CPU service build passes and the normal public vector-rank BVT passes twice, 35/35 each, with database teardown after each round and test-service exit verified. Unchanged protobuf wire evidence is reused. These scoped passes do not claim a successful repository-wide CI run.

    This repair follows its explicit rebase-first delivery policy: publish the rebased branch onto current official main with the exact old-head lease, verify the new PR head, then end this repair round. No rerun or cancellation of the still-running old workflow is requested. The upstream allocator caller still requires the fix tracked here; the rebase itself does not remove this compiler defect.

  8. gouhongshen commented on Oct 13, 2026

    @gouhongshen
    Contributor

    Additional occurrence on PR #29798, exact head abd5a45122797473d3c8c51f4a2bd8f4e826d2ff (merge-base/current official main 21f19ae06305ca2acd253d15123f851899d6b6a1), workflow run 38347106648 attempt 1.

    Both completed-job logs were inspected through the job-logs API while the parent workflow still had pending sibling checks. PR #29798 changes ALTER COPY preparation/publication, source-frontier validation, and related tests; git diff --quiet 21f19ae06305ca2acd253d15123f851899d6b6a1...abd5a45122797473d3c8c51f4a2bd8f4e826d2ff -- pkg/logservice succeeds, so the PR does not modify pkg/logservice. The caller and allocator are therefore unchanged from the affected official-main revision. This is the tracked deterministic main compilation defect, not a PR regression or transient failure; the run is not being rerun.

  9. gouhongshen commented on Oct 13, 2026

    @gouhongshen
    Contributor

    Downstream coverage consequence on PR #29798, exact head abd5a45122797473d3c8c51f4a2bd8f4e826d2ff (merge-base/current official main 21f19ae06305ca2acd253d15123f851899d6b6a1), workflow run 38347106648 attempt 1.

    • Matrixone Coverage execution / Coverage reports PREREQUISITES_READY: false and exits with coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated.
    • The required producer, UT Coverage on Ubuntu/x86, already fails in pkg/logservice [build failed] with the tracked allocator signature mismatch before tests execute.

    PR #29798 does not modify pkg/logservice; the failed Coverage job is therefore a downstream merge guard caused by the tracked deterministic main compilation defect, not a coverage-rate failure or a PR regression. The run is not being rerun.

  10. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    New occurrence on PR 30002 at exact head bc30a79be8912d0f0035494e79e8e1d830d9fe3e:

    Both failed jobs have completed. gh run view --log-failed was attempted but remains unavailable while the parent workflow has unfinished jobs. The complete individual job logs were downloaded through the job-logs API and inspected: SCA 3,618 lines; UT Coverage 2,122 lines. Both retain the same compiler signature:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    SCA runs make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1; its vet/molint phase reports the type error and make exits 2. The CGO-enabled coverage command uses go test -mod=readonly -count=1 -json -short -v -tags matrixone_test -timeout=20m with set-mode coverage. Its analyzer reports exactly one build failure and one failed package event, both logservice, before any logservice test body can execute; the final producer guard exits 1. There is no additional PR-local compilation or failed test case in these two completed reports.

    The open-defect comparison requirements remain satisfied. This issue contains independent Linux/x86 occurrences on unrelated PRs, including run 38328764915, plus the maintainer's analysis and Linux/amd64 reproduction of this allocator contract mismatch at #30047 (comment). The clean current-main reproduction documented at #30047 (comment) also covers official main 21f19ae06305ca2acd253d15123f851899d6b6a1, which is still the current main and is already included by this PR. The caller and allocator are unchanged by the complete 17-file PR delta; that delta does not touch the allocation mechanism, gossip fixture or CI harness. This is a deterministic main test-build defect, not a flaky-test or production-runtime claim.

    Exact-head evidence is reused without rerunning unchanged inputs: normal full planner/MySQL parser/parser suites passed (8.257s, 1.295s, 0.449s), scoped vet and pinned v2.14.0 lint passed with 0 issues, CPU service build passed, and two normal vector-rank BVT rounds each passed 35/35 with teardown verified. Current Git HEAD, official main and all 17 feature-file fingerprints match that recorded evidence. The worktree is clean, there is no new review feedback, and no source change or additional rebase is warranted. These scoped passes do not claim repository-wide SCA or coverage succeeded.

    Recovery is pending the parent workflow's terminal state: at inspection, attempt 1 remained queued with UT waiting for a runner and a BVT job still running. No rerun or cancellation has been requested. Once the run finishes, inspect any additional failed jobs, then request the single authorized failed-jobs rerun and verify its accepted attempt. A rerun alone does not repair this deterministic allocator defect. The repair lane retains a clean handoff recording the inspected jobs and pending action, so continuation can avoid duplicate comments or repeated reruns.

    Status addendum: the completed Coverage merge job was observed after the initial evidence update:

    Its complete 169-line job log was downloaded and inspected. The prerequisite step records PREREQUISITES_READY: false and exits 1 with coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated. Merging and coverage-rate calculation were skipped. This is the downstream consequence of the failed UT Coverage producer above, not an independent coverage-rate regression.

    The latest inspected parent status is in_progress, still attempt 1 at the same exact head. BVT has finished and UT Ubuntu/x86 (job 115132697821) is now running. Three completed failed jobs have therefore been inspected; no rerun has been requested. The clean handoff is updated with this additional log and the pending single-rerun action after terminal-state inspection.

  11. iamlinjunhong commented on Oct 13, 2026

    @iamlinjunhong
    ContributorAuthor

    Additional occurrence on PR 29969, with unchanged current official-main comparison.

    Both completed-job logs were downloaded through the job-logs API and inspected in full: 3,254 SCA lines and 2,115 UT Coverage lines. The preferred gh run view 38348106707 --log-failed was attempted but is unavailable while the parent workflow remains active.

    The compiler signature in both jobs is:

    pkg/logservice/gossip_fixture_test.go:130:31: not enough arguments in call to randomPorts.allocate
        have (func(port int) error)
        want (int, int, func(int) error)
    

    SCA runs make static-check-analysis GOLANGCI_LINT_CONCURRENCY=1; its CGO-enabled vet/molint phase fails with this type error, and make exits 2. UT Coverage uses CGO-enabled go test -mod=readonly -count=1 -json -short -v -tags matrixone_test -timeout=20m with set-mode coverage. Its final analyzer reports one build failure and one failed package event, both logservice; no logservice test body executes. Both CI platforms use Go 1.27.1.

    A retained clean-main reproduction from the immediately preceding repair used the repository CGo wrapper on this exact current main:

    .agents/skills/mo-dev/scripts/mo-cgo-test -race -tags matrixone_test -count=1 -run='^$' -p=2 -timeout=120s ./pkg/logservice

    It exited 1 with the identical compiler signature, before any test body executed (Darwin/arm64, Go 1.27.1, verified CPU native artifacts). Current main remains unchanged; the control worktree is still clean at that exact revision. This compilation-only negative control is reused, not claimed as a runtime or platform-equivalent CI test pass. The independent Linux/x86 CI occurrence on PR 30002 linked in this issue and the maintainer's Linux/amd64 confirmation corroborate the same allocator contract mismatch.

    The caller and allocator are byte-identical between current PR head and current main. The complete 33-file TIME assignment delta and its affected consumers do not change port allocation, gossip fixtures, the logservice test contract or CI harness. The arity mismatch is a deterministic upstream test-compilation defect, not a flaky-test classification.

    Exact-head validation is reused after verifying all 33 source/fixture fingerprints: seven normal owning-package suites, scoped vet, pinned v2.14.0 lint, CPU service build, 14 native INSERT/LOAD/LOCAL controls, and normal 187/187 BVT all passed. The recorded overall review has no unresolved blocker. These scoped results do not claim repository-wide SCA or UT Coverage passed.

    At inspection, UT Ubuntu/x86 remains queued and COMPOSE/PESSIMISTIC BVT remains in progress. No rerun has been requested. Once attempt 1 completes, the planned recovery is one failed-jobs rerun after inspecting any additional failed jobs and verifying its acceptance. A rerun alone does not repair the deterministic allocator defect.

    Repair occurrence: pr29969-12a3286cb2c6d6dd.

    Coverage consequence addendum (2026-10-13 UTC; repair occurrence pr29969-08a6b0f0e2e633e8):

    • Coverage merge job 115150505295 has completed with failure. Its full 169-line job log was downloaded and inspected.
    • The first prerequisite guard receives PREREQUISITES_READY: false, reports coverage merge blocked: a required producer did not publish a complete coverage profile; no coverage verdict was calculated, and exits 1. This follows the required UT Coverage producer's logservice build failure documented above. It is not a calculated coverage-rate regression.
    • Both enabled BVT lanes now pass: PROXY job 115136305527 and COMPOSE/PESSIMISTIC job 115136305546. The two original failed-job logs are byte-identical to the already inspected logs. Current PR head, official main and all 33 validated source/fixture fingerprints remain unchanged; the clean current-main compiler control and exact-head validation remain valid.
    • The parent is still attempt 1 and in progress: Ubuntu/x86 UT job 115134410388 is running. No rerun is requested while that workflow is active. The planned single failed-jobs rerun remains pending parent completion and inspection of any further failed jobs.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/bugSomething isn't workingneeds-triageNeeds evaluation before prioritization. Not yet decided whether to proceed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions