Counterpartyd v9.45.0 released & how to update

counterpartyd v9.45.0 has been released.


CHANGELOG for 9.45.0:

  • v9.45.0 (2014-10-23)
    • add dividend fee of 0.0002 XCP per recipient (protocol change: 330000)
This update has a lot of new code, but very little that touches the protocol on mainnet. Users will have to upgrade by block 330000 (about three weeks from now), however.

UPGRADE (example for Windows, upgrading from  v9.42.0 of counterpartyd)

Backup your wallet if you want.

1. Start bitcoind, allow it to catch up with the blockchain
2. Start elevated Windows command prompt
3. Upgrade (I use python 3.3.5.)
cd c:\counterparty_build
python setup.py update
4. Start counterpartyd and let it automatically reparse the DB:
counterpartyd server

INSTALL 

Those who are new to Counterparty can read the fine document:

http://counterparty.io/docs/build-system/build-from-source/

WARNING (example for Windows)

Right now when you start an older version of counterpartyd you’ll get reminded that you should upgrade before block 330000.

C:\Windows\System32>echo off
Status: Running v9.42.0 of counterpartyd.
Status: Connecting to database.
Status: Checking version.
C:\counterpartyd_build\dist\counterpartyd\lib\util.py:378: UserWarning: Your ve
sion of counterpartyd is v9.42.0, but, as of block 330000, the minimum version
s v9.45.0. Reason: ‘dividend fees’. Please upgrade to the latest version and re
tart the server.
  warnings.warn(explanation)
Status: Connecting to block explorer.
Status: Connecting to backend.
    • add dividend fee of 0.0002 XCP per recipient (protocol change: 330000)

Is there a technical reason for this, e.g. daily dividends for an asset would drain a lot of resources? 
Or is the fee meant to discourage spammers?


Is the fee burned or will it go to the dividend recipient?


    • add dividend fee of 0.0002 XCP per recipient (protocol change: 330000)

Is there a technical reason for this, e.g. daily dividends for an asset would drain a lot of resources? 
Or is the fee meant to discourage spammers?


Is the fee burned or will it go to the dividend recipient?

Presumably it is a spam prevention measure. Edit: Adam just wrote this in the Counterparty README.md: -

"There is a small fee per recipient with dividends, to prevent SPAM."

The fee is burned according to him: -

[23/10/2014 21:31:09] Equality 7-2521: Is that “dividend fee of 0.0002 XCP” burned? Presumably it is.
[23/10/2014 23:07:30] adamkrellenstein: @equality, yes.

+1

@something

I always dread the upgrades ...... I am using python 3.4.1 (on windows - http://counterparty.io/docs/build-system/build-from-source/) as per the counterparty docs and have updated as per the instructions but I am running into the following issues when attempting to start the daemon. I assume I am missing one of the dependencies ?? 

Traceback (most recent call last):
  ...
    ssl = ctypes.cdll.LoadLibrary(ctypes.util.find_library ('ssl') or 'libeay32
)
  File "C:\\Python34\\Lib\\ctypes\\__init__.py", line 429, in LoadLibrary
    return self._dlltype(name)
  File "C:\\Python34\\Lib\\ctypes\\__init__.py", line 351, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] The specified module could not be found


Ok. figured out the above.

Missing openssl dlls. A separate install for openssl is required to run counterpartyd

Did you download it from http://slproweb.com/download/Win32OpenSSL_Light-1_0_1j.exe  ??? If so, I can enhance the installation docs to add that as a prerequisite

Ok. figured out the above.

Missing openssl dlls. A separate install for openssl is required to run counterpartyd

Did you download it from http://slproweb.com/download/Win32OpenSSL_Light-1_0_1j.exe  ??? If so, I can enhance the installation docs to add that as a prerequisite

Yes, that’s what I installed

Ok. figured out the above.

Missing openssl dlls. A separate install for openssl is required to run counterpartyd

xnova:


While we are at it, I appear to be running into another issue. The prompt just stays at checking version and never moves past. Any idea?

Status: Connecting to database.
Status: Running v9.45.0 of counterpartyd.
Status: Checking version.

For those who didn’t read the Github issues related to SSL, these two may be necessary and new compared to a previous version (such as 9.42.0) on Windows.


This package Microsoft Visual C++ 2008 Redistributable Package (x86) may be necessary too:

For x64 the current OpenSSL binary package from the same site: http://slproweb.com/download/Win64OpenSSL_Light-1_0_1j.exe
The same Microsoft package but for SP1 and x64 architecture can be found here: http://www.microsoft.com/en-us/download/details.aspx?id=2092

Refer to http://slproweb.com/products/Win32OpenSSL.html for additional details.

The SSL requirement was added to counterpartyd in August 2014, but wasn’t added to counterpartyd_build for Windows.
https://github.com/CounterpartyXCP/counterpartyd/commit/ffde476f2969a3cac09198aae7da591a591de820
I probably had OpenSSL libs installed from another program on my Windows.

Another update for those who haven’t updated to Counterparty 9.45.0 yet:

  1. The current Federated Node installer (setup_federated_node.py) since 2 days ago contains a new version (actually the same version, but patched) of bitcoin.
  2. If you updated, you’re good (to go past block 330K).
    If you haven’t, once the blockchain hits the 330K mark, your counterpartyd 9.42.0 will stop working and you’ll have to update it in order to participate in the protocol network. Because the update installs a patched bitcoin-qt, you need to reindex your blockchain from the beginning, which takes many hours.
    (It is possible to un-install the patched bitcoind and install the stock bitcoind 0.9.2, but you may break your setup, otherwise its’ not harmful to use the non-patched version for now.)

counterpartyd users - because setup.py does not install Bitcoin-Qt - can update and keep using their existing version of bitcoin-qt.

What’s the deal with the patched version of bitcoind? It is required for the multisig functionality. Once Counterparty multisig goes live on the mainnet, everyone on it will have to have a patched bitcoind (with that specific addrindex patch).
It is recommended to install this patched version sooner rather than later (remember to backup your important data (especially if you have a non-empty wallet on your system) prior to doing this.

Some additional info about this procedure:
http://support.counterparty.io/support/solutions/articles/5000505729-counterparty-federated-node-and-counterpartyd-with-bitcoin-qt-and-addrindex-patch

Just a heads up: we’re at block 329662 as I write this and soon (@ 330,000) counterpartyd version 9.45.0 will be the minimum version supported. 

Since above post there’s been several updates so workarounds shouldn’t be necessary.

In case you get stuck upgrading you can move ~/counterpartyd_build to ~/counterpartyd_build.old and install from scratch.
Because the configuration and data files as well as wallets are by default in other locations, this should be safe.

Because counterpartyd needs to reparse the DB, it takes a fairly long time (on a slow PC maybe up to 30 minutes) for it to start the first time after upgrade. As long as you see the increased disk activity, it’s probably reparsing the DB so it’s best not to stop it until it’s very clear that it’s stuck.