Skip to content

Commit 3c38d1a

Browse files
committed
Release commit for v3.1.0
Update docs and release notes for v3.1.0. Signed-off-by: David Enyeart <enyeart@us.ibm.com>
1 parent 4f14163 commit 3c38d1a

File tree

4 files changed

+46
-3
lines changed

4 files changed

+46
-3
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@
4646
# - verify - runs unit tests for only the changed package tree
4747

4848
UBUNTU_VER ?= 22.04
49-
FABRIC_VER ?= 3.0.0
49+
FABRIC_VER ?= 3.1.0
5050

5151
# 3rd party image version
5252
# These versions are also set in the runners in ./integration/runners/

docs/source/raft_bft_migration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
Nodes at v3.0.0 or higher allow for users who want to transition channels from using Raft-based ordering services to BFT-based ordering services.
44
This can be accomplished through a series of configuration update transactions on each channel in the network.
5-
To migrate, upgrade from version 2.x to version 3.0.0.
5+
To migrate, upgrade from version 2.x to version 3.x.
66

77
This tutorial will describe the migration process at a high level, calling out specific details where necessary.
88

docs/source/upgrading_your_components.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,7 @@ To learn how to upgrade your Fabric CA server, click over to the [CA documentati
215215

216216
## Upgrade SDK clients
217217

218-
SDK applications can be upgraded separate from a general upgrade of your Fabric network. The `Fabric Gateway client API <https://github.com/hyperledger/fabric-gateway>`_ has been tested with Fabric v2.5 and v3.0. If you have not yet migrated to the Fabric Gateway client API, you can `migrate <https://hyperledger.github.io/fabric-gateway/migration/>`_ while using a Fabric v2.5 network, or after you have upgraded to a Fabric v3.0 network. The legacy SDKs are no longer maintained and are not compatible with new v3.0 Fabric features such as SmartBFT consensus.
218+
SDK applications can be upgraded separate from a general upgrade of your Fabric network. The [Fabric Gateway client API](https://github.com/hyperledger/fabric-gateway) has been tested with Fabric v2.5 and v3. If you have not yet migrated to the Fabric Gateway client API, you can [migrate](https://hyperledger.github.io/fabric-gateway/migration) while using a Fabric v2.5 network, or after you have upgraded to a Fabric v3 network. The legacy SDKs are no longer maintained and are not compatible with new v3 Fabric features such as SmartBFT consensus.
219219

220220
## Upgrading CouchDB
221221

docs/source/whatsnew.rst

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,48 @@
11
What's new in Hyperledger Fabric
22
================================
33

4+
What's New in Hyperledger Fabric v3.1
5+
-------------------------------------
6+
7+
Performance optimization - Batching of chaincode writes
8+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
9+
10+
Chaincodes that write large numbers of keys were inefficient since each key write required communication between the chaincode and the peer.
11+
The new feature enables a chaincode developer to batch multiple writes into a single communication between the chaincode and the peer.
12+
A batch can be started by calling ``StartWriteBatch()``. The chaincode can then perform key writes as usual. Then when ``FinishWriteBatch()`` is called the writes
13+
will be sent to the peer. Batches over a configured size will be split into multiple batch segments.
14+
The batching approach significantly improves performance for chaincodes that write to many keys.
15+
Note that the batching only impacts the endorsement phase. The transaction itself, as well as the validation and commit phases, remains the same as previous versions.
16+
17+
The batch writes are configured with the following peer core.yaml chaincode properties:
18+
* ``chaincode.runtimeParams.useWriteBatch`` - boolean that indicates whether write batching is enabled on peer
19+
* ``chaincode.runtimeParams.maxSizeWriteBatch`` - integer that indicates the maximum number of keys written per batch segment.
20+
21+
The new feature requires chaincode to utilize fabric-chaincode-go v2.1.0 or higher.
22+
23+
Performance optimization - Batching of chaincode reads
24+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
25+
26+
Chaincodes that read large numbers of keys were inefficient since each key read required communication between the chaincode and the peer.
27+
The new feature enables a chaincode developer to batch multiple reads into a single communication between the chaincode and the peer.
28+
Utilize the new ``GetMultipleStates()`` and ``GetMultiplePrivateData()`` chaincode functions to perform the batch reads.
29+
Batches over a configured size will be split into multiple batch segments.
30+
31+
The batch reads are configured with the following peer core.yaml chaincode properties:
32+
* ``chaincode.runtimeParams.useGetMultipleKeys`` - boolean that indicates whether read batching is enabled on peer
33+
* ``chaincode.runtimeParams.maxSizeGetMultipleKeys`` - integer that indicates the maximum number of keys read per batch segment
34+
35+
The new feature requires chaincode to utilize fabric-chaincode-go v2.2.0 or higher.
36+
37+
Query all composite keys in a chaincode
38+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
39+
40+
A new chaincode function ``GetAllStatesCompositeKeyWithPagination()`` is available so that all composite keys within a chaincode can be retrieved.
41+
This function is useful when performing bulk operations on all composite keys in a chaincode.
42+
43+
The new feature requires chaincode to utilize fabric-chaincode-go v2.3.0 or higher.
44+
45+
446
What's New in Hyperledger Fabric v3.0
547
-------------------------------------
648

@@ -56,6 +98,7 @@ The release notes provide more details about each release.
5698
Additionally, take a look at the announcements about changes and deprecations that are copied into each of the latest release notes.
5799

58100
* `Fabric v3.0.0 release notes <https://github.com/hyperledger/fabric/releases/tag/v3.0.0>`_.
101+
* `Fabric v3.1.0 release notes <https://github.com/hyperledger/fabric/releases/tag/v3.1.0>`_.
59102

60103
.. Licensed under Creative Commons Attribution 4.0 International License
61104
https://creativecommons.org/licenses/by/4.0/

0 commit comments

Comments
 (0)