Pages:
Author

Topic: Electrum server discussion thread - page 20. (Read 61494 times)

hero member
Activity: 938
Merit: 1000
June 23, 2012, 02:04:01 AM
#52

Code:
        current_id = self.safe_sql("""SELECT max(id) FROM tx_seq""");

If the table is indexed properly, it should be just as fast, too.  I'll try it on my node later and let you know how it works.


I tried that first but I got a tuple error of some kind. Let me know if you have more luck.
newbie
Activity: 11
Merit: 0
June 22, 2012, 09:00:36 PM
#51
I already updated Abe yesterday. Will give it a try though.

Edit: No dice, seems this commit might have something to do with it since it errors on this column.

indeed. I removed the call to new_id() because it was creating a new id.
however, the request might not work on all databases. (I use postgresql)

There is no last_value on MySQL as far as I am aware. Would it be possible to replace:

Code:
        current_id = self.safe_sql("""SELECT last_value FROM tx_seq""")
        current_id = current_id[0][0]

With

Code:
        current_id = self.safe_sql("""SELECT * FROM tx_seq ORDER BY id DESC LIMIT 1""")
        current_id = current_id[0][0]

Since my server crashes I can't be sure what current_id is returning on Postgre.

This is the same bug I'm getting.  I didn't even realize that PostgreSQL was an option.  If you're trying to support several different databases, you might want to consider a database abstraction layer, such as ADOdb.  It will make things much easier for you.

As a temporary solution something like this should be compatible with both:

Code:
        current_id = self.safe_sql("""SELECT max(id) FROM tx_seq""");

If the table is indexed properly, it should be just as fast, too.  I'll try it on my node later and let you know how it works.
hero member
Activity: 938
Merit: 1000
June 22, 2012, 08:51:08 AM
#50
I already updated Abe yesterday. Will give it a try though.

Edit: No dice, seems this commit might have something to do with it since it errors on this column.

indeed. I removed the call to new_id() because it was creating a new id.
however, the request might not work on all databases. (I use postgresql)

There is no last_value on MySQL as far as I am aware. Would it be possible to replace:

Code:
        current_id = self.safe_sql("""SELECT last_value FROM tx_seq""")
        current_id = current_id[0][0]

With

Code:
        current_id = self.safe_sql("""SELECT * FROM tx_seq ORDER BY id DESC LIMIT 1""")
        current_id = current_id[0][0]

Since my server crashes I can't be sure what current_id is returning on Postgre.
newbie
Activity: 44
Merit: 0
June 22, 2012, 08:10:35 AM
#49
no, there is no guarantee that different servers will configure their clock with the same time.

Why not just use UTC?

in addition, get_history will be extended, and it should be completely deterministic;
a hash of the history will be used to avoid the server resending the whole history everytime it changes.

Then just remove the received time before hashing? Or just use the hash of the last block a client knows of to identify how much history is missing?

I'm not sure if I understand how inputs/outputs can be used to sort transactions... could you expound?

when transactions are in the same block, they are logically ordered; you cannot spend coins before you receive them

That's a very sparse ordering. Say I receive transactions from three different accounts 5 minutes apart. As of now, it's quite possible for me to see the oldest transaction at the top of my transaction list, with the newer transactions below it. If I'm expecting them and keeping an eye on the list as I'm receiving them, that's a really obvious and confusing bug, and a horrible UX.

Or say you need to send out several transactions in a row, there are a ton of use cases where seeing them in the same order you sent them might be important. Again, the current situation can lead to bad UX.

The blockchain.info API seems to provide the received time for transactions without much issue, why can't Electrum?

Edit: sorting by tx_id when transactions belong to the same block seems to partially mitigate the issue. It doesn't fix transactions which take time to be confirmed, however...
legendary
Activity: 1896
Merit: 1353
June 22, 2012, 06:57:22 AM
#48
I already updated Abe yesterday. Will give it a try though.

Edit: No dice, seems this commit might have something to do with it since it errors on this column.

indeed. I removed the call to new_id() because it was creating a new id.
however, the request might not work on all databases. (I use postgresql)
hero member
Activity: 938
Merit: 1000
June 22, 2012, 06:29:50 AM
#47
I already updated Abe yesterday. Will give it a try though.

Edit: No dice, seems this commit might have something to do with it since it errors on this column.
legendary
Activity: 1896
Merit: 1353
June 22, 2012, 06:27:17 AM
#46
Updated my server but go this while starting it back up.

...

Edited out the addresses but other then that it is as is. It also looks like my client might be stuck synchronizing.

Should I worry about this?

Edit: I get the errors each time I want to connect to the server with my client.

I guess this is a schema change in abe
try to run the abe update script:

Code:
python -m Abe.abe --config your_abe_config_file
hero member
Activity: 938
Merit: 1000
June 22, 2012, 06:22:28 AM
#45
Updated my server but go this while starting it back up.

Code:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error:
Traceback (most recent call last):
  File "/home/animazing/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.7/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  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
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")

Edited out the addresses but other then that it is as is. It also looks like my client might be stuck synchronizing.

Should I worry about this?

Edit: I get the errors each time I want to connect to the server with my client.
legendary
Activity: 1896
Merit: 1353
June 22, 2012, 06:11:03 AM
#44
I made some changes to the server code this week:

- The server shuts itself down if it loses connection with the bitcoin daemon. This will prevent servers lagging in the past
- The server announces its version to clients. The current server version is tagged 0.1.
This version number will be used by future versions of the client; for example, the client will filter out servers that have not been upgraded after a critical bug has been fixed.
legendary
Activity: 1896
Merit: 1353
June 22, 2012, 05:29:20 AM
#43
this is not possible. the time a tx was first received depends on the server.
the correct way to sort transactions is to look at their inputs and outputs.

I think that's OK - in practice, transactions are spread fast enough that it won't differ by more than a few seconds, whereas blocks are often over 30 minutes apart.

no, there is no guarantee that different servers will configure their clock with the same time.

in addition, get_history will be extended, and it should be completely deterministic;
a hash of the history will be used to avoid the server resending the whole history everytime it changes.


Quote
I'm not sure if I understand how inputs/outputs can be used to sort transactions... could you expound?

when transactions are in the same block, they are logically ordered; you cannot spend coins before you receive them
newbie
Activity: 44
Merit: 0
June 22, 2012, 02:40:05 AM
#42
this is not possible. the time a tx was first received depends on the server.
the correct way to sort transactions is to look at their inputs and outputs.

I think that's OK - in practice, transactions are spread fast enough that it won't differ by more than a few seconds, whereas blocks are often over 30 minutes apart.

I'm not sure if I understand how inputs/outputs can be used to sort transactions... could you expound?
legendary
Activity: 1896
Merit: 1353
June 22, 2012, 02:04:58 AM
#41
In the server response to "blockchain.address.get_history" commands, a transaction's timestamp is set to the time it was included in a block (or 0 while it's in the mempool). This makes it impossible for a client to correctly sort transactions which occurred while the it wasn't connected to the server, and adds a lot of complexity to correctly sorting those which occur when it's connected.

Could the server be updated to report the time a transaction was first received, either instead of the current timestamp value (as the blockchain.info API does) or in another field?

I can provide a patch if you let me know which of these is preferred, ThomasV.

this is not possible. the time a tx was first received depends on the server.
the correct way to sort transactions is to look at their inputs and outputs.
newbie
Activity: 44
Merit: 0
June 21, 2012, 05:22:08 PM
#40
In the server response to "blockchain.address.get_history" commands, a transaction's timestamp is set to the time it was included in a block (or 0 while it's in the mempool). This makes it impossible for a client to correctly sort transactions which occurred while the it wasn't connected to the server, and adds a lot of complexity to correctly sorting those which occur when it's connected.

Could the server be updated to report the time a transaction was first received, either instead of the current timestamp value (as the blockchain.info API does) or in another field?

I can provide a patch if you let me know which of these is preferred, ThomasV.
newbie
Activity: 11
Merit: 0
June 20, 2012, 09:08:59 PM
#39
I shutdown electrum, ran the SQL query it suggests and restarted it.  Now I can't connect to the server and the logs are empty except for: 'Starting Electrum server on btcback.com'.  I'm assuming it takes just takes a long time to re-scan the blockchain.

It's faster if you run
Code:
abe --config  --no-serve
than letting the electrum server take care of the import.

So its re-importing everything?  Guess btcback.com will be down for a couple of days :/


EDIT:

Switched to Abe and it looks like is wasn't re-importing everything.  Should be back up as soon as I find out who's been winning at Satoshi Dice over the past couple of weeks Smiley
hero member
Activity: 668
Merit: 501
June 20, 2012, 07:57:05 PM
#38
watching
jr. member
Activity: 53
Merit: 2
June 20, 2012, 07:40:18 PM
#37
I shutdown electrum, ran the SQL query it suggests and restarted it.  Now I can't connect to the server and the logs are empty except for: 'Starting Electrum server on btcback.com'.  I'm assuming it takes just takes a long time to re-scan the blockchain.

It's faster if you run
Code:
abe --config  --no-serve
than letting the electrum server take care of the import.
newbie
Activity: 11
Merit: 0
June 20, 2012, 07:22:19 PM
#36
Hi all.  I'm the operator of btcback.com.  I just upgraded bitcoind/electrum and have been getting tons of errors along these lines:

ERROR:Abe.DataStore:Chain not found for magic number '\xfb\x89\xa4\x03' in block file /home/bitcoind/.bitcoin/blk0001.dat at offset 1612760166.  If file contents have changed, consider forcing a rescan: UPDATE datadir SET blkfile_number=1, blkfile_offset=0 WHERE dirname='/home/bitcoind/.bitcoin'

I shutdown electrum, ran the SQL query it suggests and restarted it.  Now I can't connect to the server and the logs are empty except for: 'Starting Electrum server on btcback.com'.  I'm assuming it takes just takes a long time to re-scan the blockchain.


Before I started that, I was also getting a different error about a missing column in the db:
OperationalError: (1054, "Unknown column 'last_value' in 'field list'")
error: sql error: 1MUbXxCYa3W2Q6YMrrQcNQDz8kaGftwXkq
Traceback (most recent call last):
  File "/home/bitcoind/src/electrum/server/backends/abe/__init__.py", line 87, in safe_sql
    ret = self.selectall(sql,params)
  File "/usr/local/lib/python2.6/dist-packages/Abe/DataStore.py", line 510, in _selectall
    store.sql(stmt, params)
  File "/usr/local/lib/python2.6/dist-packages/Abe/DataStore.py", line 412, in sql
    store.cursor.execute(cached, params)
  File "/usr/lib/pymodules/python2.6/MySQLdb/cursors.py", line 166, in execute
    self.errorhandler(self, exc, value)
  File "/usr/lib/pymodules/python2.6/MySQLdb/connections.py", line 35, in defaulterrorhandler
    raise errorclass, errorvalue

Any thoughts on that one?
jr. member
Activity: 53
Merit: 2
June 18, 2012, 04:00:27 PM
#35
When I connect to electrum.novit.ro, I seem to get all of my transactions (up to today's).

When I connect to ecdsa.org, I get transactions up to two days ago (Jun 16th), although I didn't make any yesterday, so it might just be today's that are missing.

When I connect to uncle-enzo.info, I get transactions up to four days ago (Jun 14th).

When I connect to btcback.com, I get transactions up to ~two weeks ago (Jun 3rd).

This does not inspire confidence in the status of the Electrum servers... what could be causing the issues?

I hadn't noticed that. I'm rebooting the server and importing all the missing transactions.
legendary
Activity: 1896
Merit: 1353
June 18, 2012, 01:36:17 PM
#34
When I connect to electrum.novit.ro, I seem to get all of my transactions (up to today's).

When I connect to ecdsa.org, I get transactions up to two days ago (Jun 16th), although I didn't make any yesterday, so it might just be today's that are missing.

When I connect to uncle-enzo.info, I get transactions up to four days ago (Jun 14th).

When I connect to btcback.com, I get transactions up to ~two weeks ago (Jun 3rd).

This does not inspire confidence in the status of the Electrum servers... what could be causing the issues?

I agree. The server is now my top priority.
newbie
Activity: 44
Merit: 0
June 18, 2012, 12:11:25 PM
#33
When I connect to electrum.novit.ro, I seem to get all of my transactions (up to today's).

When I connect to ecdsa.org, I get transactions up to two days ago (Jun 16th), although I didn't make any yesterday, so it might just be today's that are missing.

When I connect to uncle-enzo.info, I get transactions up to four days ago (Jun 14th).

When I connect to btcback.com, I get transactions up to ~two weeks ago (Jun 3rd).

This does not inspire confidence in the status of the Electrum servers... what could be causing the issues?
Pages:
Jump to: