<feed xmlns='http://www.w3.org/2005/Atom'>
<title>monzero-core.git/src/blockchain_db/lmdb/db_lmdb.cpp, branch v0.9.0</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.9.0</id>
<link rel='self' href='https://code.monzero.org/monzero-core.git/atom?h=v0.9.0'/>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/'/>
<updated>2015-12-31T06:37:27Z</updated>
<entry>
<title>fixed copyrights with bad year references</title>
<updated>2015-12-31T06:37:27Z</updated>
<author>
<name>Riccardo Spagni</name>
<email>ric@spagni.net</email>
</author>
<published>2015-12-31T06:37:27Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=810a11267c19512a49921c2e2884f6fd7dbf4206'/>
<id>urn:sha1:810a11267c19512a49921c2e2884f6fd7dbf4206</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge pull request #572</title>
<updated>2015-12-30T07:38:41Z</updated>
<author>
<name>Riccardo Spagni</name>
<email>ric@spagni.net</email>
</author>
<published>2015-12-30T07:38:41Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=fd36eea6ddc23d223593adb235b8e13a58ac11ef'/>
<id>urn:sha1:fd36eea6ddc23d223593adb235b8e13a58ac11ef</id>
<content type='text'>
b39aae7 Tweak 45800a25e9374e63caaabba05c89585c86acd668 (hyc)
4a5a5ff blockchain: always stop the ioservice before returning (moneromooo-monero)
78b65cf db_lmdb: safety close db at exit (moneromooo-monero)
45800a2 db_lmdb: fix a strdup/delete[] mistmatch (moneromooo-monero)
</content>
</entry>
<entry>
<title>Tweak 45800a25e9374e63caaabba05c89585c86acd668</title>
<updated>2015-12-29T00:11:35Z</updated>
<author>
<name>hyc</name>
<email>hyc@symas.com</email>
</author>
<published>2015-12-29T00:09:10Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=b39aae7aa5ca7f362aa4fdc1159e853b80077ade'/>
<id>urn:sha1:b39aae7aa5ca7f362aa4fdc1159e853b80077ade</id>
<content type='text'>
trivial cleanup
</content>
</entry>
<entry>
<title>db_lmdb: safety close db at exit</title>
<updated>2015-12-28T19:23:02Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2015-12-28T19:23:02Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=78b65cf7e8089d370aa7e8b481ccce8a3b9cd4af'/>
<id>urn:sha1:78b65cf7e8089d370aa7e8b481ccce8a3b9cd4af</id>
<content type='text'>
Noticed by hyc

Also set m_open to false when closed
</content>
</entry>
<entry>
<title>db_lmdb: fix a strdup/delete[] mistmatch</title>
<updated>2015-12-28T19:22:37Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2015-12-28T19:22:37Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=45800a25e9374e63caaabba05c89585c86acd668'/>
<id>urn:sha1:45800a25e9374e63caaabba05c89585c86acd668</id>
<content type='text'>
</content>
</entry>
<entry>
<title>BlockchainDB: skip fixup check if read-only database</title>
<updated>2015-12-26T22:30:20Z</updated>
<author>
<name>warptangent</name>
<email>warptangent@tutanota.com</email>
</author>
<published>2015-12-26T22:27:35Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=ee9d71e9f94ba8571c44c889a70bda77c8961959'/>
<id>urn:sha1:ee9d71e9f94ba8571c44c889a70bda77c8961959</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge pull request #565</title>
<updated>2015-12-26T08:23:17Z</updated>
<author>
<name>Riccardo Spagni</name>
<email>ric@spagni.net</email>
</author>
<published>2015-12-26T08:21:21Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=95ceb715dc875823f56f930d12a08c349874ce19'/>
<id>urn:sha1:95ceb715dc875823f56f930d12a08c349874ce19</id>
<content type='text'>
79beed2 tests: fix various tests by using parameters better suited to monero (moneromooo-monero)
d0a8362 tests: fix some double spending tests (moneromooo-monero)
2358d0d tests: use 255 as a "too high" block version (moneromooo-monero)
f33a88c blockchain: fix a few block addition bugs (moneromooo-monero)
a9ff11c blockchain: fix an off by one error in unlocked time check (moneromooo-monero)
f294be3 blockchain: reinstate double spending checks in check_tx_inputs (moneromooo-monero)
737b6d6 blockchain: make some flag twiddling code closer to the original (moneromooo-monero)
81cb0fc blockchain: fix bitflipping test with quantized block rewards (moneromooo-monero)
22ddf09 blockchain: add missing m_tx_pool.on_blockchain_dec (moneromooo-monero)
d837c0c blockchain: fix switch to alternative blockchain for more than one block (moneromooo-monero)
5cec076 blockchain: add a missing validity check to rollback_blockchain_switching (moneromooo-monero)
3cabdb5 core: catch exceptions from get_output_key (moneromooo-monero)
5eef645 db: throw when given a non txout_to_key output to add (moneromooo-monero)
</content>
</entry>
<entry>
<title>db: throw when given a non txout_to_key output to add</title>
<updated>2015-12-25T21:56:37Z</updated>
<author>
<name>moneromooo-monero</name>
<email>moneromooo-monero@users.noreply.github.com</email>
</author>
<published>2015-12-25T21:56:37Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=5eef64578ba1e19c9a6045a25369db19d4136e75'/>
<id>urn:sha1:5eef64578ba1e19c9a6045a25369db19d4136e75</id>
<content type='text'>
The check was explicit in the original version, so it seems
safer to make it explicit here, especially as it is now done
implicitely in a different place, away from the original check.
</content>
</entry>
<entry>
<title>BlockchainLMDB: When removing, find amount output index fast by starting at end</title>
<updated>2015-12-24T21:32:35Z</updated>
<author>
<name>warptangent</name>
<email>warptangent@tutanota.com</email>
</author>
<published>2015-12-24T20:25:07Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=ffcf6bdb95abe2dab37d5f8d9acc134fdc6b4d36'/>
<id>urn:sha1:ffcf6bdb95abe2dab37d5f8d9acc134fdc6b4d36</id>
<content type='text'>
This improves blockchain reorganization time by allowing one of the more
expensive DB lookups when popping a block to not have to seek through a
long dup list in the "output_amounts" subdb. This is most noticeable for
HDDs.

As before, the dup list is still walked if necessary (but in reverse),
and the global output index still confirmed to be the one looked for.
But under proper use, the result will be found at the end of the dup
list, so we start there.

Removing an amount output index is always done in the context of popping
a block, so the global output index being looked for should be the last
one in that amount key's dup list. Even if the txs themselves aren't
removed in reverse order (supposed to be according to original
implementation), the specified amount output index will still be near
the end, because the txs are in the same block.

TEST:

Pop blocks with blockchain_import.

Blocks should be successfully removed with no errors shown.

bitmonerod should be able to start syncing from the reduced blockchain
height.
</content>
</entry>
<entry>
<title>BlockchainLMDB: Remove tx outputs in reverse order</title>
<updated>2015-12-24T21:30:12Z</updated>
<author>
<name>warptangent</name>
<email>warptangent@tutanota.com</email>
</author>
<published>2015-12-24T20:22:09Z</published>
<link rel='alternate' type='text/html' href='https://code.monzero.org/monzero-core.git/commit/?id=f11def012f38106b0ffeb7010a2f749de1e5b640'/>
<id>urn:sha1:f11def012f38106b0ffeb7010a2f749de1e5b640</id>
<content type='text'>
Data should be removed in the reverse order it was added.

This matches the order of removal in
blockchain_storage::pop_transaction_from_global_index.
</content>
</entry>
</feed>
