< meshcollider>
in wallet/db.cpp in VerifyEnvironment(), if opening the environment fails the first time then the database env is moved to a backup and opening is retried... can someone explain what situation moving it would help in?
< freeark1>
Hi friends, I am new to blockchain, I am learning its internal.
< * Randolf>
congratulates freeark1
< wumpus>
we've all been there
< freeark1>
Wecome Randolf
< freeark1>
welcome
< Randolf>
freeark1: Thanks. Which area(s) of Bitcoin interests you the most?
< Randolf>
...from a core-development standpoint.
< freeark1>
I propose to create a system in which hard core developers get their earning directly rather outsourcing entities eat up major chunk.
< * luke-jr>
doesn't comphrehend this proposal
< freeark1>
If some people co-operate me I will bring blockchain theme everywhere. Hard-working people are exploited by smart people. And hard-working people are understood to be stupid.
< luke-jr>
that's a societal problem, not a Bitcoin problem
< wumpus>
this is very off topic here, this is a channel for development of the code of the bitcoin core software; I'd suggest to take it to #bitcoin.
< freeark1>
ok
< freeark1>
just one sentence.
< luke-jr>
one sentence in #bitcoin, please ;)
< wumpus>
feel free to listen in here to learn about the development, but this is not the place for wild project ideas but very specific ones
< ryanofsky>
meshcollider, it's only renaming the database log directory, not the actual database file. this might help if something is wrong with the transaction logs
< jonasschnelli>
Oh,... there is a significant mem leak in rescan-chainstate!
< jonasschnelli>
happend on my with headless debian only running bitcoind (only installed bitcoind after debian 9 minimal), machine has 32 GB DDR4 RAM / AMD Ryzen 7 1700X
< jonasschnelli>
sipa: Yes, let me test that...
< bitcoin-git>
[bitcoin] valentinewallace opened pull request #11915: Qt: Reflect correct dbcache value in options panel. (master...dbcache_gui_fix) https://github.com/bitcoin/bitcoin/pull/11915
< eck>
jonasschnelli: do you still maintain testnet-seed.bitcoin.jonasschnelli.ch
< eck>
it's in chainparams.cpp but i haven't been getting any dns responses from that seed (the testnet seeds work), which is why i as,
< wumpus>
indeed, it gives no results at the moment
< towertorony>
hello. why is the maj function used by bitcoin in src code with a simple | (or) not with an xor?
< sipa>
what do you mean with "the testnet seeds work"; the seeder by jonasschnelli you're referring to is a testnet seed
< sipa>
eck: ^
< towertorony>
that is in sha256...
< sipa>
towertorony: they're identical
< eck>
sorry, typo, the seeds from petertodd.org and bluematt.me respond, but not the seed from jonasschnelli.me
< towertorony>
how? xor is 1 if both inputs have same bits. or is 1 if at least one input is 1?
< sipa>
Maj(x,y,z) is either "(x & y) ^ (y & z) ^ (z & x)" or "z ^ (x & (y ^ z))"
< sipa>
eh
< sipa>
Maj(x,y,z) is either "(x & y) ^ (y & z) ^ (z & x)" or "(x & y) | (z & (x | y))"
< towertorony>
xor 1 if inputs different bits...sorry, 0 otherwise. or is zero only if both are 0?
< wumpus>
seed.bitcoin.sipa.be gives me no results either at the moment, btw
< sipa>
find me an input for which the two give a different results
< towertorony>
ok i will look into your explanation, sepa. thanks
< sipa>
towertorony: it's not just swapping out a xor for an or; it's a totally different expression that just happens to be equivalent
< sipa>
and the one used is only 4 bitwise operations, instead of 5
< sipa>
so it's faster
< towertorony>
i realized that the orig eqn uses a compliment of x...
< sipa>
wumpus: heh, indeed i'm not seeing any dns requests come in
< sipa>
fixed
< wumpus>
would be if there was a notification system that monitors the dns seeds, and sends out a mail or IRC message or such if they're unreachable for a while
< sipa>
my port forwarding firewall rule got erased somehow
< wumpus>
yep yours works again
< eck>
since jonas' seed is down, there are only two seeds for testnet
< eck>
not a huge deal if it's temporary, but something to be aware fo
< sipa>
towertorony: it helps to realize what the Maj function is doing: if a bit is set in 2 or 3 out of the inputs, the result is 1; if it's only set in 0 or 1 of the inputs, the result is 0
< wumpus>
eck: I'm sure it's just a matter of restarting it
< eck>
that's what i suspect/hope as well
< freeark1>
An easy to learn resource for blockchain
< freeark1>
bitcoin-dev development process, am I need to fork bitcoin github repo?
< brats>
hi where could download bitcoin core logo and other material?
< Provoostenator>
Here we go: seed.testnet.bitcoin.sprovoost.nl - runs on EC2, I don't know if that's good enough for testnet (if you're seeing A 66.111... you need to wait a bit)
< Provoostenator>
Privacy wise, I wonder how much Amazon can see, vs. e.g. running it on a physical machine in a data center in some country with proper privacy laws, not owned by a US company, etc.
< wumpus>
Provoostenator: nice!
< wumpus>
ah yes still gives 66.111 here
< Provoostenator>
And it's mainnet :-) let me fix that...
< Sentineo>
wumpus: domI understand it well that to run a seed node you need no registering of it? E.g. I saw built in dnse seeds in sources, but this sounds different. A dynamic seed dns network perhaps?
< Sentineo>
by registering I mean to write to a developer to list it somewhere
< wumpus>
Sentineo: I don't see what advantage another level of indirection would have
< Sentineo>
not suggesting anything ... asking ;) I do run some full nodes ooen to the public. To be a seed node is it enough to just run the tool in sipa's repo linked above?
< wumpus>
and a commitment to running it for fairly long term
< wumpus>
these are entry points to the network so they have to be hardcoded. It's not great, but it's the fastest bootstrapping mechanism. THere is also an automatic one, that is used when falling back (e.g. DNS seeds unreachable). This is a hardcoded list of reliable nodes that is updated every version.
< wumpus>
these are generally unreliable, as they're just nodes and no one committed to kepeing them up, so it takes longer to get connected to the network in that way, and once it found working nodes it asks them for more addresses and goes from there
< wumpus>
and it skips the DNS seeds if at startup it already has reliable peers in peers.dat
< Sentineo>
yep, I saw that.
< Sentineo>
wumpus: so what is the process to become one? First run the bitcoin-seeder tool?
< wumpus>
yes, basically wahat Provoostenator did, just create one, then make a PR
< Sentineo>
cool, ty
< Provoostenator>
I'll make a PR as well. What's the "servicebits filtering" about?
< wumpus>
nodes can request to know only about nodes that provide certain service bits
< Sentineo>
like network, bloom, witness etc
< wumpus>
this is useful for getting segwit peers, basically
< wumpus>
yes
< Provoostenator>
What would be the rationale for setting that false, e.g. BlueMatt: vSeeds.emplace_back("testnet-seed.bluematt.me", false);
< wumpus>
if your dns seed runs software that doesn't support it
< wumpus>
not acceptable for new ones I'd say
< wumpus>
that's just the way that old dnsseeds were grandfathered in when the filtering was introduced