<feed xmlns='http://www.w3.org/2005/Atom'>
<title>monzero-core.git/src/blockchain_db/blockchain_db.cpp, branch v0.14.0.2</title>
<subtitle>Monzero core node, command-line wallet, consensus code, and release tooling.
</subtitle>
<id>https://code.monzero.org/monzero-core.git/atom?h=v0.14.0.2</id>
<link rel='self' href='https://code.monzero.org/monzero-core.git/atom?h=v0.14.0.2'/>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/'/>
<updated>2019-02-12T12:15:54Z</updated>
<entry>
<title>ArticMine's new block weight algorithm</title>
<updated>2019-02-12T12:15:54Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2019-01-21T17:18:50Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=ebc60a098d40506fdd0c5974a8644728d502e024'/>
<id>urn:sha1:ebc60a098d40506fdd0c5974a8644728d502e024</id>
<content type='text'>
This curbs runaway growth while still allowing substantial
spikes in block weight

Original specification from ArticMine:

here is the scaling proposal
Define: LongTermBlockWeight
Before fork:
LongTermBlockWeight = BlockWeight
At or after fork:
LongTermBlockWeight = min(BlockWeight, 1.4*LongTermEffectiveMedianBlockWeight)
Note: To avoid possible consensus issues over rounding the LongTermBlockWeight for a given block should be calculated to the nearest byte, and stored as a integer in the block itself. The stored LongTermBlockWeight is then used for future calculations of the LongTermEffectiveMedianBlockWeight and not recalculated each time.
Define:   LongTermEffectiveMedianBlockWeight
LongTermEffectiveMedianBlockWeight = max(300000, MedianOverPrevious100000Blocks(LongTermBlockWeight))
Change Definition of EffectiveMedianBlockWeight
From (current definition)
EffectiveMedianBlockWeight  = max(300000, MedianOverPrevious100Blocks(BlockWeight))
To (proposed definition)
EffectiveMedianBlockWeight  = min(max(300000, MedianOverPrevious100Blocks(BlockWeight)), 50*LongTermEffectiveMedianBlockWeight)
Notes:
1) There are no other changes to the existing penalty formula, median calculation, fees etc.
2) There is the requirement to store the LongTermBlockWeight of a block unencrypted in the block itself. This  is to avoid possible consensus issues over rounding and also to prevent the calculations from becoming unwieldy as we move away from the fork.
3) When the  EffectiveMedianBlockWeight cap is reached it is still possible to mine blocks up to 2x the EffectiveMedianBlockWeight by paying the corresponding penalty.
</content>
</entry>
<entry>
<title>v8: per byte fee, pad bulletproofs, fixed 11 ring size</title>
<updated>2018-09-11T13:38:07Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2018-07-18T21:24:53Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=5ffb2ff9b7c301eda5811a939c705f26627c4735'/>
<id>urn:sha1:5ffb2ff9b7c301eda5811a939c705f26627c4735</id>
<content type='text'>
</content>
</entry>
<entry>
<title>core: sync database based on bytes added, not blocks added</title>
<updated>2018-08-12T16:13:46Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2018-08-01T10:09:35Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=b278b83860da5eaaa122c219ad8c63f641e41cd3'/>
<id>urn:sha1:b278b83860da5eaaa122c219ad8c63f641e41cd3</id>
<content type='text'>
Blocks have a very wide range, whereas actual size is the relevant
quantity to consider when syncing
</content>
</entry>
<entry>
<title>db: store cumulative rct output distribution in the db for speed</title>
<updated>2018-07-13T10:37:04Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2018-05-22T13:46:30Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=45e419bd5c756337635feccec388efedf04f44ac'/>
<id>urn:sha1:45e419bd5c756337635feccec388efedf04f44ac</id>
<content type='text'>
This gets rid of the temporary precalc cache.

Also make the RPC able to send data back in binary or JSON,
since there can be a lot of data

This bumps the LMDB database format to v3, with migration.
</content>
</entry>
<entry>
<title>db_lmdb: save pruned and prunable tx data separately</title>
<updated>2018-05-23T21:48:12Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2017-10-01T10:24:33Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=b9389e582eb4e1806ce25a14fa492259c3d40dfc'/>
<id>urn:sha1:b9389e582eb4e1806ce25a14fa492259c3d40dfc</id>
<content type='text'>
This bumps DB version to 2, migration code will run for v1 DBs
</content>
</entry>
<entry>
<title>Update 2018 copyright</title>
<updated>2018-01-26T15:03:20Z</updated>
<author>
<name>xmr-eric</name>
<email>eric@moneroeric.com</email>
</author>
<published>2018-01-07T05:05:16Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=18216f19dd479466cb7fd38f52d23bddfcfd4880'/>
<id>urn:sha1:18216f19dd479466cb7fd38f52d23bddfcfd4880</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix a few leaks by throwing objects, not newed pointers to objects</title>
<updated>2017-12-18T15:15:13Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2017-12-09T12:56:27Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=d753d716a6288ea9ecb4c9262b63ad804fa0a6e0'/>
<id>urn:sha1:d753d716a6288ea9ecb4c9262b63ad804fa0a6e0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>move includes around to lessen overall load</title>
<updated>2017-12-16T22:46:38Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2017-11-25T22:25:05Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=09ce03d612e54231694eee2fb9e5c807b2bfc341'/>
<id>urn:sha1:09ce03d612e54231694eee2fb9e5c807b2bfc341</id>
<content type='text'>
</content>
</entry>
<entry>
<title>blockchain_db: sanity check on tx/hash vector sizes</title>
<updated>2017-11-15T10:02:23Z</updated>
<author>
<name>flozilla</name>
<email>flozilla@users.noreply.github.com</email>
</author>
<published>2017-11-15T10:02:23Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=f9fad186080547a19fb3cc0f663763769b0830e5'/>
<id>urn:sha1:f9fad186080547a19fb3cc0f663763769b0830e5</id>
<content type='text'>
It could trip on a corrupt/crafted file if the user has disabled
input verification.
</content>
</entry>
<entry>
<title>remove "using namespace std" from headers</title>
<updated>2017-11-14T16:56:10Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2017-10-10T14:47:08Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=383ff4f68943c5d998fba8caa20aee481583f214'/>
<id>urn:sha1:383ff4f68943c5d998fba8caa20aee481583f214</id>
<content type='text'>
It's nasty, and actually breaks on Solaris, where if.h fails to
build due to:

  struct map *if_memmap;
</content>
</entry>
</feed>
