aboutsummaryrefslogtreecommitdiff
path: root/src/init.cpp
AgeCommit message (Collapse)Author
2015-07-22Merge pull request #6149Wladimir J. van der Laan
27d7605 Buffer log messages and explicitly open logs (Adam Weiss)
2015-07-10Merge pull request #5288Wladimir J. van der Laan
e3cae52 Added -whiteconnections=<n> option (Josh Lehan)
2015-07-06Buffer log messages and explicitly open logsAdam Weiss
Prevents stomping on debug logs in datadirs that are locked by other instances and lost parameter interaction messages that can get wiped by ShrinkDebugFile(). The log is now opened explicitly and all emitted messages are buffered until this open occurs. The version message and log cut have also been moved to the earliest possible sensible location.
2015-07-06Merge pull request #6335Wladimir J. van der Laan
9238ecb Policy: MOVEONLY: 3 functions to policy.o: (Luke Dashjr) 627b9de Policy: MOVEONLY: Create policy/policy.h with some constants (Jorge Timón)
2015-07-03Merge pull request #6329Wladimir J. van der Laan
0c37634 acceptnonstdtxn option to skip (most) "non-standard transaction" checks, for testnet/regtest only (Luke Dashjr)
2015-07-03acceptnonstdtxn option to skip (most) "non-standard transaction" checks, for ↵Luke Dashjr
testnet/regtest only
2015-07-02Merge pull request #6361Wladimir J. van der Laan
4716267 Use real number of cores for default -par, ignore virtual cores (Wladimir J. van der Laan)
2015-07-01Use real number of cores for default -par, ignore virtual coresWladimir J. van der Laan
To determine the default for `-par`, the number of script verification threads, use [boost::thread::physical_concurrency()](http://www.boost.org/doc/libs/1_58_0/doc/html/thread/thread_management.html#thread.thread_management.thread.physical_concurrency) which counts only physical cores, not virtual cores. Virtual cores are roughly a set of cached registers to avoid context switches while threading, they cannot actually perform work, so spawning a verification thread for them could even reduce efficiency and will put undue load on the system. Should fix issue #6358, as well as some other reported system overload issues, especially on Intel processors. The function was only introduced in boost 1.56, so provide a utility function `GetNumCores` to fall back for older Boost versions.
2015-06-30detach wallet from minerJonas Schnelli
2015-06-26Policy: MOVEONLY: Create policy/policy.h with some constantsJorge Timón
2015-06-24Testing infrastructure: mocktime fixesGavin Andresen
New, undocumented-on-purpose -mocktime=timestamp command-line argument to startup with mocktime set. Needed because time-related blockchain sanity checks are done on startup, before a test has a chance to make a setmocktime RPC call. And changed the setmocktime RPC call so calling it will not result in currently connected peers being disconnected due to inactivity timeouts.
2015-06-18Merge pull request #6272Wladimir J. van der Laan
edbdf88 tests: Extend RPC proxy tests (Wladimir J. van der Laan) baf0507 Improve proxy initialization (Wladimir J. van der Laan)
2015-06-15Merge pull request #6274Wladimir J. van der Laan
02a6702 Add option `-alerts` to opt out of alert system (Wladimir J. van der Laan)
2015-06-15Add option `-alerts` to opt out of alert systemWladimir J. van der Laan
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 #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.
2015-06-14Added -whiteconnections=<n> optionJosh Lehan
This sets aside a number of connection slots for whitelisted peers, useful for ensuring your local users and miners can always get in, even if your limit on inbound connections has already been reached.
2015-06-12Merge pull request #6256Wladimir J. van der Laan
65b9454 Use best header chain timestamps to detect partitioning (Gavin Andresen)
2015-06-12Improve proxy initializationWladimir J. van der Laan
Simplify and make the code in AppInit2 more clear. This provides a straightforward flow, gets rid of .count() (which makes it possible to override an earlier provided proxy option to nothing), as well as comments the different cases.
2015-06-11Merge pull request #6221Wladimir J. van der Laan
c257a8c Prune: Support noncontiguous block files (Adam Weiss)
2015-06-11Merge pull request #6264Wladimir J. van der Laan
9b5659d Remove translation for -help-debug options (Wladimir J. van der Laan)
2015-06-10Merge pull request #6057Wladimir J. van der Laan
7e6569e [squashme] improve/corrects prune mode detection test for required wallet rescans (Jonas Schnelli) 7a12119 [RPC] disable import functions in pruned mode (Jonas Schnelli) 3201035 [autoprune] allow wallet in pruned mode (Jonas Schnelli)
2015-06-10Remove translation for -help-debug optionsWladimir J. van der Laan
Do not translate -help-debug options, Many technical terms, and only a very small audience, so is unnecessary stress to translators. Brings the code up to date with translation string policy in `doc/translation_strings_policy.md`. Also remove no-longer-relevant "In this mode -genproclimit controls how many blocks are generated immediately." (as of #5957) from regtest help.
2015-06-10Merge pull request #6213Wladimir J. van der Laan
eebd4cc [init] add -blockversion help and extend -upnp help (Philip Kaufmann)
2015-06-10Merge pull request #5927Wladimir J. van der Laan
dce8360 Reduce checkpoints' effect on consensus. (Pieter Wuille)
2015-06-08Use best header chain timestamps to detect partitioningGavin Andresen
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 #6251
2015-06-04use const references where appropriatePhilip Kaufmann
2015-06-03Prune: Support noncontiguous block filesAdam Weiss
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.
2015-06-02Merge pull request #6203Wladimir J. van der Laan
d449772 Remove P2SH coinbase flag, no longer interesting (Luke Dashjr)
2015-06-01[init] add -blockversion help and extend -upnp helpPhilip Kaufmann
2015-06-01Merge pull request #6164Wladimir J. van der Laan
aa41bc8 Update help message to match the #4219 change (lpescher) f60bb5e Update documentation to match the #4219 change (lpescher) cb87386 Make command line option to show all debugging consistent with similar options (lpescher)
2015-05-31Remove P2SH coinbase flag, no longer interestingLuke Dashjr
2015-05-28[squashme] improve/corrects prune mode detection test for required wallet ↵Jonas Schnelli
rescans
2015-05-28[autoprune] allow wallet in pruned modeJonas Schnelli
2015-05-27Merge pull request #5669Wladimir J. van der Laan
da29ecb Consensus: MOVEONLY: Move CValidationState from main consensus/validation (jtimon) 27afcd8 Consensus: Refactor: Decouple CValidationState from main::AbortNode() (Cory Fields)
2015-05-27Merge pull request #6153Wladimir J. van der Laan
8c35b6f Parameter interaction: disable upnp if -proxy set (Wladimir J. van der Laan)
2015-05-26Merge pull request #5947Wladimir J. van der Laan
36cba8f Alert if it is very likely we are getting a bad chain (Gavin Andresen)
2015-05-24Merge pull request #6159Wladimir J. van der Laan
ffdda4e Catch errors on datadir lock and pidfile delete (Adam Weiss)
2015-05-22Catch errors on datadir lock and pidfile deleteAdam Weiss
Prevents bad permissions (or other fs related problems) from resulting in hard crashes with cryptic messages on startup and shutdown.
2015-05-19Update help message to match the #4219 changelpescher
2015-05-18Parameter interaction: disable upnp if -proxy setWladimir J. van der Laan
To protect privacy, do not use UPNP when a proxy is set. The user may still specify -listen=1 to listen locally (for a hidden service), so don't rely on this happening through -listen. Fixes #2927.
2015-05-18wallet: Introduce constant for `-txconfirmtarget` defaultWladimir J. van der Laan
2015-05-15Consensus: MOVEONLY: Move CValidationState from main consensus/validationjtimon
2015-05-15Merge pull request #6135Wladimir J. van der Laan
f13dac9 Comment edits and cleanup (BitcoinPRReadingGroup) ff734e9 Alphabetic order in makefile (Jorge Timón) 5207f33 fix header include groups (Philip Kaufmann) 59b149f remove unneeded incude of wallet/db.h from rpcmining.cpp (Philip Kaufmann) 3703385 remove unused classes from db.h (Philip Kaufmann) 0a7bcb7 fix IDE/compiler warning "extra ';'" in validationinterface.h (Philip Kaufmann) 3b00e7c [Trivial] Update COPYING (sandakersmann) dd9e688 Trivial: Corrected owner of DNS seeder (ayeowch) a60bfd8 [init] better message when no wallet support is compiled in (Philip Kaufmann) 78f44b6 Capitalized P2P (sandakersmann) 8e9248d [Trivial] Cryptocurrency is one word (sandakersmann) 803f51e Typo in GetRawMemPool RPC method help: "]" --> "}" (Chris Arnesen) 605a735 addrman: update comments (Pavel Vasin)
2015-05-15Merge pull request #6102Wladimir J. van der Laan
86a5f4b Relocate calls to CheckDiskSpace (Alex Morcos) 67708ac Write block index more frequently than cache flushes (Pieter Wuille) b3ed423 Cache tweak and logging improvements (Pieter Wuille) fc684ad Use accurate memory for flushing decisions (Pieter Wuille) 046392d Keep track of memory usage in CCoinsViewCache (Pieter Wuille) 540629c Add memusage.h (Pieter Wuille)
2015-05-14Alert if it is very likely we are getting a bad chainGavin Andresen
Create a monitoring task that counts how many blocks have been found in the last four hours. If very few or too many have been found, an alert is triggered. "Very few" and "too many" are set based on a false positive rate of once every fifty years of constant running with constant hashing power, which works out to getting 5 or fewer or 48 or more blocks in four hours (instead of the average of 24). Only one alert per day is triggered, so if you get disconnected from the network (or are being Sybil'ed) -alertnotify will be triggered after 3.5 hours but you won't get another -alertnotify for 24 hours. Tested with a new unit test and by running on the main network with -debug=partitioncheck Run test/test_bitcoin --log_level=message to see the alert messages: WARNING: check your network connection, 3 blocks received in the last 4 hours (24 expected) WARNING: abnormally high number of blocks generated, 60 blocks received in the last 4 hours (24 expected) The -debug=partitioncheck debug.log messages look like: ThreadPartitionCheck : Found 22 blocks in the last 4 hours ThreadPartitionCheck : likelihood: 0.0777702
2015-05-14Merge pull request #5964Gavin Andresen
9a1dcea Use CScheduler for net's DumpAddresses (Gavin Andresen) ddd0acd Create a scheduler thread for lightweight tasks (Gavin Andresen) 68d370b CScheduler unit test (Gavin Andresen) cfefe5b scheduler: fix with boost <= 1.50 (Cory Fields) ca66717 build: make libboost_chrono mandatory (Cory Fields) 928b950 CScheduler class for lightweight task scheduling (Gavin Andresen) e656560 [Qt] add defaultConfirmTarget constant to sendcoinsdialog (Philip Kaufmann)
2015-05-14Use CScheduler for net's DumpAddressesGavin Andresen
Instead of starting Yet Another Thread to dump addresses, use CScheduler to do it.
2015-05-14Create a scheduler thread for lightweight tasksGavin Andresen
2015-05-14[init] better message when no wallet support is compiled inPhilip Kaufmann
2015-05-13Reduce checkpoints' effect on consensus.Pieter Wuille
Instead of only checking height to decide whether to disable script checks, actually check whether a block is an ancestor of a checkpoint, up to which headers have been validated. This means that we don't have to prevent accepting a side branch anymore - it will be safe, just less fast to do. We still need to prevent being fed a multitude of low-difficulty headers filling up our memory. The mechanism for that is unchanged for now: once a checkpoint is reached with headers, no headers chain branching off before that point are allowed anymore.
2015-05-12Clean up parsing of bool command line argsAlex Morcos