Looks like this problem. See if --int-type=str solves it. I was unable to reproduce it, IIRC.
It was the Bitcointalk forum that inspired us to create Bitcointalksearch.org - Bitcointalk is an excellent site that should be the default page for anybody dealing in cryptocurrency, since it is a virtual gold-mine of data. However, our experience and user feedback led us create our site; Bitcointalk's search is slow, and difficult to get the results you need, because you need to log in first to find anything useful - furthermore, there are rate limiters for their search functionality.
The aim of our project is to create a faster website that yields more results and faster without having to create an account and eliminate the need to log in - your personal data, therefore, will never be in jeopardy since we are not asking for any of your data and you don't need to provide them to use our site with all of its capabilities.
We created this website with the sole purpose of users being able to search quickly and efficiently in the field of cryptocurrency so they will have access to the latest and most accurate information and thereby assisting the crypto-community at large.
sqlite3.ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
Traceback (most recent call last):
File "abe.py", line 2015, in
sys.exit(main(sys.argv[1:]))
File "abe.py", line 2009, in main
store = make_store(args)
File "abe.py", line 115, in make_store
store = DataStore.new(args)
File "/home/ian/bitcoin-abe/Abe/DataStore.py", line 2665, in new
return DataStore(args)
File "/home/ian/bitcoin-abe/Abe/DataStore.py", line 148, in __init__
store.initialize()
File "/home/ian/bitcoin-abe/Abe/DataStore.py", line 1123, in initialize
store.binin(conf["address_version"])))
File "/home/ian/bitcoin-abe/Abe/DataStore.py", line 439, in sql
store.cursor.execute(cached, params)
sqlite3.ProgrammingError: You must not use 8-bit bytestrings unless you use a text_factory that can interpret 8-bit bytestrings (like text_factory = str). It is highly recommended that you instead just switch your application to Unicode strings.
~/bin$ ./abe --config ../abe.conf
ddl_implicit_commit=true
create_table_epilogue=''
/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py:424: Warning: Converting column 'a' from VARCHAR to TEXT
store.cursor.execute(stmt)
/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py:424: Warning: Converting column 'b' from VARCHAR to TEXT
store.cursor.execute(stmt)
max_varchar=4294967295
clob_type=LONGTEXT
binary_type=hex
int_type=int
Created silly table abe_dual
sequence_type=mysql
limit_style=native
Traceback (most recent call last):
File "./abe", line 2010, in
sys.exit(main(sys.argv[1:]))
File "./abe", line 2004, in main
store = make_store(args)
File "./abe", line 115, in make_store
store = DataStore.new(args)
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 2600, in new
return DataStore(args)
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 148, in __init__
store.initialize()
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 1100, in initialize
config['use_firstbits'] = "false"
NameError: global name 'config' is not defined
ddl_implicit_commit=true
create_table_epilogue=''
/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py:424: Warning: Converting column 'a' from VARCHAR to TEXT
store.cursor.execute(stmt)
/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py:424: Warning: Converting column 'b' from VARCHAR to TEXT
store.cursor.execute(stmt)
max_varchar=4294967295
clob_type=LONGTEXT
binary_type=hex
int_type=int
sequence_type=mysql
limit_style=native
Failed: CREATE TABLE configvar (
configvar_name VARCHAR(100) NOT NULL PRIMARY KEY,
configvar_value VARCHAR(255)
)
Traceback (most recent call last):
File "./abe", line 2010, in
sys.exit(main(sys.argv[1:]))
File "./abe", line 2004, in main
store = make_store(args)
File "./abe", line 115, in make_store
store = DataStore.new(args)
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 2600, in new
return DataStore(args)
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 148, in __init__
store.initialize()
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 1041, in initialize
store.ddl(stmt)
File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 424, in ddl
store.cursor.execute(stmt)
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 174, in execute
self.errorhandler(self, exc, value)
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError: (1050, "Table 'configvar' already exists")
DELETE FROM configvar WHERE configvar_name = 'use_firstbits' AND configvar_value <> 'true';
UPDATE configvar SET configvar_value = 'Abe29.3' WHERE configvar_name = 'schema_version' AND configvar_value = 'Abe30';
abe=> select max(cc.block_height) from chain_candidate cc join abe_firstbits fb using( block_id) where cc.chain_id = 1 and fb.address_version = '00' and cc.in_longest = 1 and length(fb.firstbits) < 5;
max
--------
160686
(1 row)
abe=> select fb.firstbits from chain_candidate cc join abe_firstbits fb using( block_id) where cc.chain_id = 1 and fb.address_version = '00' and cc.in_longest = 1 and length(fb.firstbits) < 5 and cc.block_height = 160686;
firstbits
-----------
1u7c
(1 row)
mysql> select * from abe_firstbits order by pubkey_id limit 10;
+-----------+----------+-----------------+-----------+
| pubkey_id | block_id | address_version | firstbits |
+-----------+----------+-----------------+-----------+
| 1 | 1 | 00 | 1 |
| 3 | 3 | 00 | 12 |
| 4 | 4 | 00 | 1h |
| 5 | 5 | 00 | 1f |
| 6 | 6 | 00 | 15 |
| 7 | 7 | 00 | 1j |
| 8 | 8 | 00 | 1g |
| 9 | 9 | 00 | 16 |
| 10 | 10 | 00 | 1j6 |
| 11 | 11 | 00 | 12c |
+-----------+----------+-----------------+-----------+
10 rows in set (0.00 sec)
SELECT MAX(block_height) FROM chain_candidate
WHERE chain_id = 1 AND in_longest = 1;
SELECT MAX(block_height) FROM chain_candidate
WHERE chain_id = 1 AND in_longest = 1;