Commit Graph

26 Commits

Author SHA1 Message Date
Jude Nelson
b8f23bd8d7 add DB queries for getting the unexpired and cumulative name counts 2017-11-08 11:28:16 -05:00
Jude Nelson
01bad1dcb2 remember the address that creates (i.e. imports-for-the-first-time or registers) a name 2017-10-27 19:24:24 -04:00
Jude Nelson
8cd29bb2d1 only check rc value, not exit bits 2017-10-11 17:26:25 -04:00
Jude Nelson
36e506e18b feed stdout and stderr to the parent process when doing a sqlite3 backup, so we can properly catch database-lock errors 2017-10-01 16:31:50 -04:00
Jude Nelson
8eb8028bb8 log deletes 2017-09-29 00:50:02 -04:00
Jude Nelson
d880b43031 include grace period in name expiration calculation 2017-09-29 00:49:37 -04:00
Jude Nelson
37604b8b9c slightly stronger assertions when creating state regarding what has to be in the preorder operation; allow an operation to stipulate that additional fields be backed up by a successor operation besides its consensus fields 2017-09-29 00:49:26 -04:00
Aaron Blankstein
c878b62c8a /usr/bin/env python -> python2. our code is not python3 friendly, we should specify that 2017-08-17 13:40:01 -04:00
Jude Nelson
2008a80d2d clean up imports 2017-04-27 19:22:57 -04:00
Jude Nelson
ad5948c30a better database-is-locked error handling 2017-04-24 20:11:06 -04:00
Jude Nelson
845d23cc60 do not require pybitcoin, except for unit tests 2017-04-20 17:36:16 -04:00
Jude Nelson
402e7d10b7 format and encode the path 2017-02-23 17:21:31 -05:00
Jude Nelson
1e9bc037d4 Use sqlite3 .backup instead of shutil.copyfile() for backing up SQLite3 databases 2017-02-20 20:53:23 -05:00
Jude Nelson
6abc1f0644 remove dead code 2016-10-27 15:47:20 -04:00
Jude Nelson
ec02bc89a6 comment on what offset/count mean when selecting modifier operations
from a block.
2016-10-24 22:43:25 -04:00
Jude Nelson
a18028589e get number of names and number of names in a namespace; fix bugs found
in testing
2016-10-24 17:08:45 -04:00
Jude Nelson
432d70d57b Refactor the db to make expensive queries pageable, so we don't
overwhelm the node with one bad RPC.  In particular, make
it so the caller can page through the list of operations that occurred
at a particular block (so the caller can fetch them in small batches),
and make it possible to query the history table directly.
2016-10-24 03:18:47 -04:00
Jude Nelson
e62739c1e4 take out gratuitous timestamps 2016-10-13 20:47:11 -04:00
Jude Nelson
42a9d9feb2 when looking for points in the blockchain where a name was updated, do
not forget to select on the name itself (lest we read the whole database
into RAM)
2016-10-13 20:20:31 -04:00
Jude Nelson
333fee0fe7 use a huge timeout for db connections 2016-10-10 12:51:18 -04:00
Jude Nelson
4a8de8c118 add namedb_get_last_nameops() and namedb_get_blocks_with_ops() 2016-10-10 12:02:57 -04:00
Jude Nelson
438647fea2 update preorder schema to include the txid as well as preorder hash, so
we don't violate the uniqueness constraint if someone reuses the same
key
2016-09-28 19:54:00 -04:00
Jude Nelson
b7f0b5ae9e when getting all names or names in a namespace, just get the names
themselves.
2016-09-16 17:45:24 -04:00
Jude Nelson
d33aa69228 check namespace fields before updating it; when selecting a namespace at
a block height, optionally ignore the reveal block
2016-09-09 16:53:45 -04:00
Jude Nelson
4802c6638b WIP: use the new epoch system; working on restoring expired
namespace_reveals
2016-09-09 11:16:55 -04:00
Jude Nelson
45194de4bf Merge sqlite3's database to develop. Use a sqlite3 database instead of
a flat file.  Preserve the BlockstackDB API, but be a lot more rigorous
about checking invariants that must hold across state-preordering,
state-creating, and state-transitioning.
2016-09-02 00:19:06 -04:00