Limitations in IBM® Watson™ - Blockchain Service

Some known limitations with IoT Blockchain Service are documented along with possible solutions or workarounds.

High-rate transactions are rejected by IoT Blockchain Service.

Symptoms

You have been submitting blockchain transactions frequently and now IoT Blockchain Service is rejecting transactions.

Resolution

The sustainable blockchain transaction rate varies based on a number of factors. If you send data too quickly, it is possible to send data faster than your blockchain can process it. When this occurs, IoT Blockchain Service provides a limited ability to queue your data and send it on to the blockchain when the blockchain is available. If your transactions are being rejected, stop sending transactions for a short period of time to let your blockchain catch up, then resume sending transactions at a slower rate.

Our testing has shown that if you keep the transaction rate for your org at or below 1 transaction per second, using a blockchain without an additional load, this should be a sustainable transaction rate. You might be able to achieve a higher rate, depending on your blockchain fabric configuration.

Channel names must be unique within an IoT Blockchain Service organization.

Symptoms

You are using your IoT Blockchain Service organization to send transactions to two different blockchain fabrics, each of which is using the same channel name, and your transactions are not appearing in the correct blockchain.

IoT Blockchain Service requires unique channel names. Use of the same channel name such as "channel1", the default IBM Blockchain Platform Container Service channel, to connect to different blockchain fabrics might cause your IoT device or asset data to be stored in an incorrect blockchain.

Resolution

As a workaround, configure your blockchain fabrics to use different channel names. This limitation is expected to be removed in a future release.

IoT Blockchain Service UI might show a fabric that does not exist

Symptoms

You used the IoT Blockchain Service UI to load Hyperledger Composer Business Network cards, but also used Postman to configure IoT Blockchain Service. At some point you deleted a fabric definition from IoT Blockchain Service using Postman, but you still see the fabric definition in the IoT Blockchain Service UI.

Resolution

The IoT Blockchain Service UI gets a list of all routes, which also contain the name of the fabric definition associated with the route. If you deleted a fabric definition using Postman, but a route associated with that fabric still exists, you will still see an entry in the fabrics and routes table in the UI.