- 04 Dec, 2016 1 commit
-
-
manish authored
https://jira.hyperledger.org/browse/FAB-601 The height based versioning scheme assigns a version to the key equal to the height of the transaction that committed it last. The benefits include - 1) We do not need to maintain delete markers for the deleted keys 2) Makes recovery of state db easier, particularly for couchdb 3) Enables efficient validation - (in future - does not require validating against latest state has potential for in-memory validation) 4) Has potential for providing snapshot isolation across sharded data nodes in the future Change-Id: I5a079c9be5966c349b7bb6c8df6e1a45d9889f1f Signed-off-by:
manish <manish.sethi@gmail.com>
-
- 03 Dec, 2016 1 commit
-
-
Srinivasan Muralidharan authored
https://jira.hyperledger.org/browse/FAB-1256 DefaultChain was the chain that was holding together the flows through the fabric and was a place holder for full fledged chains implementation. We now remove that . force chainID to be passed through the system, top down . use the chainID as the ledgername (note the panic in GetLedger) Pending "join" support, the system still require a single ledger to be created but that is now created by specifying the chain at the top level (unit tests, CLI in "peer node start", etc). Once "join" is added, this scaffolding can be removed from CLI (the chaincode unit tests will likely continue to use it) when the complete chain initialization will be "peer join" configuration driven Change-Id: Ie3b64db4b9030a4cb695fb3e1075822b55a129d1 Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
- 02 Dec, 2016 8 commits
-
-
Srinivasan Muralidharan authored
-
Srinivasan Muralidharan authored
https://jira.hyperledger.org/browse/FAB-1252 Most of the changes are syntactical and are helped by go's strict type checking. The changes follow the simple change of bytes chainID to string chainID in protos/common/common.proto. Change-Id: Id25c009a8bff036098cee0491860907ce0daa02b Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
Jonathan Levi authored
-
Jonathan Levi authored
-
Jonathan Levi authored
-
Jonathan Levi authored
-
Greg Haskins authored
-
Alessandro Sorniotti authored
This change-set adds the call to VSCC to the committer's code path. There are still a few missing pieces that we can only address once LCCC is finalized (e.g. identify the right VSCC, extract policies). The change-set also contains a minor refactoring of the tx-assembly code as discussed with Manish. Change-Id: Ibf8807dbb2934dcf4929c3e1a3edd4e5ec9f40ea Signed-off-by:
Alessandro Sorniotti <ale.linux@sopit.net>
-
- 01 Dec, 2016 9 commits
-
-
Srinivasan Muralidharan authored
-
Srinivasan Muralidharan authored
-
Nao Nishijima authored
atomicbroadcast/ab.proto file which describes Protocol definition is not in orderer directory. ab.proto is in hyperledger/fabric/protos/ orderer. Change-Id: Ief6f9298d217786c8c50c82aeffa42f295a6abd7 Signed-off-by:
Nao Nishijima <Nao.nishijima@hal.hitachi.com>
-
manish authored
https://jira.hyperledger.org/browse/FAB-1201 Change-Id: I34f7f56887c25dae712188a50e8bdcd13ae619d2 Signed-off-by:
manish <manish.sethi@gmail.com>
-
Srinivasan Muralidharan authored
-
Jonathan Levi authored
-
Gari Singh authored
-
YACOVM authored
1) Changed gossip ports in some tests to be mutually exclusive. We suspect that sometimes the port stays open due to previous gossip tests running, so instead of setting port reUseAddress I decided to simply change the port numbers. 2) Made discovery tests parallel, reduced time from 12 to 4 seconds. Change-Id: I8b4bee12d619ee9763e77557675366a06cf86d46 Signed-off-by:
Yacov Manevich <yacovm@il.ibm.com>
-
Christopher Ferris authored
-
- 30 Nov, 2016 19 commits
-
-
Gregory Haskins authored
We need to create a tighter coupling between the build system and the resulting docker images to prevent make from over-optimizing steps away. Fixes FAB-1145 Change-Id: I50c7cdf98e173c88ff6722d6c28aeade7395428e Signed-off-by:
Greg Haskins <gregory.haskins@gmail.com>
-
Gregory Haskins authored
Change-Id: Ice1bf6eaacdd038254b6749ab44dfba2fcc2222b Signed-off-by:
Greg Haskins <gregory.haskins@gmail.com>
-
Gregory Haskins authored
Change-Id: I83b70af4143027b7e857869043b9bbe9a063f7a3 Signed-off-by:
Greg Haskins <gregory.haskins@gmail.com>
-
Gregory Haskins authored
We use two techniques: 1) the use of a minimal docker base (FROM scratch + busybox) 2) the use of a static binary ... to create a minimally sized image for 'peer' and 'orderer' Before this patch, these containers are approximately 1.4GB. After this patch, they are about 20MB-24MB. It isn't strictly necessary to include busybox. The main benefit is achieved simply by eliminating external dependencies in the golang binary using -static and then getting rid of all the bloat in the baseimage via "FROM scratch". However, in this mode the image is pathologically bare-boned. For instance, the image has to be launched using the exec-form '["peer", "node", "start"]' since there is no shell interpreter available to do the more natural "CMD peer node start". Further, any "docker exec" style debugging would be impossible. It is often helpful to jump into a container and poke around with tools like ifconfig, ping, netstat, etc. Enter busybox: We can create a basic unix environment with only a 5MB payload. This is impressive and is easily worth its weight in the image. However, the challenge isn't really justifying the utility of having busybox over saving 5MB as much as it is about how we will get it into the image. If the world were a monochrome x86_64, we could simply s/FROM scratch/FROM busybox and be done. However, we have to consider other multi $arch. To support this, we forgo the temptation to use FROM busybox and build busybox from source. On my 2011 Macbook Pro, this adds about 5 minutes to the build, at least on the first build. Subsequent builds utilize the cache in ./build and thus are no-ops. This is _just_ fast enough that I am not embarrassed to propose it for consideration. However, if this is perceived as a problem we do have alternatives. For instance, we could start distributing a multi-$arch busybox base (hyperledger/fabric-busybox:$arch), TBD. Change-Id: I4ed20a429c2cc2e72fd602b45c5c8dd5548bc995 Signed-off-by:
Greg Haskins <gregory.haskins@gmail.com>
-
Srinivasan Muralidharan authored
* changes: Remove rocksdb dependency Suppress logging output of the peer during unit-tests
-
Gari Singh authored
-
Jason Yellick authored
-
Binh Nguyen authored
-
Mari Wade authored
Add config option in core.yaml for history database to store the transaction history. The history database will be a queryable database such as CouchDB. The default will be false. If set to false, the transaction history will not be persisted in the history database. Move the ledger config directory up one level to ledger to be the config for state and history databases as well as any other ledger functionality that needs a config option. Change-Id: If4607047082b686dd903d8b3805362d0c05e1c64 Signed-off-by:
Mari Wade <mariwade@us.ibm.com>
-
Gabor Hosszu authored
-
Marko Vukolic authored
Currently sbft backlog automatically places a message from a replica in the backlog, if there is already in the backlog a message from that replica. This is wrong and makes the new test TestBacklogReordering fail. Change-Id: I4ae40552ad363e4005817e328857caee266588a2 Signed-off-by:
Marko Vukolic <mvu@zurich.ibm.com>
-
Srinivasan Muralidharan authored
https://jira.hyperledger.org/browse/FAB-1230 Orderer sets the stage for multichain by forcing brodcast and deliver clients to specify ChainID. The solo orderer provides a default chain called **TEST_CHAINID** to continue development with. It would have been easy to hard code **TEST_CHAINID** in the lower most utility calls to continue work - basically inside protos/utils/ functions. However, this changeset takes the next step fo moving to using multichain by exposing chainID in core APIs thus forcing higher layers to deal with chains. Currently these high layers are unit tests, CLI and SDK. CLI accepts chain ID via the "-C" param which when not provided defaults to **TEST_CHAINID**. Change-Id: I0d7894c8f17ce8fae6fe075c9865afae58499005 Signed-off-by:
Srinivasan Muralidharan <muralisr@us.ibm.com>
-
jiangyaoguo authored
Currently when peer stopes, DeliverService.stop will be blocked. So you can't use "ctrl+c" or "kill" to interrupt or stop peer. Because DeliverService use a unbuffered channel stopChan to send stop signal. When peer is a gossip.orgLeader, DeliverService don't receive from stopChan. So DeliverService.stop will block at "d.stopChan <- true". Fix the block bug and use a atomic flag to distinguash unexpected connection error and initiative stop. Change-Id: If2afd226c5b074e3b78157d84e2f267e741208aa Signed-off-by:
jiangyaoguo <jiangyaoguo@gmail.com>
-
Gabor Hosszu authored
-
Luis Sanchez authored
Subtask of FAB-890 When publishing to Kafka we have been relying on the topic only containing one partition (num.partitions = 1), and the default PartitionID (0) in the config lining up for a valid combination. This commit configures our producer PartitionID configured. Change-Id: Ibba476425a15aff9ff447afdfacbf4b77a41ce0c Signed-off-by:
Luis Sanchez <sanchezl@us.ibm.com>
-
Gari Singh authored
-
Gari Singh authored
-
Srirama Sharma authored
The JAVA SHIM is currently broken on architectures other than x86_64. Hence commenting it out for now. Also, using hyperledger/fabric-baseimage as base image for javaenv as it is generally applicacable to all platforms. Change-Id: I356428b84e85a409a3630af8909c940ef43e252f Signed-off-by:
Srirama Sharma <sriramsh@in.ibm.com>
-
Gabor Hosszu authored
-
- 29 Nov, 2016 2 commits
-
-
Gregory Haskins authored
The code no longer uses rocksdb, so lets remove the dependency. Fixes FAB-1054 Change-Id: If3e5fbf06f882fad77a84faeb6f0d29b938761a6 Signed-off-by:
Greg Haskins <gregory.haskins@gmail.com>
-
Luis Sanchez authored
Subtask of FAB-890 Changed newBroker to: - bootstrap from any of the bootstrap servers specifed. - return the leader for the topic/partition specified by config.Kafka.Topic and config.Kafka.PartitionID Added TestNewBrokerReturnsPartitionLeader unit test. Change-Id: Ib8b5de11c6822307aef6c127c5bd7074e18329ab Signed-off-by:
Luis Sanchez <sanchezl@us.ibm.com>
-