264 Commits

Author SHA1 Message Date
Christian Sailer
ba743985ad
Switch perf test CorDapp to the new finality flow API. (#1570)
ENT-2754 Switch perf test CorDapp to the new finality flow API.
2018-11-19 18:25:05 +00:00
Michele Sollecito
a22344b330
[ENT-2722]: Make support tool usable with installations where config and Corda JAR are separated (#1573) 2018-11-19 15:22:23 +00:00
Mike Hearn
9594aea9f7 Merge remote-tracking branch 'open/master' into mike-merge-4d2d9b83 2018-11-16 16:43:20 +00:00
Shams Asari
7696a570d1 Merge fixes 2018-11-14 18:50:29 +00:00
Shams Asari
2e9d7ce811 CORDA-2129: Ported changes in SingleThreadedStateMachineManager to MultiThreadedStateMachineManager
Introduced a new FlowFrameworkTestsUsingMultithreadedSMM test class to test the changes. In the process extracted out the multiple test classes in FlowFrameworkTests.kt.
2018-11-12 10:44:40 +00:00
Shams Asari
4801942a87 Merge branch 'merge-99e9864' into os-merge-99e9864
# Conflicts:
#	.gitignore
#	.idea/codeStyles/Project.xml
2018-11-09 14:53:26 +00:00
Shams Asari
8442b13e5e Un-ignoring .idea/codeStyles/ to make merge possible 2018-11-09 14:48:08 +00:00
Stefano Franz
99e9864975
add kotlin 1.3 codestyle to git (#4204) 2018-11-09 09:38:41 +00:00
szymonsztuka
44dfa23ad5 Merge remote-tracking branch 'remotes/open/master' into merges/os-merge-to-ecbf23a 2018-11-07 18:17:29 +00:00
szymonsztuka
19510315b4 Merge remote-tracking branch 'remotes/open/master' into merges/os-merge-to-6f00560
# Conflicts:
#	core/src/test/kotlin/net/corda/core/crypto/CryptoUtilsTest.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/InternalMockNetwork.kt
2018-11-07 09:49:23 +00:00
Konstantinos Chalkias
da8dec0d63
[CORDA-2192] Corda specific OID for AliasPrivateKey (#4175) 2018-11-07 09:48:13 +00:00
Konstantinos Chalkias
106eb9df4a
[CORDA-2011] [CORDA-2057] CryptoService interface and BC HSM simulation (#4099) 2018-11-06 12:57:13 +00:00
Christian Sailer
4d335843b2 Remove blank line and formatting 2018-11-06 11:27:18 +00:00
Michele Sollecito
db36709eab Merge remote-tracking branch 'remotes/open/master' into merges/29_10_2018_13_40
# Conflicts:
#	.idea/compiler.xml
#	node/src/main/kotlin/net/corda/node/internal/NodeStartup.kt
2018-10-29 13:45:47 +00:00
Michele Sollecito
28dd3ac873
[CORDA-1778, CORDA-1835]: Decoupled configuration parsing mechanism (#4093) 2018-10-25 16:45:14 +01:00
szymonsztuka
e56d84fd5d Merge OS -> ENT 2018-10-21 21:57:37 +01:00
Thomas Schroeter
f685df46b5
[ENT-1774] FlowAsyncOperation deduplication ID (#4068) 2018-10-19 11:40:59 +01:00
Katelyn Baker
7cfd44e383
CORDA-2113 - Include PNM ID in CSR (#4086)
* CORDA-2113 - Include PNM ID in CSR

If Compatibility Zone operator is using private networks and the node
should be joining one, optionally the ID (a UUID) of that network can be
included as part of the node's CSR to to the Doorman.

* fix broken test
2018-10-18 15:39:42 +01:00
Shams Asari
9b6eb02bab Merge fixes 2018-10-15 13:51:18 +01:00
Thomas Schroeter
70e24b79fb
Thomas/ent 2510 single column index (#1431) 2018-10-12 15:11:10 +01:00
Andrius Dagys
504cefc6f6 CORDA-535: Move MySQL notary into a separate module 2018-10-10 16:07:16 +01:00
Andrius Dagys
b7d59785e7 Merge remote-tracking branch 'open/master' into andrius/merge-10-10 2018-10-10 10:45:21 +01:00
Andrius Dagys
9ebeac1ad8
CORDA-535: Extract notary implementations into CorDapps (#3978)
* Move Raft and BFT notaries into separate modules

* Move schemas

* Fix tests & demos

* Modified logic for creating notary services:

Added a new field 'className' to the notary configuration. The node now
loads the specified implementation via reflection. The default className
value points to the simple notary implementation for backwards compatibility.
Relevant schemas are loaded in a similar fashion.

For backwards compatibility purposes the default SimpleNotaryService will
remain built-in to node, but its cordapp will be generated on startup – so
the loading of notary services is streamlined.

* Move test namedcache factory to test utils
2018-10-10 10:04:22 +01:00
Chris Rankin
96597ba084 Merge commit '1c7dfd4b7b310e86b8aa973b8350487ba63c08b1' into chrisr3-os-merge 2018-09-13 11:06:52 +01:00
Thomas Schroeter
057ee74611
Single node notary thread safety (#3924) 2018-09-12 13:36:04 +01:00
Christian Sailer
bc330bd989
ENT-2414 Named caches (#3848)
* Add named caches and apply to NonInvalidingUnboundCache and all usages.

* Add named caches and apply to NonInvalidingCache and all usages.

* Add named caches and apply to NonInvalidingWeightBasedCache and all usages.

* Move NamedCache to core/internal

* Remove type `NamedCache` and `NamedLoadingCache`

* Suppressed 'name not used' warning, added comment, and fixed generic parameters on the buildNamed functions.

* Use `buildNamed` in all caffeine instances in production code. Not using it for caches that are created in test code.

* Add checks for the cache name

* Formatting

* Minor code review revisions
2018-08-24 17:17:22 +01:00
szymonsztuka
c7f666102f Fixes after merge remote-tracking branch 'remotes/open/master' into szymonsztuka/os-merge-20180824 2018-08-24 12:27:47 +01:00
Tommy Lillehagen
acd3f44181 Merge remote-tracking branch 'open/master' 2018-08-23 13:55:11 +01:00
Anthony Keenan
bcfadfeebf
CORDA-1833: Create a picocli base class (#3826)
* Add shell extensions to CLI utils class and move into its own module

* Fix issue with completion script generation and slight refactor

* Fix autocompletion for logging level

* Delete uneeded comment

* More tidying up

* Make run function final

* Fixed an issue with the program being run twice.

* Address review comments
2018-08-22 21:51:25 +01:00
Tommy Lillehagen
d2ef16cbfd
Deterministic JVM (#3386)
* CID-251 - Deterministic JVM

* CID-251 - Add DJVM documentation

* CID-251 - Address review comments from @chrisr3

* CID-251 - Address further review comments from @chrisr3

* CID-251 - Use shadowJar to generate fat JAR

* CID-251 - Address review comments from @exFalso

* CID-251 - Improve naming in ReferenceMap

* CID-251 - Add test for Kotlin meta-class behaviour

* CID-251 - Address review comments from @shamsasari

* CID-251 - Add description of high-level flow

* CID-251 - Refactoring

* CID-251 - Rename package to net.corda.djvm

* CID-251 - Include deterministic-rt.jar as runtime dependency

* CID-251 - Add Gradle task for generating whitelist from deterministic rt.jar

* CID-251 - Error messages for StackOverflow/OutOfMemory, update whitelist

* CID-251 - Reduce set definition of pinned classes

* CID-251 - Tidy up logic around pinned classes

* CID-251 - Shade ASM dependency and split out CLI tool

* CID-251 - Address review comments from @mikehearn (part 1)

* CID-251 - Address review comments from @mikehearn (part 2)

* CID-251 - Address review comments from @mikehearn (part 3)

* CID-251 - Address review comments from @exFalso

* CID-251 - Address review comments from @mikehearn (part 4)

* CID-251 - Address review comments from @exFalso and @mikehearn

* CID-251 - Address review comments from @mikehearn (part 5)
2018-08-22 16:01:39 +01:00
Chris Rankin
a287673432 Merge commit 'ff62df8d5a0ab9eabfe919b65a8c73baa3dca7f3' into chrisr3-os-merge
Conflicts:
	finance/src/main/kotlin/net/corda/finance/contracts/asset/cash/selection/CashSelectionSQLServerImpl.kt
	node/src/main/kotlin/net/corda/node/NodeArgsParser.kt
	node/src/main/kotlin/net/corda/node/internal/NodeStartup.kt
	node/src/main/kotlin/net/corda/node/services/vault/NodeVaultService.kt
2018-08-20 15:46:20 +01:00
Christian Sailer
9a3b1629a2
ENT-2414 Cache trace capture (#1337)
* Naive implementation of a trace capturing wrapper.

* Thread-safe cache tracing wrapper using a queue

* Use sipHash to get a long representing secure hash

* Code review rework

* Add copyright headers

* Move config back to enterprise config and remove trace name from CacheTracingConfig so it can be injected when the cache is created.
Add defaults to reference.conf
Add code and test to create directories when required.

* Remove empty line

* Sort out writer thread

* Blank line

* Revert: Code review rework (892911a)
2018-08-17 17:28:28 +01:00
Stefano Franz
fffa063803
Cli backwards compatibility testing (#3733)
* first pass at infrastructure around cli compatibility

* add example unit test

* inspect enum types

* add a basic unit test to verify behaviour of the cli checker

* revert root build.gradle
2018-08-16 15:44:40 +01:00
Shams Asari
9acb6d8a55 Merge fixes 2018-07-31 15:02:58 +01:00
Shams Asari
f04e73352d Merge branch 'os-merge-point' into os-merge-93bb24e
# Conflicts:
#	CONTRIBUTORS.md
#	node/build.gradle
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/internal/Node.kt
#	node/src/test/kotlin/net/corda/node/messaging/InMemoryMessagingTests.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/InternalTestUtils.kt
2018-07-31 14:52:53 +01:00
cburlinchon
0e807a2c3c
ENT-2353 - Flow Worker (#1307)
* Basic flow worker and serviceHub
2018-07-30 17:23:00 +01:00
Shams Asari
93bb24ed17
Internal mock node clean up (#3715)
* InMemoryMessagingNetwork.InMemoryMessaging renamed to MockNodeMessagingService and moved to internal package
* start method added to MockNodeMessagingService which enables AbstractNode to call makeMessagingService in its c'tor
* Removed TopicStringValidator as it's no longer used
* Clean up of TestStartedNode
* Merged InMemoryMessagingTests into InternalMockNetworkTests as it's testing InternalMockNetwork
2018-07-30 10:35:03 +01:00
Viktor Kolomeyko
2a61baa5df
ENT-2293: POC work for RPC Worker (#1300)
* ENT-2293: Skeleton of the new "rpcWorker" module

* ENT-2293: Add first failing test
(RPC server has not been implemented or started yet)

* ENT-2293: Further progress to start RPC server (unfinished)

* ENT-2293: RPC server started to work.

* ENT-2293: Slim down RpcWorker.

* ENT-2293: Minor changes.

* ENT-2293: Minor refactoring

* ENT-2293: Expand test coverage.

* ENT-2293: Introduce PicoCli for command line parsing.

* ENT-2293: Changes to make RPC server actually start.

* ENT-2293: Create simple RPC client.

* ENT-2293: Initialize serialization outside of RpcWorker.
2018-07-27 11:02:07 +01:00
Christian Sailer
8027a11420
ENT-1993 Simplified notary healthcheck tool (#1286)
* Moved notary healthcheck

* Rename directories and fix up build

* Moved notary healthcheck to tools

* Fix up gradle files and move long running tests to integration-test

* Add copyright headers

* Remove obsolete resource

* Break up large `call()` function, move helpers to be private in companion object

* Move ScheduledCheckFlow to its own file

* Docs etc.

* Code review: Replace magic literals by constants, enums, etc.

* Delete Readme.md (the content will be available in documentation)

* Slight refactoring of the handling flows.

* Publishing

* Fix test

* Add missing artifactory dependency

* Small documentation fixes

* Typo
2018-07-24 14:41:31 +01:00
Viktor Kolomeyko
8c103d4247
ENT-2261: Systematic integration test for FlowProcessing (#1278)
* ENT-2261: Skeleton of parameterized test.

* ENT-2261: Programmatically compose rules and install them.

* ENT-2261: Separate counter decrement from termination.

* ENT-2261: Extend coverage to "executePersistCheckpoint".

* ENT-2261: Extend coverage to "ClientMessageImpl.acknowledge()"

* ENT-2261: Extend coverage to "RPCServer.context()"

* ENT-2261: Extend coverage to "ActionExecutorImpl.executeReleaseSoftLocks()" (unfinished)

* ENT-2261: Re-structure test data slightly.
"executeReleaseSoftLocks" seems to be failing.

* ENT-2261: Correct expectations in terms of number of transactions that ought to be produced.

Also use "eventually" construct to cater for node restart which may take some time.

* ENT-2261: Incorporate feedback from @exFalso and use polling approach.

* ENT-2261: Additional debug output.

* ENT-2261: Further expand coverage to RPCServer.context()

Also tighten-up assertion checks.

* ENT-2261: Further expand coverage to ActionExecutorImpl.executeCreateTransaction()

* ENT-2261: Further expand coverage to ActionExecutorImpl.executeRemoveCheckpoint()

* ENT-2261: Further expand coverage to ActionExecutorImpl.executePersistDeduplicationIds() and ActionExecutorImpl.executeCommitTransaction()

* ENT-2261: Revert non-material change.
2018-07-18 13:18:01 +01:00
Anthony Keenan
857ed1897a CORDA-1712 - Make documentation clearer for Network Bootstrapper (#3504) 2018-07-09 17:38:31 +01:00
Shams Asari
0c8c914882 Removing warnings 2018-07-05 15:45:28 +01:00
Shams Asari
20a589d66d Merge remote-tracking branch 'open/master' into os-merge-244167d
# Conflicts:
#	docs/source/example-code/src/main/kotlin/net/corda/docs/FlowCookbook.kt
#	docs/source/example-code/src/main/kotlin/net/corda/docs/LaunchSpaceshipFlow.kt
#	docs/source/example-code/src/main/kotlin/net/corda/docs/tutorial/tearoffs/TutorialTearOffs.kt
#	docs/source/running-a-node.rst
#	experimental/behave/build.gradle
#	experimental/behave/src/scenario/kotlin/net/corda/behave/scenarios/helpers/Substeps.kt
#	experimental/kryo-hook/build.gradle
#	experimental/quasar-hook/build.gradle
#	node/src/integration-test/kotlin/net/corda/node/AuthDBTests.kt
#	node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt
#	node/src/test/java/net/corda/node/services/vault/VaultQueryJavaTests.java
#	node/src/test/kotlin/net/corda/node/internal/NodeTest.kt
#	node/src/test/kotlin/net/corda/node/services/messaging/ArtemisMessagingTest.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/HibernateConfigurationTest.kt
#	samples/attachment-demo/src/integration-test/kotlin/net/corda/attachmentdemo/AttachmentDemoTest.kt
#	samples/irs-demo/src/integration-test/kotlin/net/corda/test/spring/SpringDriver.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/NodeBasedTest.kt
2018-07-04 18:38:34 +01:00
Shams Asari
244167d3e9
Enabled warnings as errors (#3514) 2018-07-04 17:17:27 +01:00
Shams Asari
3046843d40
CORDA-1602: Added cmd line flags to the network bootstrapper (#3419)
The list of CorDapps jars is no longer passed in via the cmd line but is now expected to be placed in the bootstrapped directory.

Ended up being a bit of a refactor to cater for unit testing, and also tidied up the bootstrapper docs.
2018-06-23 11:36:10 +01:00
Andras Slemmer
013f1a3cb6 Remove verify-enclave 2018-06-22 10:31:00 +01:00
rick.parker
cb810f0660 Merge remote-tracking branch 'remotes/open/master' into parkri-os-merge-20180613-1
# Conflicts:
#	.idea/compiler.xml
#	build.gradle
#	docs/source/changelog.rst
#	node/src/test/kotlin/net/corda/node/services/config/NodeConfigurationImplTest.kt
2018-06-13 11:13:43 +01:00
Stefano Franz
66294df34f
add experimental bootstrapper (#3009)
* add experimental bootstrapper

(cherry picked from commit 63665d1)

refactor code to be less Azure Specific
Use node classes for notaries

add local docker backend

move to tools directoy

apply fixes for local docker RPC admin port

add extraParams field to context to allow dynamic backend selection

begin refactor to move all common node/notary functionality into single implementations

node and notaries now share the same code path as much as possible.

refactor network building logic into api class

port Main.kt to use new networkbuilder api

add gui

fix issues with local docker ports not being exposed on localhost

make push and instantiate async operations

add ability to "add" a node after network has been built to gui

tidy up backend selection via command line and GUI

allow region selection for AZURE instantiations

remove old network map based node.conf and network map dockerfile

tidy up constructors of the various node stage objects

tidy up artefact name

add network-name selection dialog

* print out help

* exclude transitive dep onto log4j to suppress error print out

* windows fixes for local docker

* fixes to allow "devs.XXXX" resource groups in line with the new devops policy of having named resourceGroups

* add extra logging around constructing azure backend
2018-06-12 13:59:27 +01:00
szymonsztuka
98e58b282c Resolved merge conflicts. 2018-06-11 13:40:38 +01:00
josecoll
002d5a8f10
Publish tools to Artifactory: Blob Inspector, Network Bootstrapper (#3321)
* Added missing plugin to enable publishing of artifact to Artifactory.

* Remove references to experimental blobinspector

* Remove disableDefaultJar for default jar.

* Add additional artifacts to be published.
2018-06-08 14:02:57 +01:00