- 05 Jul, 2018 4 commits
-
-
Christopher Ferris authored
FAB-11007 Change-Id: I0ca2df7e20d8d1fb7c9b9f3a29f95e7834fc1b25 Signed-off-by:
Christopher Ferris <chrisfer@us.ibm.com> (cherry picked from commit 77c3aa6ce5b0cfba93bfda009095886dbcadff91)
-
Artem Barger authored
-
Artem Barger authored
-
Artem Barger authored
-
- 04 Jul, 2018 2 commits
-
-
nirro authored
Change-Id: I1fba649304c3363303aff3c21bb55d99e99ded67 Signed-off-by:
nirro <nirro@il.ibm.com>
-
Christopher Ferris authored
-
- 03 Jul, 2018 10 commits
-
-
yacovm authored
When incorrect commandline arguments are passed, the output is directed to stdout instead of stderr. This change set fixes this, and also makes sub-commands that return error to terminate with error code of 1 instead of 0. Change-Id: I3e9c2172d91b25829e5b9c81aa3e812a205c9cf5 Signed-off-by:
yacovm <yacovm@il.ibm.com>
-
Gari Singh authored
We should upgrade anyway, but https://github.com/grpc/grpc-go/pull/2045 prevents the use of proxies such as nginx from working with Fabric nodes. Change-Id: I3dc8af85ede23548f26c8fc38f984b94f6cc4e4b Signed-off-by:
Gari Singh <gari.r.singh@gmail.com>
-
Yacov Manevich authored
-
Jason Yellick authored
Many of the assorted 'utils' functions actually reach into the core/chaincode/platforms package to determine whether packages are valid. This historically has all been done in a source-coupled way, pulling peer details into places it does not belong. Although these 'util' functions should be refactored and removed, for the time being, we can at least make the dependency on the platforms package explicit, but requiring that an instance be passed into these util functions. This has quite the ripple throughout the code, but the CR itself should be trivial to review. Change-Id: I0cc36e2f307474ddba7f6d20028a46f3aa94faf5 Signed-off-by:
Jason Yellick <jyellick@us.ibm.com>
-
Jason Yellick authored
This CR deletes the old unit test which was using function pointers to add indirection in favor of using proper interfaces and mocks. The old test coverage was at 85%, while the new ginkgo-ized test coverage brings us to 100%. Change-Id: I2e309d239a6eb8f831a3528a4bbe7e4eddec19c8 Signed-off-by:
Jason Yellick <jyellick@us.ibm.com>
-
Gari Singh authored
-
Gari Singh authored
Latest version of goimports which is built as part of CI has an issue with orderer/common/server/main.go Change-Id: Icbdd2ecad5b5c8b092d57a595ff42fa813101758 Signed-off-by:
Gari Singh <gari.r.singh@gmail.com>
-
Gari Singh authored
-
Christopher Ferris authored
FAB-11007 fixed goimports error Change-Id: I5b73b1e478c9859c40d89a61b061a073f5b4fb92 Signed-off-by:
Christopher Ferris <chrisfer@us.ibm.com>
-
Gari Singh authored
-
- 02 Jul, 2018 24 commits
-
-
Jason Yellick authored
-
Jason Yellick authored
-
Jason Yellick authored
-
Jason Yellick authored
-
Jason Yellick authored
-
Yacov Manevich authored
-
Christopher Ferris authored
-
Gari Singh authored
* changes: [FAB-10954] data race core/comm/producer [FAB-9160] fix data race in TestRecoverFromError
-
Jason Yellick authored
-
yacovm authored
This change set adds support to the discovery service to filter channel membership queries according to endorsement capabilities. Now the client can pass invocation chains to the query, and the discovery service would only return peers that satisfy the invocation chain: 1) Peers that have chaincodes installed on them 2) Peers that are authorized by a given collection configuration This change set also enhances the golang client implementation with an ability to pass in the Peers() method - an invocation chain. To preserve backward compatibility as much as possible, the invocation chain is passed as a variadic parameter. Change-Id: I28b4bcd88d76a40e5dfcdeba467e1269dbdd0101 Signed-off-by:
yacovm <yacovm@il.ibm.com>
-
yacovm authored
This change set extracts the logic that deals with discovery endorsement peer filtering into a separate function, to be used by the discovery service core for filtering peers according to collections. As a result, the code that pre-filters principal sets according to MSP IDs is removed and the filtering is done implicitly at the time of layout construction (if no peers with the chaincode are installed for the given principal, the layout is filtered out in the isLayoutSatisfied() function). This removes the customly crafted MSPOfPrincipal method from existence. Change-Id: I89a3b5142a6893d84a8faf0b65e2fed36829bb7d Signed-off-by:
yacovm <yacovm@il.ibm.com>
-
Yacov Manevich authored
-
Artem Barger authored
-
Artem Barger authored
-
Matthew Sykes authored
Introduce a RWMutex to the memory backed ledger to enable concurrent use by tests. Change-Id: I964ee2d6ff0fe6e8369702477631e7c0e0251cbc Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
The event server starts a go routine to distribute events to registered handlers and the expired identity test reaches into the handler to force the identity associated with the handler to expire in the past. The current implementation expires the sessions and publishes a block to trigger the event processing without serialization and this is reported as a race. A mutex was added to serialize reads and updates of the expiration time. Although this is not strictly needed for the production code, it resolves the race without refactoring to introduce a fake clock or similar dependency. Change-Id: I0cefd847a6e564d81099e116d463bf22231b4fc3 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
When sending a message to a handler fails due to session timeout or some other transient failure, the channel range loop in the start method will cleanup the handler from the event processor. When the event server stream associated with a handler encounters an error, the server will cleanup the handler from the event processor. When the two things happen concurrently, two go routines will concurrently execute cleanup. This results in a concurrent map modification on the handler's interestedEvents map. In context, it doesn't appear that the map removal is needed as the handler's interests are being purged. Removing this processing resolves the race. Change-Id: I2383482c25a08dfa3045d696b7c20551fd9bc8ba Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
A data race was detected when running TestGenerateDockerBuild. The race was due to concurrent read/write of a bytes buffer used to capture the streaming output of the chaincode build container. The race can be avoided by closing the CloseWaiter returned by the attach call and waiting for the stream processing to close before reading the output. Change-Id: If34bb11f2a263733147cf2262f25a3617c27e342 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
Change the gossip pull engine to memoize the timeout configuration at construction instead of constantly retrieving it at runtime from viper. This resolves a race where TestUpdateRootsFromConfigBlock modifies the viper configuration causing a concurrent map modification race. Also add missing error assertions in TestUpdateRootsFromConfigBlock and update the formatting to be a bit more idiomatic. Change-Id: I094b7426e494bdcff00e156f9e804c58aceb9f06 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
Remove global testClientCert and testServerCert variables and use a struct to hold the certificate information for the tests. Also cleanup some formatting to a more idiomatic style. Change-Id: I1ca21e44fa72d457472ad98abd8f1d6b7d4147e5 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
TestUpdateEndpoints was modifying package scoped variables while all of the other tests were concurrently reading it. This is a race. Disabling parallel execution for this test. Change-Id: Ic3979ddba54685ced5ac9eb7111d0d3cf4b34053 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
Use a mutex around invocation counts in the mock support class. Change-Id: Ib558de1727929ea652aacfd3f74a60b7341b2d63 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
Clearing CurBatch after syncQueueMessage resulted in a race. Added a flag to the mock to skip the append to CurBatch instead of explicitly clearing it. Change-Id: Ie599c0d4953ae371904aec5bafd5dc43ff088a5d Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-
Matthew Sykes authored
The test performs explicit viper configuration before creating each test and the gossip discovery service was using viper to retrieve the configuration at runtime from go routines it spawns. Since viper does not synchronize access to its maps, this resulted in a race. The race is avoided by creating fields on gossipDiscoveryImpl to hold the timeout values, setting them during construction, and referencing the fields at runtime instead of viper. TestCreateChainFromBlock was also modified to address issues that prevented execution with `go test -count n`. Change-Id: I57331d81be8c24f2ed83362f4551c14747596498 Signed-off-by:
Matthew Sykes <sykesmat@us.ibm.com>
-