Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

The main goal of the project is to create a documented Iroha (1.x) package for the Cactus project, which demonstrates the interoperability between Iroha and Cactus. The project also includes 3 documented examples of integration between Iroha and Cactus, and 2 documented examples of integration between Iroha and Fabric. The documentation will benefit the community so that people can understand this project.

...

MentorMentorMentee

Peter Somogyvari

PDT (UTC-7)

peter.somogyvari@accenture.com

Grzegorz Baz

CEST (UTC+2)

g.bazior@yodiss.pl

Han Xu

EST (UTC-5)

hongkexuhan@gmail.com

...

Recommendations for future work:

...

Iroha connector plugin

...

  1. Improve the JS library. The JS library gives “undefined” as output. It would be better for us to do the testcases if it outputs tx status and tx hash. (Right now, I used iroha-helper-ts, but it could be further optimized)

...

  1. Upgrade Iroha version. Currently, using Iroha v1.2.0, should be upgraded to improve Iroha’s performance
  2. Although the current healthcheck mechanism works fine, it enlarges the docker image by ~100MB. The Iroha docker image could be shrinked once the Iroha team introduces the grpc healthcheck/ once the Iroha team make metrics page an option for v1.2.2.
  3. Potentially, the Postgres database docker instance could be replaced by RocksDB ( needs just one folder - it should be docker volume - to keep data between different runs of image.)

...

CategoryCurrent implementationExpected improvements

Iroha connector plugin

1 Call Engine is left as not implemented. (made the commit rejected within the ledger, and thus rejected in the test case.



2 SetSettingValue is left as not implemented. (returned http 405 Error)



3 removePeer is left as not implemented because a valid Iroha testnet is required to use this function.

4 fetchCommits is left as not implemented. It could be implemented as something similar to Besu connector's WatchBlockV1.

5 There is a problem with producing a pending transaction, the code will get stuck and fail the test suite. Peter looked into this issue, but seems like Iroha ledger itself is struggling to generate the pending transaction. (https://jira.hyperledger.org/browse/IR-1010)
Iroha-Javascript library

1 Improve the JS library. The JS library gives “undefined” as output. It would be better for us to do the testcases if it outputs tx status and tx hash. (Right now, I used iroha-helper-ts, but it could be further optimized)


Iroha docker container
Upgrade Iroha version. Currently, using

1 The test cases rely on a modified Iroha v1.2.0

,

all-in-one (AIO) docker image.

Iroha version should be upgraded to improve
Iroha’s
Iroha ledger's performance
  • )
  • .

    2 Embedded Iroha Python SDK inside the Iroha AIO docker image. Although the current healthcheck mechanism works fine, it enlarges the docker image by ~100MB. 

    The Iroha docker image could be shrinked once the Iroha team introduces the grpc healthcheck/ once the Iroha team make metrics page an option for v1.2.2.

    3 Each Iroha docker container relies on a corresponding Postgres database container to store information. 
    Potentially, the
    The Postgres database docker
    instance
    container could be replaced by RocksDB ( needs just one folder - it should be docker volume - to keep data between different runs of image.)
    Documentation
    1. For docs/source/support/iroha.md, Updating the test link to be a valid link once the current Iroha PR gets merged/released.