Age | Commit message (Collapse) | Author |
|
Try to increase file descriptor rlimit if necessary
|
|
|
|
As the default can be too low, especially on OSX.
|
|
WSAStartup should be called before using any other socket
functions. BindListenPort is not called if not listening.
Closes #2585.
|
|
GUI can't connect to RPC. Showing this option in the help confuses
people, so remove it.
|
|
- updates for bitcoinstrings.cpp and bitcoin_en.ts
- changes help text for -rpcthreads to match -par
- fix a small glitch with -par to be "-par=<n>"
|
|
|
|
|
|
|
|
|
|
Two reasons for this change:
1. Need to always use boost::thread's sleep, even on Windows, so the
sleeps can be interrupted (prior code used Windows' built-in Sleep).
2. I always forgot what units the old Sleep took.
|
|
Create a boost::thread_group object at the qt/bitcoind main-loop level
that will hold pointers to all the main-loop threads.
This will replace the vnThreadsRunning[] array.
For testing, ported the BitcoinMiner threads to use its
own boost::thread_group.
|
|
Move GenerateBitcoins() call out of net.cpp's StartNode()
|
|
translations update 2013-03-19 (bitcoinstrings.cpp / bitcoin_en.ts)
|
|
The internal miner is closely bound to the wallet engine,
not the blockchain engine.
|
|
(finally) Remove IRC Seed support now that lfnet is down.
|
|
alertnotify, so bitcoind users can get email/sms/whatever of alerts
|
|
|
|
|
|
Runs a shell command when an AppliesToMe() alert is received.
%s in the <cmd> string is replaced with the alert.strStatusBar
message.
|
|
Now that the wallet is the only thing in BDB any DB open errors must be
from the wallet itself-- so deleting everything else will not likely help.
|
|
- harmonize the database related init messages
- as we have a thread for importing blocks, that init message is obsolete
|
|
small changes in init, main, checkpoints.h and bitcoin-qt.pro
|
|
Add -walletnotify to call an external script on wallet transactions
|
|
|
|
- remove an unneeded MODAL flag, as MSG_ERROR sets MODAL
- re-order an if-clause in main to have bool checks before a function call
- fix some log messages that used wrong function names
- make a log message use a correct ellipsis
- remove some unneded spaces, brackets and line-breaks
- fix style for adding files in the Qt project
|
|
|
|
|
|
|
|
|
|
|
|
Add optional transaction index to databases
|
|
add InitMessage() to noui and use debug.log for GUI
|
|
By specifying -txindex when initializing the database, a txid-to-diskpos
index is maintained in the blktree database. This database is used to
help answering getrawtransaction() RPC queries, when enabled.
Changing the -txindex value requires a -reindex; the client will abort
at startup if the database and the specified -txindex mismatch.
|
|
Parallel script verification
|
|
make database init messages more valuable
|
|
Upgrading to 0.8: re-use blkNNNN.dat files.
|
|
- it was bad, that quite some messages were just talking about a database,
I think a user should know, if we are talking about wallet db or
block/coin db
- also adds a new init message for "Verifying block database integrity..."
|
|
- this pull adds an InitMessage() function to noui.cpp, which outputs init
messages to debug.log (this allows to remove some printf() calls from
init.cpp)
- change InitMessage() in bitcoin.cpp to also write init messages to
debug.log to ensure nothting is missing in the log because of the
removal of printf() calls in init.cpp
|
|
* During block verification (when parallelism is requested), script
check actions are stored instead of being executed immediately.
* After every processed transactions, its signature actions are
pushed to a CScriptCheckQueue, which maintains a queue and some
synchronization mechanism.
* Two or more threads (if enabled) start processing elements from
this queue,
* When the block connection code is finished processing transactions,
it joins the worker pool until the queue is empty.
As cs_main is held the entire time, and all verification must be
finished before the block continues processing, this does not reach
the best possible performance. It is a less drastic change than
some more advanced mechanisms (like doing verification out-of-band
entirely, and rolling back blocks when a failure is detected).
The -par=N flag controls the number of threads (1-16). 0 means auto,
and is the default.
|
|
-checklevel gets a new meaning:
0: verify blocks can be read from disk (like before)
1: verify (contextless) block validity (like before)
2: verify undo files can be read and have good checksums
3: verify coin database is consistent with the last few blocks
(close to level 6 before)
4: verify all validity rules of the last few blocks
Level 3 is the new default, as it's reasonably fast. As level 3 and
4 are implemented using an in-memory rollback of the database, they
are limited to as many blocks as possible without exceeding the
limits set by -dbcache. The default of -dbcache=25 allows for some
150-200 blocks to be rolled back.
In case an error is found, the application quits with a message
instructing the user to restart with -reindex. Better instructions,
and automatic recovery (when possible) or automatic reindexing are
left as future work.
|
|
|
|
- -checkpoints is now much more understandable and should be way easier
to translate
- -loadblock uses the same format (blk000??.dat) as -reindex
|
|
|
|
Change timestamps to use ISO8601 formatting
|
|
Add "checkpoints" option, to permit disabling of checkpoint logic.
|
|
Add -benchmark for reporting block processing times
|
|
Reconstruct coins/ database when missing
|
|
|
|
When the coin database is out of date with the block database, the
best block in it is automatically switched to. This reconnection
process can take time, so allow it to be interrupted.
This also stops block connection as soon as shutdown is requested,
leading to a faster shutdown.
|