mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-09-12 05:32:22 +02:00
Merge bitcoin/bitcoin#35083: [30.x] Backports
6c3f40117fdoc: update release notes for v30.x (fanquake)33d66c67eeci: unconfine seccomp for i686 no IPC (Lőrinc)9632450ff6multi_index: fix compilation failure with boost >= 1.91 (Cory Fields)561d072e05test: Add missing self.options.timeout_factor scale in tool_bitcoin_chainstate.py (MarcoFalke) Pull request description: Backports: * #35080 * #35175 * #35202 ACKs for top commit: achow101: ACK6c3f40117fTree-SHA512: 3acc73ef19001f4a84e388f21215a239fd3017351f561019b4f688165f3fb2f347879ca285aa31b9cd9b96473c5b6edf175a050cf6c6a7ffed61ad3065df603e
This commit is contained in:
@@ -10,6 +10,7 @@ export HOST=i686-pc-linux-gnu
|
||||
export CONTAINER_NAME=ci_i686_no_multiprocess
|
||||
export CI_IMAGE_NAME_TAG="mirror.gcr.io/ubuntu:24.04"
|
||||
export CI_IMAGE_PLATFORM="linux/amd64"
|
||||
export CI_CONTAINER_CAP="--security-opt seccomp=unconfined"
|
||||
export PACKAGES="llvm clang g++-multilib"
|
||||
export DEP_OPTS="DEBUG=1 NO_IPC=1"
|
||||
export GOAL="install"
|
||||
|
||||
@@ -81,6 +81,7 @@ Notable changes
|
||||
- #34608 test: Fix broken --valgrind handling after bitcoin wrapper
|
||||
- #34690 test: Add missing timeout_factor to zmq socket
|
||||
- #34869 tests: applied PYTHON_GIL to the env for every test
|
||||
- #35080 test: Add missing self.options.timeout_factor scale in tool_bitcoin_chainstate.py
|
||||
|
||||
### Util
|
||||
|
||||
@@ -105,6 +106,11 @@ Notable changes
|
||||
- #34461 ci: Print verbose build error message in test-each-commit
|
||||
- #34802 ci: Bump GHA actions versions
|
||||
- #34815 ci: bump cirruslabs actions versions
|
||||
- #35202 ci: restore sockets in i686, no IPC job
|
||||
|
||||
### Misc
|
||||
|
||||
- #35175 multi_index: fix compilation failure with boost >= 1.91
|
||||
|
||||
Credits
|
||||
=======
|
||||
@@ -113,6 +119,7 @@ Thanks to everyone who directly contributed to this release:
|
||||
|
||||
- ANAVHEOBA
|
||||
- brunoerg
|
||||
- Cory Fields
|
||||
- Daniel Pfeifer
|
||||
- darosior
|
||||
- fanquake
|
||||
|
||||
@@ -109,7 +109,9 @@ struct CompareTxIterByAncestorCount {
|
||||
};
|
||||
|
||||
|
||||
struct CTxMemPoolModifiedEntry_Indices final : boost::multi_index::indexed_by<
|
||||
using indexed_modified_transaction_set = boost::multi_index_container<
|
||||
CTxMemPoolModifiedEntry,
|
||||
boost::multi_index::indexed_by<
|
||||
boost::multi_index::ordered_unique<
|
||||
modifiedentry_iter,
|
||||
CompareCTxMemPoolIter
|
||||
@@ -122,12 +124,7 @@ struct CTxMemPoolModifiedEntry_Indices final : boost::multi_index::indexed_by<
|
||||
CompareTxMemPoolEntryByAncestorFee
|
||||
>
|
||||
>
|
||||
{};
|
||||
|
||||
typedef boost::multi_index_container<
|
||||
CTxMemPoolModifiedEntry,
|
||||
CTxMemPoolModifiedEntry_Indices
|
||||
> indexed_modified_transaction_set;
|
||||
>;
|
||||
|
||||
typedef indexed_modified_transaction_set::nth_index<0>::type::iterator modtxiter;
|
||||
typedef indexed_modified_transaction_set::index<ancestor_score>::type::iterator modtxscoreiter;
|
||||
|
||||
@@ -91,12 +91,13 @@ class TxOrphanageImpl final : public TxOrphanage {
|
||||
}
|
||||
};
|
||||
|
||||
struct OrphanIndices final : boost::multi_index::indexed_by<
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByWtxid>, WtxidExtractor>,
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByPeer>, ByPeerViewExtractor>
|
||||
>{};
|
||||
|
||||
using AnnouncementMap = boost::multi_index::multi_index_container<Announcement, OrphanIndices>;
|
||||
using AnnouncementMap = boost::multi_index::multi_index_container<
|
||||
Announcement,
|
||||
boost::multi_index::indexed_by<
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByWtxid>, WtxidExtractor>,
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByPeer>, ByPeerViewExtractor>
|
||||
>
|
||||
>;
|
||||
template<typename Tag>
|
||||
using Iter = typename AnnouncementMap::index<Tag>::type::iterator;
|
||||
AnnouncementMap m_orphans;
|
||||
|
||||
@@ -306,7 +306,9 @@ public:
|
||||
|
||||
static const int ROLLING_FEE_HALFLIFE = 60 * 60 * 12; // public only for testing
|
||||
|
||||
struct CTxMemPoolEntry_Indices final : boost::multi_index::indexed_by<
|
||||
using indexed_transaction_set = boost::multi_index_container<
|
||||
CTxMemPoolEntry,
|
||||
boost::multi_index::indexed_by<
|
||||
// sorted by txid
|
||||
boost::multi_index::hashed_unique<mempoolentry_txid, SaltedTxidHasher>,
|
||||
// sorted by wtxid
|
||||
@@ -334,11 +336,7 @@ public:
|
||||
CompareTxMemPoolEntryByAncestorFee
|
||||
>
|
||||
>
|
||||
{};
|
||||
typedef boost::multi_index_container<
|
||||
CTxMemPoolEntry,
|
||||
CTxMemPoolEntry_Indices
|
||||
> indexed_transaction_set;
|
||||
>;
|
||||
|
||||
/**
|
||||
* This mutex needs to be locked when accessing `mapTx` or other members
|
||||
|
||||
@@ -208,17 +208,15 @@ struct ByTimeViewExtractor
|
||||
}
|
||||
};
|
||||
|
||||
struct Announcement_Indices final : boost::multi_index::indexed_by<
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByPeer>, ByPeerViewExtractor>,
|
||||
boost::multi_index::ordered_non_unique<boost::multi_index::tag<ByTxHash>, ByTxHashViewExtractor>,
|
||||
boost::multi_index::ordered_non_unique<boost::multi_index::tag<ByTime>, ByTimeViewExtractor>
|
||||
>
|
||||
{};
|
||||
|
||||
/** Data type for the main data structure (Announcement objects with ByPeer/ByTxHash/ByTime indexes). */
|
||||
using Index = boost::multi_index_container<
|
||||
Announcement,
|
||||
Announcement_Indices
|
||||
boost::multi_index::indexed_by<
|
||||
boost::multi_index::ordered_unique<boost::multi_index::tag<ByPeer>, ByPeerViewExtractor>,
|
||||
boost::multi_index::ordered_non_unique<boost::multi_index::tag<ByTxHash>, ByTxHashViewExtractor>,
|
||||
boost::multi_index::ordered_non_unique<boost::multi_index::tag<ByTime>, ByTimeViewExtractor>
|
||||
>
|
||||
>;
|
||||
|
||||
/** Helper type to simplify syntax of iterator types. */
|
||||
|
||||
@@ -24,9 +24,9 @@ class BitcoinChainstateTest(BitcoinTestFramework):
|
||||
stdin=subprocess.PIPE,
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
text=True
|
||||
text=True,
|
||||
)
|
||||
stdout, stderr = proc.communicate(input=input + "\n", timeout=5)
|
||||
stdout, stderr = proc.communicate(input=input + "\n", timeout=5 * self.options.timeout_factor)
|
||||
self.log.debug("STDOUT: {0}".format(stdout.strip("\n")))
|
||||
self.log.info("STDERR: {0}".format(stderr.strip("\n")))
|
||||
|
||||
|
||||
Reference in New Issue
Block a user