Skip to content

Commit

Permalink
Add release notes for v1.4.8
Browse files Browse the repository at this point in the history
Signed-off-by: David Enyeart <enyeart@us.ibm.com>
  • Loading branch information
denyeart committed Jul 22, 2020
1 parent ae1395b commit 112c6d9
Showing 1 changed file with 80 additions and 54 deletions.
134 changes: 80 additions & 54 deletions release_notes/v1.4.8.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,49 @@
v1.4.8 Release Notes - XXXXXX, 2020
===================================
v1.4.8 Release Notes - July 21, 2020
====================================

Fixes
-----

- **FAB-XXXXX: Description**

Description
**Ordering Service: Check suspect info once per suspect interval when using Raft**

The raft-based ordering service node was checking to see if it was evicted too often.
This fix ensures that the ordering service node only checks once per suspect interval,
every 10 minutes by default.


Dependency updates
------------------
- Bump Go to XXXXX.
Bump Go to 1.13.12.
Bump Fabric baseimage to 0.4.21.
Fabric v1.4.8 has been tested with CouchDB v2.3.1.


Changes, Known Issues, and Workarounds
--------------------------------------

- **FAB-12134: Same chaincode source receiving fingerprint mismatch error** -
Chaincode installed in different ways may result in "chaincode fingerprint
mismatch data mismatch" error upon instantiation. This may happen when
installing chaincode by using different SDKs. To workaround the problem,
package the chaincode prior to installation and instantiation, by using
the "peer chaincode package" command.
**core.yaml chaincode.builder property updated to pull correct fabric-ccenv image**

The sample core.yaml configuration that gets included in fabric-peer docker
image now sets chaincode.builder property to ``$(DOCKER_NS)/fabric-ccenv:$(TWO_DIGIT_VERSION)``
instead of ``$(DOCKER_NS)/fabric-ccenv:latest``, since ``fabric-ccenv:latest`` tag
has been retired from dockerhub. This change ensures that v1.4.x peers using the default
configuration will pull the latest v1.4 fabric-ccenv image from dockerhub to build chaincode,
if the local fabric-ccenv image is not found.

**FAB-12134: Same chaincode source receiving fingerprint mismatch error** -
Chaincode installed in different ways may result in "chaincode fingerprint
mismatch data mismatch" error upon instantiation. This may happen when
installing chaincode by using different SDKs. To workaround the problem,
package the chaincode prior to installation and instantiation, by using
the "peer chaincode package" command.


Known Vulnerabilities
---------------------

- **FAB-8664: Peer should detect and react when its org has been removed**
This is a relatively low severity problem, because it requires a significant
conspiracy of network admins, but it will be addressed in a future release.
**FAB-8664: Peer should detect and react when its org has been removed**
This is a relatively low severity problem, because it requires a significant
conspiracy of network admins, but it will be addressed in a future release.


Resolved Vulnerabilities
Expand All @@ -43,58 +55,72 @@ Deprecations
------------
The following functions are deprecated and are targeted for removal in a future release.

- **Support for automatically vendoring the chaincode shim into user chaincodes**
**Support for automatically vendoring the chaincode shim into user chaincodes**

The fabric-ccenv image which is used to build chaincode, currently includes
the github.com/hyperledger/fabric/core/chaincode/shim ("shim") package.
This is convenient, as it provides the ability to package chaincode
without the need to include the "shim". However, this may cause issues in future
releases (and/or when trying to use packages which are included by the "shim").
In order to avoid any issues, users are advised to manually vendor the "shim"
package with their chaincode prior to using the peer CLI for packaging and/or
for installing chaincode.
For more details see FAB-5177.

**Support for CAR chaincode package format**

Support for packaging chaincode using the CAR format will be removed in
a future release.
For more details see FAB-14720.

**Support for specifying orderer endpoints at the global level in channel configuration.**

The fabric-ccenv image which is used to build chaincode, currently includes
the github.com/hyperledger/fabric/core/chaincode/shim ("shim") package.
This is convenient, as it provides the ability to package chaincode
without the need to include the "shim". However, this may cause issues in future
releases (and/or when trying to use packages which are included by the "shim").
In order to avoid any issues, users are advised to manually vendor the "shim"
package with their chaincode prior to using the peer CLI for packaging and/or
for installing chaincode.
For more details see FAB-5177.
Utilize the new 'OrdererEndpoints' stanza within the channel configuration of
an organization instead.
For more details see FAB-7559.

- **Support for CAR chaincode package format**
**Support for invoking system chaincodes from user chaincodes.**

Support for packaging chaincode using the CAR format will be removed in
a future release.
For more details see FAB-14720.
System chaincodes, for example QSCC, are intended to be invoked by
a client rather than by a user chaincode. Invoking from a user chaincode
may cause deadlocks.
For more details see FAB-15285.

- **Support for specifying orderer endpoints at the global level in channel configuration.**
**Support for user chaincodes to utilize the chaincode shim's logger via NewLogger()**

Utilize the new 'OrdererEndpoints' stanza within the channel configuration of
an organization instead.
For more details see FAB-7559.
Chaincodes that used the shim's NewLogger() will need to shift to their own preferred
logging mechanism.
For more details see FAB-15366.

- **Support for invoking system chaincodes from user chaincodes.**
**Support for peer's Admin service**

System chaincodes, for example QSCC, are intended to be invoked by
a client rather than by a user chaincode. Invoking from a user chaincode
may cause deadlocks.
For more details see FAB-15285.
The peer's Admin service exposes APIs such as GetLogSpec() and SetLogSpec().
Instead of using these services, utilize the HTTP operations service that was
introduced in v1.4.0.
For more details see FAB-15390.

- **Support for user chaincodes to utilize the chaincode shim's logger via NewLogger()**
**The 'Solo' consensus type is deprecated.**

Chaincodes that used the shim's NewLogger() will need to shift to their own preferred
logging mechanism.
For more details see FAB-15366.
With the introduction of Raft-based ordering service in v1.4.1, it is possible
to deploy a single-node (non-production) or multi-node
Raft-based ordering service with no external dependencies.
For single-node (non-production) ordering services, utilize Raft-based ordering
service with a single node instead of Solo ordering service.
For more details see FAB-15754.

- **Support for peer's Admin service**
**The 'Kafka' consensus type is deprecated**

The peer's Admin service exposes APIs such as GetLogSpec() and SetLogSpec().
Instead of using these services, utilize the HTTP operations service that was
introduced in v1.4.0.
For more details see FAB-15390.
The 'Raft' consensus type was introduced in v1.4.1 and has become the preferred
production consensus type. There is a documented and tested migration path from
Kafka to Raft, and existing users should migrate to the newer Raft consensus type.
For compatibility with existing deployments, Kafka is still supported,
but may be removed entirely in a future release.
Additionally, the fabric-kafka and fabric-zookeeper docker images are no longer updated, maintained, or published.

- **Support for Solo ordering service**
**fabric-couchdb docker image no longer updated, maintained, or published**

With the introduction of Raft-based ordering service in v1.4.1, it is possible
to deploy a single-node (non-production) or multi-node
Raft-based ordering service with no external dependencies.
For single-node (non-production) ordering services, utilize Raft-based ordering
service with a single node instead of Solo ordering service.
For more details see FAB-15754.
The fabric-couchdb docker image will no longer be updated, maintained, or published.
Users can utilize the official CouchDB docker image maintained by the Apache CouchDB project instead.


Change log
Expand Down

0 comments on commit 112c6d9

Please sign in to comment.