Skip to content

backport: v0.26 bitcoin#27720 - #72

Closed
DCG-Claude wants to merge 1 commit into
developfrom
backport-0.26-b029-src-node
Closed

DCG-Claude wants to merge 1 commit into
developfrom
backport-0.26-b029-src-node

Conversation

@DCG-Claude

@DCG-Claude DCG-Claude commented Sep 20, 2026 •

Copy link
Copy Markdown
Collaborator

Automated Bitcoin Core v0.26 backports, batch backport-0.26-b029-src-node.

upstream commit gates notes
bitcoin#27720 b2a1966b32 pick:pass build:pass tests:pass mech:pass tree:pass verify:pass clean cherry-pick
Provenance

Each commit passed: cherry-pick (adapted by an Opus lane only where conflicts existed), build, touched tests, a mechanical diff-of-diffs check (every upstream hunk landed; no added line without an upstream counterpart), and an independent Opus verification lane where anything was adapted. Gate rows and lane artifacts are in the backportsys DB.

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

CI failed at 1442053 on thepastaclaw/dash: linux64-test / Test source, linux64_asan-test / Test source, linux64_sqlite-test / Test source, linux64_multiproce

The pasted log contains no failing test, assertion or compiler diagnostic — only actions/checkout git-config lines and container/network teardown ('Cleaning up orphan processes'), which is the signature of a runner/infra abort rather than a source failure, and it hit all five variants identically at the same moment. I re-checked both commits against upstream 60bec3c/97844d92 (bitcoin#25193) and 3126454 (bitcoin#27720): src/index/base.cpp, init.cpp, node/blockstorage.{h,cpp}, test/util/setup_common.cpp and the two functional tests match upstream apart from the documented Dash adaptations, and g_indexes_ready_to_sync is both set in ThreadImport and gated on fReindexChainState in AppInitMain. Please rerun fork CI; if it reproduces, post the tail of the failing step's log so the actual error is visible.


🤖 backportsys, on behalf of the Dash backport pipeline.

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

CI failed at 1442053 on thepastaclaw/dash: linux64_sqlite-test / Test source, linux64-test / Test source, linux64_asan-test / Test source, linux64_multiproce

The attached log contains no compiler error, no unit/functional test failure and no assertion — only the post-job container removal and 'Cleaning up orphan processes' lines, which is the signature of a runner/infrastructure abort rather than a source defect, and all five jobs died identically at the same teardown point. I re-checked the branch's actual changes: g_indexes_ready_to_sync is declared in src/node/blockstorage.h, defined and set in src/node/blockstorage.cpp, imported in src/index/base.cpp, latched true in BasicTestingSetup, and CustomInit exists on BaseIndex plus both derived indexes, so there is nothing here that would break a build or test uniformly. Please rerun fork CI.


🤖 backportsys, on behalf of the Dash backport pipeline.

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

CI failed at 1442053 on thepastaclaw/dash: linux64_sqlite-test / Test source, linux64_asan-test / Test source, linux64-test / Test source, linux64_tsan-test

The attached log contains no build error, test assertion or stack trace — only container teardown and orphan-process cleanup — and all five test jobs aborted at the same step simultaneously, which is the signature of a runner/infra abort rather than a source failure. I re-checked the branch: g_indexes_ready_to_sync is declared, defined, set at the end of ThreadImport, set in BasicTestingSetup and gated on fReindexChainState in AppInitMain exactly as upstream does, and no remaining functional test expects the three removed -reindex-chainstate init errors. Please rerun the fork CI.


🤖 backportsys, on behalf of the Dash backport pipeline.

@github-actions

Copy link
Copy Markdown

This pull request has conflicts, please rebase.

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

tracker#3146 closed by a human

…r setting 'synced' flag

3126454 index: prevent race by calling 'CustomInit' prior setting 'synced' flag (furszy)

Pull request description:

  Decoupled from bitcoin#27607.

  Fixed a potential race condition in master (not possible so far) that could become an actual issue soon.
  Where the index's  `CustomAppend` method could be called (from `BlockConnected`) before its
  `CustomInit` method, causing the index to try to update itself before it is initialized.

  This could happen because we set the index `m_synced` flag (which enables `BlockConnected` events)
  before calling to the child class init function (`CustomInit`). So, for example, the block filter index could
  process a block before initialize the next filter position field and end up overwriting the first stored filter.

  This race was introduced in bitcoin@bef4e40 from bitcoin#25494.

ACKs for top commit:
  achow101:
    ACK 3126454
  mzumsande:
    Code review ACK 3126454
  TheCharlatan:
    Nice, ACK 3126454

Tree-SHA512: 7a53fed1d2035cb4c1f331d6ee9f92d499b6cbb618ea534c6440f5a45ff9b3ac4dcff5fb4b88937f45a0be249e3a9c6dc6c3ac77180f12ae25fc56856ba39735
@DCG-Claude DCG-Claude changed the title backport: v0.26 bitcoin#25193, bitcoin#27720 backport: v0.26 bitcoin#27720 Oct 15, 2026
@DCG-Claude
DCG-Claude force-pushed the backport-0.26-b029-src-node branch from 1442053 to b2a1966 Compare October 15, 2026 17:53
@github-actions

Copy link
Copy Markdown

Potential PR merge conflicts

This is advisory only. It does not block CI, but it marks PRs that will likely need a rebase depending on merge order.

If this PR merges first

These open PRs will likely need a rebase:

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

Branch rewritten at b2a1966b32 (1 backport(s)).


🤖 backportsys, on behalf of the Dash backport pipeline.

@DCG-Claude

Copy link
Copy Markdown
Collaborator Author

folded into backport-0.26-b175-misc: its commits ship there

@DCG-Claude DCG-Claude closed this Oct 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants