Release 0.1.4
sidetree-fabric Release Notes - Aug 27, 2020
What's new in sidetree-fabric v0.1.4
This release is based on the Fabric 2.2 codebase. Along with various bug fixes, the following features were added:
Combine Monitor with Observer #312
The Monitor functionality is added to the Observer so that a separate Monitor is no longer necessary. The Observer now processes batches from block events (as before) and also runs periodically in order to ensure that all blocks are processed. Should processing fail due to a transient error then the block is retried at the next scheduled interval.
Standby Observer role #313
An Observer is active if it has the sidetree-observer role and standby if it has the sidetree-observer-standby role. A standby Observer becomes active when there are no 'alive' active Observers in the cluster. There may be multiple active Observers and multiple standby Observers, although, only one Observer can process any given block. The metadata has a new field, LeaseOwner, which specifies the endpoint of the peer that currently holds a lease to process a range of blocks. The lease is relinquished after all blocks (up to the current block height) have been processed, at which time a new lease owner is chosen for the next range of blocks (using a deterministic algorithm based on block number).
Discovery provider for service endpoints #328
The Discovery Provider manages the service endpoints available at each peer joined to a channel. It manages local service endpoints and uses Gossip to request endpoints from remote peers. The data from remote peers are cached with an expiration time. After expiration, a new Gossip request is broadcast to fetch the latest services.
Discovery endpoint handler #330
Add a discovery REST endpoint that returns the services hosted by the peers on a channel. The service allows clients to filter on service name, domain, HTTP method, API version, and path.
Switch BDD test to Fabric 2 capabilities #381
The channel capabilities were set to v2_0 and the BDD tests were updated to use chaincode lifecycle.
Fabric logging provider for sidetree-core logging #399
Sidetree-core logs are now integrated with the Fabric logger so that logging levels may be set using the standard Fabric mechanism.