- 26 Oct, 2016 1 commit
-
-
Srinivasan Muralidharan authored
FAB-853 Ledger is removed from . core/peer/peer.go . core/rest/api.go Ledger package itself is removed. "ledgernext" is replaced with "ledger". Change-Id: Ie7dfbd9bf94afa0031aef759fc46929e4fb3b400 Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 24 Oct, 2016 1 commit
-
-
Srinivasan Muralidharan authored
Following skeletal end to end flow work, this submit takes the next steps for Endorser/Committer . converts chaincode and endorser to ledgernext . removes consensus package . chaincode unit tests use ledgernext . panics if ledger.GetLedger is called so we can catch codepaths that still use that. These are mainly core/api and core/peer . removes unit tests from core/api and core/ledger (to avoid GetLedger calls there) . created a minimal core/peernext. core/peer is still there for comparison but is not used Change-Id: I2627e0000e960e1aa66d27ff5ec60a38c4bb7eea Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 02 Oct, 2016 1 commit
-
-
Srinivasan Muralidharan authored
The main purpose of this checking . show commit followed by simulation in action . users can get a feel for the flow of the protocol across the different legs of the end-end path . identify key areas for attention (esp. grep for "!!IMPORTANT!!") "deploy and "invoke" Chaincode commands from CLI will also convert a successful proposal response into a transaction and send it to the Orderer (if configured in core.yaml). "query" is removed from CLI. Invoke can also return values now in ProposalResponse.Response.Payload. REST calls should not be affected and should work with old ledger. See core.yaml for default orderer setup. This also introduces a stop-gap "committer" whose only task is to commit blocks from the orderer. To test : 1. Terminal 1 - run the "solo" orderer cd fabric/orderer go build ./orderer 2. Terminal 2 - run the peer peer node start 1>/tmp/peer.out 2>&1 3. Terminal 3 - deploy and invoke take usual params peer chaincode deploy ... 1>/tmp/out 2>&1 peer chaincode invoke ... 1>/tmp/out 2>&1 /tmp/peer.out and /tmp/out will contain tell tale signs of the round trip in action. Change-Id: Ic1aa31993fc57ce145c39967d4d682fd2dc5704b Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 28 Sep, 2016 1 commit
-
-
Srinivasan Muralidharan authored
The ledgernext and kvledger packages provide APIs to simulate transactions by collecting read-write sets from invokes of chaincodes. This change set integrates this for the Endorser flows. The main purpose of this code is to enable read write sets to be propagated so end to end flow ending in a commit to the ledger can be tested. The chaincode unit tests continue to use the old ledger. This allows us to (1) incrementally integrate ledger and (2) show that the two packages can coexist from a build and runtime point of view. It is worth noting that the file kv_ledgers.go hosts a temporary container for ledgers. This simple approach is expected to be revised when (sub)ledgers are implemented. Change-Id: I6e0bf4b9795b83d2ae869244b212c02ef9b5214a Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 22 Sep, 2016 1 commit
-
-
Srinivasan Muralidharan authored
This patch is for https://jira.hyperledger.org/browse/FAB-181 , FAB-182. The patch is around endorser.go which implements the basic Endorser service. The "peer deploy ..." and "peer invoke .." CLI driver commands have been modified to redirected to use endorser.ProcessProposal instead of the original "devops" calls. The deploy, invoke (and query) CLI calls are unchanged in non-dev mode from user point of view - but for one difference. The response is a ProposalResponse. In dev mode (ie, when peer is started with --peer-chaincodedev) the deploy command would need to set "CORE_CHAINCODE_MODE=dev" in the "peer chaincode deploy ..." command. This is because, the command now computes the chaincode code just like the SDK as opposed to leaving it to be done by devops in the peer. Example CORE_CHAINCODE_MODE=dev CORE_LOGGING_LEVEL=debug ./peer chaincode deploy -n mycc -c '{"Args":["init","a","100","b","200"]}' Change-Id: Ie6e44cef880bfcbeb7619f135566a7dce9dcdbc2 Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 17 Sep, 2016 1 commit
-
-
Srinivasan Muralidharan authored
The life-cycle system chaincode (lccc) manages chaincodes for a chain in an endorser. The life-cycle is basically the "deploy", "upgrade", "stop" and "start" actions. This changeset provides the basic chaincode for creating the table of chaincodes and implements just the "deploy" command. This work will be developed till the basic endorser functions are fully implemented. This driver for this chaincode will be checked in the next changeset. NOTE - this change also fixes the limitation where only one system chaincode can be running at a time. This is part of the feature development of FAB-181, FAB-182, FAB-183. Change-Id: Iff36fee7c5b9a9ce4658910db73304a6bcd7e3d4 Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-