Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Review diff for addrindex in 0.11 #2

Closed
wants to merge 35 commits into from
Closed

Review diff for addrindex in 0.11 #2

wants to merge 35 commits into from

Conversation

btcdrak
Copy link
Owner

@btcdrak btcdrak commented Jun 5, 2015

@reorder Can you check this when you have time please?

@reorder
Copy link

reorder commented Jun 5, 2015

utACK

@btcdrak btcdrak force-pushed the a11 branch 3 times, most recently from f90b769 to 32247b9 Compare June 5, 2015 18:39
laanwj and others added 22 commits June 8, 2015 10:14
We don't want to erase orphans that still have missing inputs, they should still be tracked as orphans.  Also, the transaction thats being accepted can't be an orphan otherwise it would have previously been accepted, so doesn't need to be added to the erase queue.

Github-Pull: bitcoin#5985
Rebased-From: 14d4eef
In some corner cases, it may be possible for recent blocks to end up in
the same block file as much older blocks.  Previously, the pruning code
would stop looking for files to remove upon first encountering a file
containing a block that cannot be pruned, now it will keep looking for
candidate files until the target is met and all other criteria are
satisfied.

This can result in a noncontiguous set of block files (by number) on
disk, which is fine except for during some reindex corner cases, so
make reindex preparation smarter such that we keep the data we can
actually use and throw away the rest.  This allows pruning to work
correctly while downloading any blocks needed during the reindex.

Rebased-From: c257a8c
Github-Pull: bitcoin#6221
Chance "getbalance *" not to use IsTrusted.  The method and result
now match the "getbalance <specific-account>" behavior. In
particular, "getbalance * 0" now works.

Also fixed a comment -- GetGalance has required 1 confirmation
for many years, and the default "getbalance *" behavior matches
that.

Github-Pull: bitcoin#6276
Rebased-From: 7d6a85a
Rather than fetching a signature.tar.gz from somewhere on the net, instruct
Gitian to use a signature from a tag in the bitcoin-detached-sigs repository
which corresponds to the tag of the release being built.

This changes detached-sig-apply.sh to take a dirname rather than a tarball as
an argument, though detached-sig-create.sh still outputs a tarball for
convenience.

Github-Pull: bitcoin#6269
Rebased-From: c110575
Make it possible to opt-out of the centralized alert system by providing
an option `-noalerts` or `-alerts=0`. The default remains unchanged.

This is a gentler form of bitcoin#6260, in which I went a bit overboard by
removing the alert system completely.

I intend to add this to the GUI options in another pull after this.

Github-Pull: bitcoin#6274
Rebased-From: 02a6702
The partition checking code was using chainActive timestamps
to detect partitioning; with headers-first syncing, it should use
(and with this pull request, does use) pIndexBestHeader timestamps.

Fixes issue bitcoin#6251

Github-Pull: bitcoin#6256
Rebased-From: 65b9454
Some boost versions have a conflicting overload of wait_until that returns void.
Explicitly use a template here to avoid hitting that overload.

Github-Pull: bitcoin#6285
Rebased-From: 72bf90d
"brew install berkeley-db4" appears to be working again.  simplified instructions by removing the berkeley-db4 workaround.

Github-Pull: bitcoin#6286
Rebased-From: a3a80c2
Boost assumes variadic templates are always available in GCC 4.4+, but
they aren't since we don't build with -std=c++11.

This applies the patch that fixed the issue in boost 1.57:
boostorg/config@eec8085

See also: https://svn.boost.org/trac/boost/ticket/10500

Github-Pull: bitcoin#6280
Rebased-From: b19a88b
…itcoin#6251)"

Re-enable partition check, it should be safe again after bitcoin#6256.

This reverts commit 3eada74.
Move from sourceforge to linux foundation.

Also get rid of some other stale mentions of sourceforge.

Github-Pull: bitcoin#6319
Rebased-From: 88d8525
This is exactly like the current OSX signing process.

osslsigncode has been patched to detach and re-attach Windows signatures.
The changes can be seen here: https://github.com/theuni/osslsigncode/commits/attach-signature

There's a pull-request open upstream for the changes:
https://sourceforge.net/p/osslsigncode/osslsigncode/merge-requests/3/

This work has been back-ported to the stable 1.7.1 release of osslsigncode, so
that a smaller patch can be reviewed.

Github-Pull: bitcoin#6303
Rebased-From: d08cfc2
- fixes bitcoin#3136
- the problem is related to Boost path and a static initialized internal
  pointer
- using a std::string in CDBEnv::EnvShutdown() prevents the problem
- this removes the boost::filesystem::path path field from CDBEnv

Github-Pull: bitcoin#6282
Rebased-From: 0ce30ea
This prevents an edge case where a block downloaded and pruned
in-between successive calls to FindNextBlocksToDownload could
cause the block to be unnecessarily re-requested.

Github-Pull: bitcoin#6233
Rebased-From: 3e91433
- Moved all seed related scripts to contrib/seeds for consistency
- Updated `makeseeds.py` to handle IPv6 and onions, fix regular
  expression for recent Bitcoin Core versions
- Fixed a bug in `generate-seeds.py` with regard to IPv6 parsing

Allow for non-8333 nodes to appear in the internal seeds. This will
allow bitcoind to bypas a filter on 8333. This also makes it possible to
use the same tool for e.g. testnet.

As hosts with multiple nodes per IP are likely abusive, add a filter to
remove these (the ASN check will take care of them for IPv4, but not
IPv6 or onion).

Github-Pull: bitcoin#6333
Rebased-From: ccd4369 884454a b932953
@btcdrak btcdrak force-pushed the a11 branch 2 times, most recently from c0bdd1b to 4a87fd1 Compare June 29, 2015 08:27
Micha and others added 8 commits June 30, 2015 17:59
This is an ideal version of what the release process should look like,
making it more consistent with the OS X process. Some of the changes
described here would need to be made in the descriptors, which is somewhat
beyond what I would feel comfortable doing, not really understanding the signature process in depth.

[skip ci]

Github-Pull: bitcoin#6354
Rebased-From: 6e849b8
stephenhutchings commented 3 Jul 2015, 6:35 GMT:
> Hi Luke, happy for these to be distributed under the terms of the MIT licence.
> Let me know if you need anything further from me.
dae0a89 assets-attribution: Update typicons to MIT license (Luke Dashjr)
9a2469e release notes for fee estimation changes (Alex Morcos)
5460b24 Fix typo in release notes. (spin)
@btcdrak
Copy link
Owner Author

btcdrak commented Jul 10, 2015

Renamed branch, closing.

@btcdrak btcdrak closed this Jul 10, 2015
@btcdrak btcdrak deleted the a11 branch July 10, 2015 18:27
btcdrak pushed a commit that referenced this pull request Oct 16, 2016
daf1285 Merge pull request #2 from jgarzik/master
d9e62d3 Merge pull request #24 from MarcoFalke/Mf1608-cleanup
faf260f Rem unused vars and prefer prefix operator for non-primitive type
09a2693 Merge pull request #22 from laanwj/2016_04_unicode
c74a04c Merge pull request #23 from paveljanik/20160527_Wshadow
fceb4f8 Do not shadow variables

git-subtree-dir: src/univalue
git-subtree-split: daf1285
btcdrak pushed a commit that referenced this pull request Nov 21, 2016
…ion-logic (#2)

f5b960b Move nTimeBestReceived updating into net processing code (Matt Corallo)
d8670fb Move all calls to CheckBlockIndex out of net-processing logic (Matt Corallo)
d6ea737 Remove network state wipe from UnloadBlockIndex. (Matt Corallo)
fc0c24f Move MarkBlockAsReceived out of ProcessNewMessage (Matt Corallo)
65f35eb Move FlushStateToDisk call out of ProcessMessages::TX into ATMP (Matt Corallo)
btcdrak pushed a commit that referenced this pull request Aug 14, 2018
6f53edb Acquire cs_main before ATMP call in block_assemble bench (James O'Beirne)

Pull request description:

  Calling `bench_bitcoin` currently fails due to calling ATMP without acquiring cs_main first in the recently added block_assemble bench (bitcoin#13219).

  ```
  $ cat <(uname -a) <(gcc --version)

  Linux james 4.4.0-119-generic bitcoin#143+jamesob SMP Mon Apr 16 21:47:24 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux
  gcc (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609

  $ ./src/bench/bench_bitcoin

  WARNING: This is a debug build - may result in slower benchmarks.
  # Benchmark, evals, iterations, total, min, max, median
  Assertion failed: lock cs_main not held in validation.cpp:566; locks held:
  [1]    19323 abort (core dumped)  ./src/bench/bench_bitcoin
  ```

  ```
  (gdb) bt
  #0  0x00007fbdc9cf5428 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54
  #1  0x00007fbdc9cf702a in __GI_abort () at abort.c:89
  #2  0x0000555a19580dc5 in AssertLockHeldInternal (pszName=pszName@entry=0x555a19834549 "cs_main",
      pszFile=pszFile@entry=0x555a1988a001 "validation.cpp", nLine=nLine@entry=566, cs=cs@entry=0x555a19ba55c0 <cs_main>) at sync.cpp:157
  #3  0x0000555a194b395f in AcceptToMemoryPoolWorker (chainparams=..., pool=..., state=...,
      ptx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0, pfMissingInputs=pfMissingInputs@entry=0x0, nAcceptTime=1532964079,
      plTxnReplaced=0x0, bypass_limits=false, nAbsurdFee=@0x7ffcbc1719d8: 0, coins_to_uncache=std::vector of length 0, capacity 0,
      test_accept=false) at validation.cpp:566
  #4  0x0000555a194ba661 in AcceptToMemoryPoolWithTime (chainparams=..., pool=..., state=...,
      tx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0, pfMissingInputs=pfMissingInputs@entry=0x0, nAcceptTime=<optimized out>,
      plTxnReplaced=0x0, bypass_limits=false, nAbsurdFee=0, test_accept=false) at validation.cpp:998
  #5  0x0000555a194ba7ce in AcceptToMemoryPool (pool=..., state=..., tx=std::shared_ptr (count 1, weak 0) 0x555a1bb819b0,
      pfMissingInputs=pfMissingInputs@entry=0x0, plTxnReplaced=plTxnReplaced@entry=0x0, bypass_limits=bypass_limits@entry=false, nAbsurdFee=0,
      test_accept=false) at validation.cpp:1014
  #6  0x0000555a19363fbe in AssembleBlock (state=...) at bench/block_assemble.cpp:102
  #7  0x0000555a193654d3 in std::_Function_handler<void (benchmark::State&), void (*)(benchmark::State&)>::_M_invoke(std::_Any_data const&, benchmark::State&) (__functor=..., __args#0=...) at /usr/include/c++/5/functional:1871
  #8  0x0000555a193501d7 in std::function<void (benchmark::State&)>::operator()(benchmark::State&) const (this=this@entry=0x555a1ba2cda0,
      __args#0=...) at /usr/include/c++/5/functional:2267
  #9  0x0000555a1934ec4c in benchmark::BenchRunner::RunAll (printer=..., num_evals=5, scaling=<optimized out>, filter=..., is_list_only=false)
      at bench/bench.cpp:121
  #10 0x0000555a1934ade9 in main (argc=<optimized out>, argv=<optimized out>) at bench/bench_bitcoin.cpp:92
  ```

Tree-SHA512: fdd7b28ff123ccea7a4f334d53f735d0c0f94aa9cc52520c2dd34dca45d78c691af64efcd32366fc472fedffbd79591d2be2bb3bfc4a5186e8712b6b452d64e3
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.

None yet