aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-06-06estimatefee / estimatepriority RPC methodsGavin Andresen
New RPC methods: return an estimate of the fee (or priority) a transaction needs to be likely to confirm in a given number of blocks. Mike Hearn created the first version of this method for estimating fees. It works as follows: For transactions that took 1 to N (I picked N=25) blocks to confirm, keep N buckets with at most 100 entries in each recording the fees-per-kilobyte paid by those transactions. (separate buckets are kept for transactions that confirmed because they are high-priority) The buckets are filled as blocks are found, and are saved/restored in a new fee_estiamtes.dat file in the data directory. A few variations on Mike's initial scheme: To estimate the fee needed for a transaction to confirm in X buckets, all of the samples in all of the buckets are used and a median of all of the data is used to make the estimate. For example, imagine 25 buckets each containing the full 100 entries. Those 2,500 samples are sorted, and the estimate of the fee needed to confirm in the very next block is the 50'th-highest-fee-entry in that sorted list; the estimate of the fee needed to confirm in the next two blocks is the 150'th-highest-fee-entry, etc. That algorithm has the nice property that estimates of how much fee you need to pay to get confirmed in block N will always be greater than or equal to the estimate for block N+1. It would clearly be wrong to say "pay 11 uBTC and you'll get confirmed in 3 blocks, but pay 12 uBTC and it will take LONGER". A single block will not contribute more than 10 entries to any one bucket, so a single miner and a large block cannot overwhelm the estimates.
2014-06-06Allow multiple regression tests to run at onceGavin Andresen
Choose ports at startup based on PID, so multiple regression tests can run on the same system at the same time.
2014-06-06Type-safe CFeeRate classGavin Andresen
Use CFeeRate instead of an int64_t for quantities that are fee-per-size. Helps prevent unit-conversion mismatches between the wallet, relaying, and mining code.
2014-06-06Merge pull request #4297Wladimir J. van der Laan
b917555 qt: PeerTableModel: Fix potential deadlock. #4296 (Ashley Holman)
2014-06-06qt: PeerTableModel: Fix potential deadlock. #4296Ashley Holman
2014-06-06Merge pull request #4241Wladimir J. van der Laan
efe6888 build: fix version dependency (Cory Fields) f4d8112 build: quit abusing AM_CPPFLAGS (Cory Fields) 56c157d build: avoid the use of top_ and abs_ dir paths (Cory Fields) 70c71c5 build: Tidy up file generation output (Cory Fields) 6b9f0d5 build: nuke Makefile.include from orbit (Cory Fields) 8b09ef7 build: add stub makefiles for easier subdir builds (Cory Fields) be4e9ae build: delete old Makefile.am's (Cory Fields) 65e8ba4 build: Switch to non-recursive make (Cory Fields)
2014-06-05build: fix version dependencyCory Fields
2014-06-05build: quit abusing AM_CPPFLAGSCory Fields
Now that the build is non-recursive, adding to AM_CPPFLAGS means adding to _all_ cppflags. Logical groups of includes have been added instead, and are used individually by various targets.
2014-06-05build: avoid the use of top_ and abs_ dir pathsCory Fields
Using them has the side effect of confusing the dependency-tracking logic.
2014-06-05build: Tidy up file generation outputCory Fields
- Some file generation was still noisy, silence it. - AM_V_GEN is used rather than @ so that 'make V=1' works as intended - Cut down on file copies and moves when using sed, use pipes instead - Avoid the use of top_ and abs_ dirs where possible
2014-06-05build: nuke Makefile.include from orbitCory Fields
Rules and targets no longer need to be shared between subdirectories, so this is no longer needed.
2014-06-05build: add stub makefiles for easier subdir buildsCory Fields
2014-06-05build: delete old Makefile.am'sCory Fields
2014-06-05build: Switch to non-recursive makeCory Fields
Build logic moves from individual Makefile.am's to include files, which the main src/Makefile.am includes. This avoids having to manage a gigantic single Makefile. TODO: Move the rules from the old Makefile.include to where they actually belong and nuke the old file.
2014-06-05Merge pull request #4294 from laanwj/2014_06_no_global_strwalletJeff Garzik
Remove global strWalletFile
2014-06-05Remove global strWalletFileWladimir J. van der Laan
As it says on the tin. There is no need to have this variable be global, it's only used in AppInit2.
2014-06-05Fix GUI build with `--disable-wallet`Wladimir J. van der Laan
fe6bff2 and 65f78a1 broke it. Minor build changes.
2014-06-05Merge pull request #4291Wladimir J. van der Laan
fe6bff2 [Qt] add BerkeleyDB version info to RPCConsole (Philip Kaufmann)
2014-06-04Merge pull request #4287 from laanwj/2014_06_sideeffectGavin Andresen
Remove side effect in assertion in ProcessGetData
2014-06-04Merge pull request #4289 from Diapolo/log_config_fileGavin Andresen
log used config file to debug.log on startup
2014-06-04[Qt] add BerkeleyDB version info to RPCConsolePhilip Kaufmann
- to match info function between debug.log and RPCConsole
2014-06-04log used config file to debug.log on startupPhilip Kaufmann
2014-06-04Merge pull request #4270Wladimir J. van der Laan
1411a51 doc: Update hash in release process for new windows deps intermediate (Wladimir J. van der Laan) 386e732 gitian: make linux qt intermediate deterministic (Wladimir J. van der Laan)
2014-06-04Merge pull request #4282 from jgarzik/fix-wallet-initJeff Garzik
CWallet: fix nTimeFirstKey init, by making constructor init common code
2014-06-04Merge pull request #4247 from Diapolo/listenJeff Garzik
rename fNoListen to fListen and move to net
2014-06-04Merge pull request #4258Wladimir J. van der Laan
7b45d94 Make max number of orphan blocks kept in memory a startup parameter (fixes #4253) (shshshsh)
2014-06-04Merge pull request #4260Wladimir J. van der Laan
aab2c0f Remove template matching params from GetOpName() (Huang Le)
2014-06-04Remove side effect in assertion in ProcessGetDataWladimir J. van der Laan
A side-effect was introduced into an assertion in 7a0e84d. This commit fixes that.
2014-06-04Make max number of orphan blocks kept in memory a startup parameter (fixes ↵shshshsh
#4253)
2014-06-04Merge pull request #4223Wladimir J. van der Laan
06a91d9 VerifyDB progress (Cozz Lovan)
2014-06-03CWallet: fix nTimeFirstKey init, by making constructor init common codeJeff Garzik
Don't repeat yourself etc.
2014-06-03Merge pull request #4279Wladimir J. van der Laan
a98b870 Some documentation fixes + link to my Docker/LXC guide (Giuseppe Mazzotta)
2014-06-03Some documentation fixes + link to my Docker/LXC guideGiuseppe Mazzotta
I added a link to my guide about using docker containers + LXC (I am planning to maintain this at work for future bitcoin versions), then I mentioned other virtualization options (KVM, LXC). This commit includes a fix issue for documentation issue #4269 that consists in telling users to checkout correct bitcoin version before using the gitian descriptors (otherwise all hell can break loose). Also, I replaced URL for Debian 7.4 ISO with a correct one and added link to official Debian ISO sources.
2014-06-03Merge pull request #4280Wladimir J. van der Laan
bbe1925 [Qt] style police and small addition in rpcconsole (Philip Kaufmann)
2014-06-03VerifyDB progressCozz Lovan
2014-06-03[Qt] style police and small addition in rpcconsolePhilip Kaufmann
- fix spaces, indentation and coding style glitches
2014-06-03Merge pull request #4225Wladimir J. van der Laan
65f78a1 Qt: Add GUI view of peer information. #4133 (Ashley Holman)
2014-06-03Qt: Add GUI view of peer information. #4133Ashley Holman
2014-06-03Merge pull request #4273Wladimir J. van der Laan
91855f2 Properly initialize CWallet::nTimeFirstKey (tm314159)
2014-06-02Properly initialize CWallet::nTimeFirstKeytm314159
2014-06-02Merge pull request #3837Wladimir J. van der Laan
75ebced added many rpc wallet tests (Alon Muroch)
2014-06-02Merge pull request #3683Wladimir J. van der Laan
bdc83e8 [Qt] ensure payment request network matches client network (Philip Kaufmann)
2014-06-02Merge pull request #4213Wladimir J. van der Laan
516053c Make links on 'About Bitcoin Core' into clickable (squashed 5 comits into one) (Tawanda Kembo)
2014-06-02Merge pull request #4238Wladimir J. van der Laan
b90711c [Qt] Fix Transaction details shows wrong To: (Cozz Lovan)
2014-06-02Merge pull request #4261Wladimir J. van der Laan
09a54a6 Use pnode->nLastRecv as sync score directly (Huang Le)
2014-06-02doc: Update hash in release process for new windows deps intermediateWladimir J. van der Laan
This was forgotten in 25d4911.
2014-06-02Merge pull request #4268Wladimir J. van der Laan
223a6f7 Fix stray uppercase A in tx_valid.json. (Andreas Schildbach)
2014-06-02gitian: make linux qt intermediate deterministicWladimir J. van der Laan
A qt installation date snuck into the host utils (lrelease etc) This doesn't affect the end product, so no dependency version bump. It also doesn't explain why gavin's and mine build is different
2014-06-02Make links on 'About Bitcoin Core' into clickable (squashed 5 comits into one)Tawanda Kembo
Made the following links clickable: http://www.opensource.org/licenses/mit-license.php http://www.openssl.org/ eay@cryptsoft.com (Squashed commits into one commit as suggested by @laanwj) Replaced label with text browser on About Bitcoin Core Screen So that the links on the About screen can be clickable Replaced html property with text property I have now removed unnecessary html so this should make life easier for translators and you @Diapolo :). What do you think? The size of the window needs to change The size of the window needs to change when you make links clickable. Thanks for pointing that out @laanwj Using the https://www.openssl.org over the http link Using the https://www.openssl.org over the http link as suggested by @Diapolo
2014-06-01Periodic language updateWladimir J. van der Laan
Pull updated translations from Transifex before 0.9.2