< sipa> i think one of those is a known issue
< sipa> for which a PR exists to fix it
< meshcollider> this one #14602 ?
< gribble> https://github.com/bitcoin/bitcoin/issues/14602 | Bugfix: Correctly calculate balances when min_conf is used, and for getbalance("*") by luke-jr · Pull Request #14602 · bitcoin/bitcoin · GitHub
< meshcollider> it should probably be backported then right
< sipa> meshcollider: yes
< gmaxwell> yep, I thought I saw that one. The other one is less clear to me... "invalid amount" makes me wonder what php is doing with 0.00005.
< gmaxwell> meshcollider: yes, that a pretty serious behavior change.
< Toby> Hello there.
< Guest9346> Is anybody there?
< Guest9346> How can I contribute to bitcoin development
< meshcollider> Yeah the listunspent one is weird, I don't think theres been any changes to how it works in 0.17? And I can't replicate the issue using the command line, I suspect you're right about it being a weird PHP thing
< gmaxwell> meshcollider: a while back (not in 0.17.0) we changes from accepting .00005 to only accepting 0.00005 who knows how it stringifies that value...
< bitcoin-git> [bitcoin] andrewtoth opened pull request #14707: [RPC] Add include_coinbase option to receiveby RPCs (master...receivedby-coinbase) https://github.com/bitcoin/bitcoin/pull/14707
< phantomcircuit> gmaxwell, almost certainly bad things
< sanket1729> What do you think about the following? Prior to RBF, nodes discarded all the transactions after the first transaction thereby guarding CPU validation resources by not validating other transactions. After RBF, nodes need to validate all subsequent transactions with higher sequence number if they pay higher fee.
< sanket1729> In peak fees times, fees have been around 1000sat/byte(Jan 2018) whereas rbf only requires fees be more than minTxRelay fees(currently 1say/byte in bitcoin core) than the previous transaction. An attacker could start with 1 sat/byte fees and send 1000 RBF transactions with increasing fees 1sat/byte, 2 .... and so on. Thereby wasting node CPU validation resources 1000 times. This is not a big problem since fees are around
< sanket1729> Or maybe this is the expected behavior?
< gmaxwell> sanket1729: they could do the same thing without replacement at all, simply by chaining low fee transactions.
< gmaxwell> the whole design of the RBF rules was to limit resource expendature to be approximately equal to the worst case you could achieve without using replacement.
< sanket1729> Yes, but I read somewhere that mempool increases the minimum fees to tx to enter into mempool incase there is spam. But this is not spam since we are replacing things from mempool. So, it is kindof different
< sanket1729> From pwuille from bitcoin stackexchange: Nodes on the network maintain unconfirmed transactions in their mempool, and when the mempool grows too big, they will raise the minimum fee necessary to enter the mempool
< gmaxwell> sanket1729: the minimum relay fee goes up when your nodes local mempool is full (e.g. 300MB of txdata), that value has never gone much over 10s/b IIRC FWIW.
< phantomcircuit> gmaxwell, isn't the replacement increase also based on the mempool inclusion?
< gmaxwell> phantomcircuit: yes well kinda. The replcement must meet the new minimum and must be greater than the replaced by the incremental feerate. They used to be one in the same, but I believe they were split because it made predicting the incremental minimum too hard.
< esotericnonsense> gmaxwell: isn't it the case that without replacement there's a limit to chaining
< esotericnonsense> (it could well be the case that the limit is newer than RBF)
< gmaxwell> esotericnonsense: kinda. but if you fan out pessimally (to hit the worst case) it's enormous, so not a praticial limit on your ability to make many transactions.
< gmaxwell> that limit is just there to avoid computational blow up in things like CPFP.
< sipa> the incremental feerate for replacement doesn't go up when the mempool gets full
< sipa> only the minimum relay feerate
< sipa> sanket1729: hi, pieter here
< esotericnonsense> ah yes i suppose that's right.
< esotericnonsense> hadn't thought about fanning. lol.
< gmaxwell> sipa: which is technically a violation of BIP125.
< esotericnonsense> anyway I pasted this just now in -forks but thought someone here might care as it's core dev.
< esotericnonsense> https://bitcoin.electronrelocation.com/ force refresh if you've seen it before cos I have some issues with caching.
< esotericnonsense> prettified. i have receiving working but not sending cause I sit and think properly about authentication.
< esotericnonsense> I need to*
< esotericnonsense> (i have no bloody idea why my port forwarding has stopped working and need to investigate).
< gmaxwell> (that was changed in PR#9615 FWIW, though it doesn't really make much difference in any case)
< gribble> https://github.com/bitcoin/bitcoin/issues/9615 | Wallet incremental fee by morcos · Pull Request #9615 · bitcoin/bitcoin · GitHub
< gmaxwell> esotericnonsense: nice! (your link)
< esotericnonsense> gmaxwell: thank you :)
< gmaxwell> esotericnonsense: block template view could show some stats like total weight, and total fees + subsidy.
< esotericnonsense> yeah. i think it can actually be the same as the mempool table or roughly the same anyway
< gmaxwell> esotericnonsense: on the peers table, take care to avoid displaying the random port number on one side of the connection (looks like you don't right now), it's basically of zero use but knowing it makes TCP RST attacks much easier.
< gmaxwell> esotericnonsense: chaintips might be an interesting thing to show. and maybe some limited 'block explorer' like stuff.
< esotericnonsense> i think everything that's in bitcoind-ncurses can go in there
< esotericnonsense> it's not that simple to reason about not DoSing my own node though on the public version, if it were auth gated it would be a lot easier :p
< esotericnonsense> e.g. caching responses works if you have a limited subset of responses, if someone can arbitrarily query a txid I need to actually think about things :P
< gmaxwell> well you could just apply some rate limiter, perhaps with some per-IP bucketing so a DOSer doesn't block all webaccess.
< esotericnonsense> yeah, it just has to be thought about per query I think because it simplifies the design to not care about rate limiting in the general case (e.g. only certain paths are vulnerable)
< esotericnonsense> (I mean, _really_ rate limiting like 1-5/s as opposed to 'no-one needs to hit me at 100/s go away'
< esotericnonsense> i think i'm going to build it in to the whitelist on the backend
< bitcoin-git> [bitcoin] kallewoof closed pull request #12508: IsAllFromMe (master...feature-isallfromme) https://github.com/bitcoin/bitcoin/pull/12508
< bitcoin-git> [bitcoin] AkioNak opened pull request #14708: Warn unrecognised sections in the config file (master...warn_unrecognized_section) https://github.com/bitcoin/bitcoin/pull/14708
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/edc715240cb6...ae32806ea202
< bitcoin-git> bitcoin/master 76e13b5 Lenny Maiorani: warnings: Compiler warning on memset usage for non-trivial type...
< bitcoin-git> bitcoin/master ae32806 Wladimir J. van der Laan: Merge #14651: Refactor: Fix compiler warning in prevector.h...
< bitcoin-git> [bitcoin] laanwj closed pull request #14651: Refactor: Fix compiler warning in prevector.h (master...warnings) https://github.com/bitcoin/bitcoin/pull/14651
< promag> jonasschnelli: wumpus: ready to merge #14123?
< gribble> https://github.com/bitcoin/bitcoin/issues/14123 | gui: Add GUIUtil::bringToFront by promag · Pull Request #14123 · bitcoin/bitcoin · GitHub
< bitcoin-git> [bitcoin] laanwj pushed 7 new commits to master: https://github.com/bitcoin/bitcoin/compare/ae32806ea202...48223256cf6c
< bitcoin-git> bitcoin/master 53bb6be Hennadii Stepanov: Remove obj_c for macOS Dock icon setting...
< bitcoin-git> bitcoin/master 2464925 Hennadii Stepanov: Use Qt signal for macOS Dock icon click event...
< bitcoin-git> bitcoin/master 6b1d297 Hennadii Stepanov: Remove obj_c for macOS Dock icon menu...
< bitcoin-git> [bitcoin] laanwj closed pull request #14123: gui: Add GUIUtil::bringToFront (master...2018-08-bringtofront) https://github.com/bitcoin/bitcoin/pull/14123
< bitcoin-git> [bitcoin] laanwj closed pull request #14597: qt: Cleanup MacDockIconHandler class (master...20181028-macos-dock-overhaul) https://github.com/bitcoin/bitcoin/pull/14597
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/48223256cf6c...af3c8a7e9f09
< bitcoin-git> bitcoin/master fa9ed38 MarcoFalke: test_node: get_mem_rss fixups
< bitcoin-git> bitcoin/master af3c8a7 Wladimir J. van der Laan: Merge #14693: test_node: get_mem_rss fixups...
< bitcoin-git> [bitcoin] laanwj closed pull request #14693: test_node: get_mem_rss fixups (master...Mf1811-qaTestNodeFixups) https://github.com/bitcoin/bitcoin/pull/14693
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/af3c8a7e9f09...5cdfd72b179d
< bitcoin-git> bitcoin/master ec1201a Hennadii Stepanov: Don't use systray icon on inappropriate systems...
< bitcoin-git> bitcoin/master 5cdfd72 Wladimir J. van der Laan: Merge #14228: Qt: Enable system tray icon by default if available...
< bitcoin-git> [bitcoin] laanwj closed pull request #14228: Qt: Enable system tray icon by default if available (master...unavailable-systray) https://github.com/bitcoin/bitcoin/pull/14228
< wumpus> can't wait to remove the concept of 'tray icon' completely...
< wumpus> I think 'minimize to tray' caused more whoops, I've lost my UI issues than any other functionality
< promag> :)
< wumpus> (the other problematic functionality there is remembering the window position between runs, but that gets merely second place...)
< bitcoin-git> [bitcoin] laanwj pushed 3 new commits to master: https://github.com/bitcoin/bitcoin/compare/5cdfd72b179d...90c0b6aca2da
< bitcoin-git> bitcoin/master 13fe258 MeshCollider: Error if rpcpassword in conf contains a hash character
< bitcoin-git> bitcoin/master 0385109 MeshCollider: Add test for rpcpassword hash error
< bitcoin-git> bitcoin/master 90c0b6a Wladimir J. van der Laan: Merge #14494: Error if # is used in rpcpassword in conf...
< meshcollider> promag: do you have time to rebase #13339 and address the comments there
< gribble> https://github.com/bitcoin/bitcoin/issues/13339 | wallet: Replace %w by wallet name in -walletnotify script by promag · Pull Request #13339 · bitcoin/bitcoin · GitHub
< bitcoin-git> [bitcoin] laanwj closed pull request #14494: Error if # is used in rpcpassword in conf (master...201810_hash_in_rpcpassword_error) https://github.com/bitcoin/bitcoin/pull/14494
< millerti> I just built the latest bitcoin from github, and immediately on start, I get a std::bad_alloc exception. I googled this, and I don't think any of the problems people talk about. This is a completely fresh install. No wallets or anything. It's a 64-bit build. I have penty of physical and virtual RAM. Any ideas where to start? I'll try a debugger to get a stack trace....
< millerti> Ah, here's the problem. A bad number being passed to operator new: operator new (sz=115948856372249)
< wumpus> millerti: ouch! can you get a traceback from where that allocation is called?
< millerti> Yeah.
< millerti> What is your preferred paste site?
< wumpus> 0bin.net
< millerti> Hmmm... I clicked the short URL link, and it just sits there saying that it's loading a short URL. Can I use pastebin?
< wumpus> sure
< wumpus> that one is more private (the owners of the pastebin site itself cannot see the paste contents) but this is likely no sensitive information
< millerti> Indeed.
< millerti> wumpus ... I've seen your name elsewhere ... ##programming ?
< wumpus> the crash happens in a very strange place, while computing the standard data directory based on the home directory (~/.bitcoin)
< millerti> #16 GetDefaultDataDir () at util/system.cpp:726
< wumpus> deep inside std::string, I'm kind of confused about this
< gribble> https://github.com/bitcoin/bitcoin/issues/16 | Mac UI issues · Issue #16 · bitcoin/bitcoin · GitHub
< millerti> 726 return pathRet / ".bitcoin";
< millerti> $1 = {static separator = 47 '/', static preferred_separator = 47 '/', static dot = 46 '.', m_pathname = "/home/millerti"}
< wumpus> I'm only in a few channels these days, but used to be in more, not ##programming though; #etnaviv maybe, #radare or one of the gcw channels?
< wumpus> yes that all looks okay !
< phantomcircuit> millerti, is your HOME env variable sane?
< wumpus> the only thing I can think of could be something obscure like a version conflict between boost headers and library
< phantomcircuit> (it probably is but worth a look)
< millerti> HOME=/home/millerti
< wumpus> or c++ ABIs, is ABI conflict between c++11 and other languages still a thing?
< meshcollider> wumpus: since promag isn't online, perhaps you can explain to me why there are extra quotes around the escaped quote in the boost::replace_all statements in https://github.com/bitcoin/bitcoin/pull/13339/commits/cef0327afd220950142ec9d4d051bb94f5210be1
< millerti> Well, I had to disable the test suite to get around some ABI compatibility problems--unresolved symbols.
< meshcollider> boost::replace_all(name, "'", "'\''");
< meshcollider> why are there single quotes as well as double quotes
< phantomcircuit> millerti, make clean and try again
< wumpus> millerti: looks like there is a hidden one now
< millerti> So... let's see if there's a newer boost....
< wumpus> (e.g. not visible to the linker)
< millerti> This is is fundamentally a clean build. I'll see if I can get some updates on boost.
< wumpus> meshcollider: the double quotes are C++'s string quotes, the single quotes are shell quotes; '\'' closes the current '-string, adds a single escaped ', then reopens the '-string
< wumpus> meshcollider: try: echo 'this has a quote '\'' in between'
< meshcollider> ooh right
< meshcollider> thanks
< promag> what do you think of #14573 (added screenshot)?
< gribble> https://github.com/bitcoin/bitcoin/issues/14573 | qt: Add Window menu by promag · Pull Request #14573 · bitcoin/bitcoin · GitHub
< meshcollider> promag: isn't such a menu typically called "View" not "Window"?
< meshcollider> I like the idea though
< wumpus> promag: FWIW, I like it
< promag> meshcollider: at least on macos it's "Window"
< promag> Finder, Preview, Chrome, iTerm, QtCreator all use Window
< wumpus> although I"m not sure what the address book has to do with "Window"
< wumpus> it's a wallet function
< meshcollider> I'm just basing it off the three common programs i had open right now on my windows laptop haha, word, firefox and atom all say View on windows. Thats ok though!
< wumpus> that's why it was under "file"
< meshcollider> maybe its just a windows vs mac convention thing
< meshcollider> although yeah the address book would make more sense if it was called View
< promag> wumpus: I understand but I don't think that's how menus should be organised. For instance, Settings->Change Passphrase is also a wallet function
< promag> otherwise we should have a "Wallet" menu
< wumpus> maybe we should have a Wallet menu?
< wumpus> I'm fairly sure users will be confused with the address book in the "Window" menu
< wumpus> buut who am I, I"m not a GUI expert...
< millerti> Ok, dumb question. What does bitcoind do when you first fire it up? I want to do solo mining using a hacked version of bfgminer, which is why I installed bitcoind. So I started it with no options, and it's doing a LOT of stuff. UpdateTip: new best, and stuff like that.
< wumpus> promag: ohh I think I understand the rationale now, 'window' menu would have checkboxes for optional windows?
< millerti> Hmmm... is it caching known successful hashes?
< wumpus> it downloads and validates the bitcoin block chain
< millerti> The WHOLE blockchain? All 17 million?
< promag> wumpus: checkbox?
< wumpus> there is a pruning option to keep only the last N blocks, but it needs to download and validate everything. I'm not sure what 17 million you're referring to. there are 549806 blocks atthe moment.
< wumpus> btw; please ask further usage quesions in #bitcoin, this channel is for development
< wumpus> promag: yes, to toggle visibility
< promag> wumpus: ah yes
< wumpus> I remember that concept from some graphics tools, I'm just pattern-matching though
< promag> wumpus: it's like Window->Downloads in Chrome
< promag> wumpus: and when you click on a transaction is opens a window with "Details for ...", that should go to Window menu too
< millerti> Right, right. There is a limit if 21 million bitcoins, 17 million of which have been mined so far. But that's coins, not blocks.
< millerti> Is this cache being saved to disk? Sorry if I'm asking noob questions. I've spent all my time studying the hashing algorithm and not paid much attention to the protocol and network.
< wumpus> promag: by that reasoning, wouldn't the 'debug window' belong in the window menu too?
< wumpus> promag: I think what confused me was that this is only done for the address book but not others
< promag> wumpus: it's already there
< wumpus> oh, sorry.
< promag> wumpus: but I'd split it later, instead of "Debug window" it would have "Debug -> Console" etc
< wumpus> I... wouldn't make those separate windows
< wumpus> or do you mean that it goes to that tab?
< promag> no, just direct access
< wumpus> right
< wumpus> millerti: yes, this is saved to disk
< millerti> Cool. :)
< wumpus> the initial sync can take from 3 hours on a fast machine to weeks on RPi-class hardware, it's not something you want to do often
< wumpus> but agian, please move usage questions to #bitcoin
< millerti> Right, sorry.
< bitcoin-git> [bitcoin] practicalswift closed pull request #14706: Fix icc (Intel C++ compiler) warnings (master...icc) https://github.com/bitcoin/bitcoin/pull/14706
< phantomcircuit> sipa, indeed SocketEvents is kind of slow
< bitcoin-git> [bitcoin] practicalswift closed pull request #11652: Add missing locks: validation.cpp + related (master...init-and-validation-locks) https://github.com/bitcoin/bitcoin/pull/11652
< bitcoin-git> [bitcoin] practicalswift closed pull request #14224: Document intentional and unintentional unsigned integer overflows (wraparounds) using annotations (master...no_sanitize-unsigned-integer-overflow) https://github.com/bitcoin/bitcoin/pull/14224
< bitcoin-git> [bitcoin] practicalswift closed pull request #14194: Annotate unused parameters with [[maybe_unused]] (master...annotate-intentionally-unused-parameters) https://github.com/bitcoin/bitcoin/pull/14194
< bitcoin-git> [bitcoin] practicalswift closed pull request #11535: Avoid unintentional unsigned integer wraparounds (master...unsigned-integer-wraparounds) https://github.com/bitcoin/bitcoin/pull/11535
< phantomcircuit> sipa, actually it just seems we run SocketEvents way too much
< phantomcircuit> the kernel time for sock_poll is about the same as the time in SocketEvents
< instagibbs> 14356 ready for merge?
< bitcoin-git> [bitcoin] laanwj pushed 2 new commits to master: https://github.com/bitcoin/bitcoin/compare/90c0b6aca2da...47ed24cf8aa7
< bitcoin-git> bitcoin/master 88a79cb Gregory Sanders: fix converttopsbt permitsigdata arg, add basic test
< bitcoin-git> bitcoin/master 47ed24c Wladimir J. van der Laan: Merge #14356: fix converttopsbt permitsigdata arg, add basic test...
< bitcoin-git> [bitcoin] laanwj closed pull request #14356: fix converttopsbt permitsigdata arg, add basic test (master...converttopsbt_strip) https://github.com/bitcoin/bitcoin/pull/14356
< phantomcircuit> #14356
< gribble> https://github.com/bitcoin/bitcoin/issues/14356 | fix converttopsbt permitsigdata arg, add basic test by instagibbs · Pull Request #14356 · bitcoin/bitcoin · GitHub
< millerti> bitcoind crashed when I ran out of disk space. So I freed up PLENTY of space, but now it still complains that there's no space left on the device when I try to start it up.
< millerti> Is this a usage question?
< millerti> Never mind.
< booyah> millerti: realy crash or just exited?
< booyah> if it is sigsegv, then millerti can you run it in gdb, as "gdb --args bitcoind ...." and open issue on github
< millerti> Well... it looked like a semi-clean shutdown. I added "-reindex" and it's doing something.
< millerti> But apparently it didn't leave the database in the BEST of states, so we'll see. Is there a way to validate the block chain locally so I can be sure I'm not missing something? Or is that automatic?
< sipa> millerti: well with -reindex it throws away the database and recreates it from scratch
< luke-jr> fyi, apparently Qt has decided to break backward compatibility some time between 5.9 and 5.11 :|
< luke-jr> not sure if this affects our binaries
< hebasto> luke-jr: could you elaborate?
< luke-jr> hebasto: I updated Qt and my Qt apps won't start anymore
< luke-jr> relocation error: /usr/lib64/libQt5Gui.so.5: symbol _ZNK11QLocaleData13validateCharsERK7QStringNS_10NumberModeEP10QByteArrayi6QFlagsIN7QLocale12NumberOptionEE, version Qt_5 not defined in file libQt5Core.so.5 with link time reference
< luke-jr> don't really have time to investigate further right this minute
< bitcoin-git> [bitcoin] ryanofsky opened pull request #14711: Remove uses of chainActive and mapBlockIndex in wallet code (master...pr/wchain2) https://github.com/bitcoin/bitcoin/pull/14711
< bitcoin-git> [bitcoin] MarcoFalke opened pull request #14712: wallet: Fix crash when rescanning wallet from future (master...Mf1811-walletCrashScan) https://github.com/bitcoin/bitcoin/pull/14712
< sipa> oh, we crossed 90 bits of chainwork
< sipa> around 29 hours ago
< achow101> apparently github is killing the "github services" thing in jan which means that we will lose the irc notifications for prs as that is a github service
< achow101> and it seems there is no replacement for it other than setting up a server that receives webhook notifications and then posts to irc
< luke-jr> sigh
< sipa> that doesn't sound hard
< midnightmagic> No that part sounds pretty easy..
< drexl> sounds like a use case for serverless/lambda
< drexl> no need to set up a server
< phantomcircuit> drexl, the irc part