Commit Graph

1996 Commits

Author SHA1 Message Date
Konstantinos Chalkias
4121f70da3
CORDA-1175 Docs numbering issue and counterparty consistency. (#2744) 2018-03-06 14:22:38 +00:00
tudor.malene@gmail.com
98a4fe1ce3 Merge remote-tracking branch 'open/master' into merge/tudor_network_bootstrap
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/amqp/AMQPBridgeTest.kt
2018-03-06 11:37:30 +00:00
Matthew Nesbit
81f4bbcaf3
Fix flaky bridge test and an associated deadlock during rollback in the BridgeManager code. (#2739) 2018-03-06 10:49:29 +00:00
Michele Sollecito
6479d7d8ff
[CORDA-1156]: Output of run networkMapFeed and run networkMapSnapshot not consistent in shell (fixed) (#2733) 2018-03-06 10:15:17 +00:00
Chris Rankin
596edcc2ae Merge commit '29ccd4d' into os-merge-050318 2018-03-05 23:21:35 +00:00
Shams Asari
84ff1c875a
CORDA-1006: Undoing the wiring of maxMessageSize as it's not correctly implemented and updating the docs to clarify its status. (#2501) (#2729)
The network parameter was just fed into Artemis' minLargeMessageSize property which isn't the same thing.

(cherry picked from commit 49f75da)
2018-03-05 17:26:08 +00:00
Chris Rankin
04610b8545 Merge remote-tracking branch 'public/master' into chrisr3-merge-os
O/S merge up to ef703c50
2018-03-05 12:27:49 +00:00
Shams Asari
4a73a80b39
CORDA-1160: Only read node-info files if their last modified time has changed. (#2717) 2018-03-05 11:10:38 +00:00
Christian Sailer
e19f9a3841
CORDA-1122 Tweak Artemis for performance (#496)
* ENT-1434 - tweak Artemis for P2P to auto commit and send asynchronously.

* ENT-1434 - tweak Artemis for P2P to auto commit and send asynchronously.

* Fix test compilation
2018-03-05 10:47:45 +00:00
Andras Slemmer
7c459f3c99
Merge pull request #445 from corda/aslemmer-fix-added-sm-event
Only emit SM Add events when the flow signals that it started
2018-03-05 10:45:10 +00:00
Mike Hearn
abc281056f Merge remote-tracking branch 'open/master' into mike-merge-80c00b920b 2018-03-02 15:17:32 +01:00
Mike Hearn
80c00b920b
Fix another non-serializable exception, add docs, fix a possible security issue. (#2707)
* Fix another non-serializable exception, add docs, fix a possible security issue.

* Update API definition to reflect methods added to make more exceptions serializable
2018-03-02 15:10:54 +01:00
Shams Asari
a59083ceb2 Merge remote-tracking branch 'open/master' into os-merge-020318
# Conflicts:
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/internal/Node.kt
2018-03-02 10:42:03 +00:00
Michele Sollecito
29215035e1
Merge pull request #498 from corda/merges/march-1-15-20
merges/CORDA-926_march-1-15_20
2018-03-02 10:17:12 +00:00
Thomas Schroeter
f9bfebe4a8
[CORDA-1136] Update startup message of P2P address and port (#2698) 2018-03-02 08:50:31 +00:00
Shams Asari
8616f24523
CORDA-1048: Making it simpler to move an existing local deployment of nodes to across different machines. (#2672)
This was achieved by having the hash in the node-info file to be just of the node's X.500 name. This also solves existing duplicate node-info file issues that we've been having.

Also updated the docsite.
2018-03-01 21:24:10 +00:00
Andrzej Cichocki
26a11bccc9
CORDA-1004 Use FastThreadLocalThread in multi-thread SMM. (#492) 2018-03-01 17:35:41 +00:00
sollecitom
c38dccacca Changed system and environmental variables to only be parsed as config if they're prefixed with "corda." e.g., to override "p2pPort" would now take a "corda.p2pPort" from system or environmental variables. 2018-03-01 16:37:15 +00:00
sollecitom
36cd34bff5 Merge remote-tracking branch 'remotes/open/master' into merges/march-1-15-20
# Conflicts:
#	docs/source/corda-configuration-file.rst
#	docs/source/release-notes.rst
#	node/src/main/kotlin/net/corda/node/internal/NodeStartup.kt
#	node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt
#	tools/demobench/src/test/kotlin/net/corda/demobench/model/NodeConfigTest.kt
#	tools/explorer/README.md
#	tools/explorer/src/main/kotlin/net/corda/explorer/ExplorerSimulation.kt
2018-03-01 15:36:40 +00:00
Joel Dudley
08c5b72874
1076 - Filters out structural steps when tracking a flow via RPC. 2018-03-01 15:08:07 +00:00
Michele Sollecito
b580a2ac30
[CORDA-926]: Parsing NodeConfiguration will now fail if unknown properties are present. (#2484) 2018-03-01 14:57:36 +00:00
Anthony Keenan
9dc5ce2161 Apply new test api to enterprise tests 2018-02-28 17:07:49 +00:00
Anthony Keenan
c72b3ad4fa Merge remote-tracking branch 'open/master' into anthony-os-merge-2
# Conflicts:
#	.ci/api-current.txt
#	client/jfx/src/integration-test/kotlin/net/corda/client/jfx/NodeMonitorModelTest.kt
#	client/rpc/src/integration-test/kotlin/net/corda/client/rpc/FlowsExecutionModeRpcTest.kt
#	docs/source/example-code/src/integration-test/kotlin/net/corda/docs/IntegrationTestingTutorial.kt
#	docs/source/example-code/src/main/kotlin/net/corda/docs/tutorial/mocknetwork/TutorialMockNetwork.kt
#	finance/src/test/kotlin/net/corda/finance/flows/CashPaymentFlowTests.kt
#	node/src/integration-test/kotlin/net/corda/node/CordappScanningDriverTest.kt
#	node/src/integration-test/kotlin/net/corda/node/NodePerformanceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/BFTNotaryServiceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/RaftNotaryServiceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/rpc/RpcSslTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/statemachine/FlowVersioningTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/statemachine/LargeTransactionsTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/MQSecurityTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/P2PMessagingTest.kt
#	node/src/integration-test/kotlin/net/corda/test/node/NodeStatePersistenceTests.kt
#	node/src/test/kotlin/net/corda/node/CordaRPCOpsImplTest.kt
#	node/src/test/kotlin/net/corda/node/modes/draining/ScheduledFlowsDrainingModeTest.kt
#	node/src/test/kotlin/net/corda/node/services/messaging/ArtemisMessagingTest.kt
#	node/src/test/kotlin/net/corda/node/services/statemachine/FlowFrameworkTests.kt
#	node/src/test/kotlin/net/corda/node/services/transactions/MaxTransactionSizeTests.kt
#	samples/trader-demo/src/integration-test/kotlin/net/corda/traderdemo/TraderDemoTest.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/InMemoryMessagingNetwork.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockServices.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/NodeBasedTest.kt
#	verifier/src/integration-test/kotlin/net/corda/verifier/VerifierTests.kt
2018-02-28 16:55:15 +00:00
Andrzej Cichocki
90e8621324
Make the test pass. 2018-02-28 15:14:39 +00:00
Andrzej Cichocki
b578b934f7
Merge commit '4d4253a287c6ddccddeab8ed24f9e16da5e25bc2' into andr3ej-os-merge
# Conflicts:
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/internal/Node.kt
2018-02-28 14:39:29 +00:00
Anthony Keenan
577033441a
[CORDA-1035] Testing api KDoc Updates (#2584)
* Testing api KDoc Updates

* Update after code review

* Update api-current

* Revert changes to compiler.xml

* Made comment changes from review

* Fixing merge conflict

* Don't expose net.corda.node through test API (first pass)

* Fixing merge conflicts

* Update api-current

* Addressing review commits

* Fix exposure of internal implementation of MessageHandlerRegistration

* Make InProcess expose ServiceHub instead of internal StartedNodeServices

* Move InternalMockMessaginService interface to internal namespace

* Move MOCK_VERSION_INFO to internal namespace to avoid exposing VersionInfo

* Don't expose WritableTransactionStorage via testing api

* Create public VerifierType enum

* Update api-current and modify check-api-changes to check for net.corda.node exposures

* Fix merge conflicts

* Fixing another merge conflict

* Fix accidentally broken unit tests

* Make getInternalServices a property

* Fix failing unit tests

* Add todo to check-api-changes

* Fix rpc sender thread busy looping

* Fix tests

* Fixing tests

* Address mike's comments

* Fixing tests

* Make random port allocation internal

* Update api
2018-02-28 13:26:49 +00:00
Andras Slemmer
7a9ce48996 Only emit SM Add events when the flow signals that it started 2018-02-27 18:41:52 +00:00
Andrzej Cichocki
4d4253a287
CORDA-1124 Fix thread leak in generateAndSaveNodeInfo (#2659) 2018-02-27 15:43:41 +00:00
Christian Sailer
0ff37c0437
CORDA-1122 Switch AMQP bridge to use auto-commit sends and acks (#2661)
* CORDA-1122 Switch AMQP bridge to use auto-commit sends and acks

* CORDA-1122 Codereview: Add comment for extra commit to rollback and add better message sequence logging to tricky test
2018-02-27 15:25:58 +00:00
Andrzej Cichocki
3abe6888cf
Fix typo. (#2657) 2018-02-27 12:36:44 +00:00
Thomas Schroeter
c7e03633c7 Merge remote-tracking branch 'open-source/master' into thomas-merge 2018-02-27 12:01:49 +00:00
Andras Slemmer
cd569577d2 Fix rpc sender thread busy looping 2018-02-27 10:23:48 +00:00
Andrzej Cichocki
3391810101
CORDA-1004 Quasar-friendly ThreadLocal solution (#2594)
* Use FastThreadLocalThread in fiber scheduler
* Test that thread locals aren't serialized
2018-02-27 10:22:30 +00:00
Thomas Schroeter
147f46fbf4
[CORDA-1119] Sign in DB transaction (#2645) 2018-02-27 10:00:30 +00:00
Andrius Dagys
0adc203d7a CORDA-696: Fix conflict resolution error, fix filename type 2018-02-27 09:48:39 +00:00
Andrius Dagys
59a6ced423 CORDA-696: Fix incorrect merge conflict resolution, fix filename typo 2018-02-26 18:48:20 +00:00
Andrius Dagys
9814ea6f34 Merge branch 'master' into andrius-merge-02-26 2018-02-26 18:41:20 +00:00
Chris Rankin
9da3a8ee05
[ENT-1552] Delete temporary truststore once the test is complete. (#484) (#2634) 2018-02-26 17:11:10 +00:00
Chris Rankin
26c388003c
[ENT-1552] Delete temporary truststore once the test is complete. (#484) 2018-02-26 12:46:47 +00:00
cburlinchon
60c44a0358
CORDA-998 Add suspend and resume functionality to Node (#461)
* Add suspend and resume functionality to Node to stop minimum number of services(P2PMessaging, RPCMessaging, NodeScheduler, StateMachine and BridgeManager)
2018-02-26 11:56:02 +00:00
Andrius Dagys
cc8e38922e Merge remote-tracking branch 'open/master' into andrius-merge-02-26 2018-02-26 11:55:17 +00:00
Andrius Dagys
0edfef2409 CORDA-696 - Create separate transaction types for contract upgrade transactions (#2589)
* CORDA-986 and CORDA-985 CompositeKey and Signature verification performance fixes (#2467)

* CORDA-696: Create separate transaction types for contract upgrade transactions.

Add rationale around upgrade transactions

Move contract upgrade transaction resolution logic into internal until it's stabilised.

Throw a better exception when contract attachment not found

Default legacy contract constraint to always accepting - needs to be changed to whitelist constraint before merging

Introduce a new upgraded contract interface that allows specifying the legacy constraint.

Remove StateLoader, make all tx resolution functions take in ServicesForResolution

Contract upgrade transactions can handle whitelist by zone constraints

When creating a contract upgrade transaction, make sure the attachment of the old cordapp gets attached when using hash constraints.
Attachment lookup for a given contract class name only scans currently loaded cordapps, and we don't load old versions of cordapps.

CORDA-696: Update upgrade docs
2018-02-26 11:29:25 +00:00
Christian Sailer
a483e7e8ce
CORDA-1096 - Performance when loading multiple states from the vault (#2614)
* CORDA-1096 - Performance when loading multiple states from the vault (#2609)

* Provide efficient `loadStates()` implementation

* Replace loops using `loadState` with calls to `loadStates`

* Replace `map`/`flatMap` with just a single `flatMap`
2018-02-26 09:37:32 +00:00
sollecitom
d41b9a0299 merged OS into master 2018-02-23 15:47:07 +00:00
Michele Sollecito
191f412aba
Fixed flows draining mode after regression introduced by OS -> ENT merge (#474) 2018-02-23 15:19:37 +00:00
Michele Sollecito
5be0e4b39e
[CORDA-941]: Add NetworkParameters contract implementation whitelist. (#2580) 2018-02-23 14:29:02 +00:00
Shams Asari
977836f4eb
Enable tests which were ignored due to recent flakiness on TC and issue with maxTransactionSize which should now be resolved. (#2621) 2018-02-23 13:45:18 +00:00
Patrick Kuo
1552e992e7
ENT-1443 Add cert role to CSR and doorman issue cert according to the cert role (#2620)
* ENT-1443 Add cert role to CSR and doorman issue cert according to the cert role (#431)

* Doorman and HSM create certificate base on requested cert role specified in the certificate signing request.

(cherry picked from commit 94f7392)

* remove R3 corda code
2018-02-23 13:38:09 +00:00
Andras Slemmer
f5167e207f Merge remote-tracking branch 'origin/master' into aslemmer-merge-19-Feb 2018-02-23 11:18:16 +00:00
Patrick Kuo
94f73920cc
ENT-1443 Add cert role to CSR and doorman issue cert according to the cert role (#431)
* Doorman and HSM create certificate base on requested cert role specified in the certificate signing request.
2018-02-23 10:57:59 +00:00
Shams Asari
2af0feee04
Various cleanup of the network map code (#2604) 2018-02-23 09:13:00 +00:00
Michele Sollecito
e91b74962b
[CORDA-1098]: Fixed Artemis filters for flows draining mode. (#2613) 2018-02-22 20:45:56 +00:00
Andras Slemmer
dd8a709971 Ignore P2PFlowsDrainingModeTest 2018-02-22 15:32:47 +00:00
Andras Slemmer
1722ec5e69 Remove stringy check from test 2018-02-22 10:12:58 +00:00
Michele Sollecito
5db4882668
[CORDA-1089]: Ensure graceful error message is shown on node startup if RPC settings are invalid. (#2595) 2018-02-22 09:47:56 +00:00
igor nitto
731cb1b67e
Remove unused occurrences of 'exportJMXto' (#2588) 2018-02-21 19:05:55 +00:00
Andras Slemmer
6a2217ace6 Merge remote-tracking branch 'open/master' into aslemmer-merge-19-Feb 2018-02-21 18:10:37 +00:00
Andras Slemmer
a3e2aff080 Fix tests 2018-02-21 15:14:00 +00:00
Andras Slemmer
68c2dd16d9 Remove spurious logline 2018-02-20 17:09:48 +00:00
Andras Slemmer
a548942a0a Merge remote-tracking branch 'origin/master' into aslemmer-merge-19-Feb 2018-02-20 16:12:37 +00:00
Andras Slemmer
25263c20c7 Merge remote-tracking branch 'open/master' into aslemmer-merge-19-Feb 2018-02-20 15:52:09 +00:00
Andras Slemmer
38d0ad30df Merge commit 'da591363fdccd220455a92f083d2ad59ed0e2d12' into aslemmer-merge-19-Feb 2018-02-20 13:52:03 +00:00
Andras Slemmer
6b2b7b6a3c Merge commit 'fa4b5d16ba6249f85b50851c2f52dc697eebdee6' into aslemmer-merge-19-Feb 2018-02-20 13:26:31 +00:00
Christian Sailer
81801d4566
Graphite reporter polish (#465)
* Improve generation of default graphite prefix and add an sanitatization for all graphite prefixes (including warning if a custom name needs to be changed)

* Convert graphite rates to per second

* Code review: make it IPv6 safe
2018-02-20 11:04:08 +00:00
Andras Slemmer
66dd6afe2e Merge commit 'd072f6c275a5ff770aa66e37b9492a387d757329' into aslemmer-merge-19-Feb 2018-02-19 16:46:15 +00:00
Andras Slemmer
dc268ebe63
Merge pull request #2477 from corda/aslemmer-corda/issues/2300
Add RPC deduplication to client and server
2018-02-19 16:25:36 +00:00
Andras Slemmer
1d7b0fc499 Merge commit '86fb1ed852c69121f989c9eeea92cfb4c27f9d13' into aslemmer-merge-19-Feb 2018-02-19 16:14:43 +00:00
Mike Hearn
c704ff6370 Fix a build issue caused by a bad auto-import. 2018-02-19 16:58:28 +01:00
Mike Hearn
4f0c692831 Minor: reduce the size of the MockNetwork API a bit, add some better documentation 2018-02-19 16:58:28 +01:00
Andras Slemmer
32bcf0a06c Address more comments 2018-02-19 15:16:12 +00:00
Andras Slemmer
7f1bfac8b0 Write better test for dupes 2018-02-19 14:53:28 +00:00
Shams Asari
71c94f8a9d
Reversing the introduction of GlobalProperties (by CORDA-961), and added NetworkParameters to ServicesForResolution instead. (#2563)
Also, replaced the maxTransactionSize parameter of the driver and MockNetwork with NetworkParameters.
2018-02-19 12:23:59 +00:00
Clinton Alexander
003e14ce57 Added a helpful error log when validating keystores. 2018-02-16 16:54:16 +00:00
Andrius Dagys
5b93abdc57
CORDA-1010: Send a request signature in addition to a transaction to the notary (#2527)
CORDA-1010: Notary flow - clients now send a signature over a notarisation
request in addition to the transaction. This will be logged by the notary
to be able to prove that a particular party has requested the consumption
of a particular state.
2018-02-16 16:14:06 +00:00
Matthew Nesbit
fee89c044f
Enhance the pluggability of the bridging and messaging code, so that more complex HA and out of process bridges can be written. (#2558) 2018-02-16 16:13:05 +00:00
igor nitto
458db7cb24
Cleanup build (#2551)
* Remove compile-time dependencies on jolokia-war from webserver 
* Stop exporting jolokia version to all projects, it is only used by node
2018-02-16 12:17:46 +00:00
Michal Kit
7c415b7126
Adding small fixes to the code. (#456)
* Adding small fixes to the code.

* Addressing review comments
2018-02-16 11:23:40 +00:00
igor nitto
ed0cf91946
Start Jolokia agents if configured without modifying JVM options [CORDA-1042] (#2541)
* Jolokia agents are loaded dynamically if configured
* Renamed exportJmxTo (never used) to jmxMonitoringHttpPort and take it from config
* Updated documentation and tests
2018-02-15 17:10:07 +00:00
Shams Asari
2864ce1384
ENT-1519: Ensure NodeInfo always has at least one address by checking in the c'tor (#2538)
Further, the look up of the node's own node-info from its database has been tightened to ensure there isn't more than one.

Also fixed some brittle code which was assuming exactly one address rather than at least one.
2018-02-15 14:06:41 +00:00
Maksymilian Pawlak
ae63de34ad
Run H2 fix test in parallel (#2504)
* Parallel execution for reduced test time
2018-02-15 12:22:31 +00:00
cburlinchon
311475a81c Switch to using our own quasar fork with thread leak fix (#2443)
* Switch to using our own quasar fork with thread leak fix

* Update quasar.jar in lib

* Review changes

* Bump to 3.0.7
2018-02-14 17:32:00 +00:00
Andras Slemmer
6a4f783106 Hack around database-with-observables issue 2018-02-14 17:30:32 +00:00
Anthony Keenan
3e8d76334e
CORDA-939 Modify Api Scanner to check api for internal exposures (#2510)
* Update check api changes to look for internals

* Update several more uses of internal

* Make check-api-changes script filter out internal class usages

* Make CordaClock part of API

* Update api-current.txt

* Remove exclusion of nodeapi.internal

* Remove access to CordaPersistence from public api

* Don't expose DB Connection from StartedMockNode and remove unnecessary transaction from CustomVaultQueryTest

* Make internal tests that use need db access use InternalMockNetwork

* Make test certificates internal

* Address further review comments

* Revert some accidental changes to api-current.txt

* Address Shams' review comments

* Update Api Scanner to filter out CordaInternal attribute

* Update api-current.txt

* Remove superfluous brackets

* Add transaction to StartedMockNode

* More leaky transaction fixes
2018-02-14 16:42:56 +00:00
Andras Slemmer
81b16776f3 Fix RPC observation vs reply ordering 2018-02-14 15:16:59 +00:00
Clinton
174ed3c64b
CORDA-556: Added Cordapp Config and a sample (#2469)
* Added per-cordapp configuration 
* Added new API for Cordformation cordapp declarations to support per-cordapp configuration
* Added a cordapp configuration sample
2018-02-14 14:49:59 +00:00
Andras Slemmer
faa199c2f6 Expose state machine options, default OnNextCommit persistence 2018-02-14 14:49:32 +00:00
Anthony Keenan
117f4a721e
CORDA-939 Remove sslConfiguration from public constructor of CordaRPCClient (#2522)
* Remove sslConfiguration from public constructor of CordaRPCClient

* Address review comments

* Update api-current.txt

* sslConfiguration doesn't need to be a property
2018-02-13 21:39:31 +00:00
Andras Slemmer
7924a5a834 Add RPC deduplication to client and server 2018-02-13 18:51:59 +00:00
Maksymilian Pawlak
b91dd43a83
Test driver default parameters removal (#2519)
* Removed long parameter list in test driver, replaced with DriverParameters object
2018-02-13 13:15:05 +00:00
Rick Parker
ef45900fda
ENT-1391 Create P2P message de-duplication fast path. (#443) 2018-02-12 18:48:34 +00:00
Joel Dudley
ad1be79900
Reorders params to put non-default args first. Creates simpler default constructors. 2018-02-12 17:02:34 +00:00
Michele Sollecito
da591363fd
CORDA-990: Flows Draining Mode (#2483)
[CORDA-990]: Flows draining mode.
2018-02-12 16:13:43 +00:00
Joel Dudley
ad7b84b5a8
Removes IdentityServiceInternal as a public parameter to MockServices. 2018-02-12 13:30:47 +00:00
Michal Kit
d1627fed5b Backporting introduction of constants for the dev certs from enterprise (#2502) 2018-02-12 12:12:16 +00:00
Andras Slemmer
a9109e0855
Merge pull request #2498 from corda/aslemmer-fix-cache-duplicate-detection-on-evict
CORDA-1003: Fix duplicate detection on cache evict
2018-02-12 10:13:16 +00:00
Anthony Keenan
7b65b7971a
CORDA-939 - Don't expose StartedNode and AbstractNode as part of public test api (#2472)
* Don't expose StartedNode via Node Driver

* Dont expose StartedNode/Abstract Node via MockNetwork

* Remove internal var from constructor as it doesn't hide from public api and change to internal initialisation method

* Update api

* Rename MockNode to StartedMockNode to avoid confusion
Update documentation
Update api-current.txt

* Fix typo

* Fix test failure

* Modify flow tests to use internal mock network and remove additional internal exposures from StartedMockNode

* Fix api-current

* Change InProcess and OutOfProcess to interfaces

* Explicitly declare MockNetwork parameters
Dont expose StateMachineManager
Move affected tests to use internal mock network

* Fix api-current

* Changes requested via review

* Fix IRS Demo address

* Fix api

* Remove internal attribute from classes in internal package

* Remove accidentally added code

* Move useHttps into NodeHandleInternal

* Remove duplicated code

* Update api-current

* Make webAddress internal on NodeHandle

* Make sure parameters in public api are explicitly specified

* Use correct address in IRS Demo

* Get webaddress from webserver handle

* Update api-current
2018-02-12 10:09:59 +00:00
Andras Slemmer
cfc90a221b CORDA-1003: Fix duplicate detection on cache evict 2018-02-09 18:23:42 +00:00
Andras Slemmer
d072f6c275
Merge pull request #2490 from corda/aslemmer-r3corda-compatibility
CORDA-995: r3corda wire compatibility
2018-02-09 17:12:18 +00:00
Andras Slemmer
d01b2cbe97 Address comments, fix test 2018-02-09 16:03:36 +00:00
Andras Slemmer
0a88b76e46 r3corda wire compatibility 2018-02-09 14:50:20 +00:00
Patrick Kuo
c8cf46c657
CORDA-961 Wire up and enforce max transaction size (#2465)
* wire up and enforce max transaction size

* fixup after rebase
moved network parameter from AbstractNode to NodeProperties

* removed TODO

* fix broken import

* address PR issues

* remove API breaking change
address PR issue

* added max transaction size to driver and mock network.
address PR issues

* fix failing test

* added TODO

* fix verifier test

* fix spring driver build error
2018-02-09 14:48:45 +00:00
Andrzej Cichocki
1902a4f11e
CORDA-973 Refactoring for serialization compression support (#2466)
* Use constant for empty byte array
* Less byte array copying
* Fix InputStreamSerializer trailing garbage
* More OO kryo streams
* Introduce SerializationMagic
* Introduce non-copying slice on ByteSequence
2018-02-09 11:54:07 +00:00
Katarzyna Streich
6acff3a7df
First approach to network parameters updates (#2412)
* Network parameters updates

Add two RPC methods networkParametersFeed and
acceptNewNetworkParameters. Implementation of client handling of network
parameters update event. Partial implementation of accepting new
parameters and installing them on the node as well as node startup with
updated parameters.

Move reading of network parameters on startup to separate
NetworkParametersReader class. Add tests.

Move NetworkParameters and NotaryInfo classes to core.

* Ignore evolvability test - to be fixed later

* Add documentation on update process
2018-02-08 14:31:43 +00:00
Michal Kit
8c5f0ac0ca
Making BasicConstraints a critical extension (#420)
Path length will be decided in another ticket - https://r3-cev.atlassian.net/browse/ENT-1508
2018-02-08 14:30:20 +00:00
Anthony Keenan
8081ee42ad
CORDA-939 - Dont expose FlowStateMachine via public API (#2438)
* Create CordaInternal attribute for properties on public classes that are not part of the api and apply to FlowLogic.stateMachine

* Remove startFlow from public test api and replace with startFlowAndReturnFuture

* Update api-current with changed signature

* Change test used in documentation to use public test methods

* Remove the rest of the unneccessary usages of the startFlow test utility

* Remove extra whitespace

* Rename startFlowAndReturnFuture back to startFlow

* Update api

* The annotation doesn't appear unless its marked as on the actual getter and setter

* Updated docs and removed pointless attribute

* Deleted whitespace
2018-02-07 11:55:06 +00:00
Michele Sollecito
3b5d89883d
Added basic node configuration validation. (#2433) 2018-02-05 18:17:54 +00:00
Maksymilian Pawlak
45ff60fccc
Init CRaSH shell only when it's really needed (#2448)
* Avoid initializing CraSH if its not to be used
2018-02-05 14:01:38 +00:00
josecoll
8e2524f35d
CORDA-977 PK constraint violation when up adding Mapping to DBTransactionMapping store (#2457)
* Default jolokia version with optional override in CorDapp project gradle file.

* Tolerate duplicates to prevent a PK violation.
2018-02-02 17:33:35 +00:00
Mike Hearn
82ece34ac8
Tweak the way invocation context is integrated to reduce the pain for devs using the old API (#2447)
Minor tweaks to the invocation context code.

1) Un-deprecate FlowInitiator, move the deprecation to the field. This
   eliminates large numbers of warnings and means developers are warned
   only once in the place where they obtain one.

2) Add documentation for StateMachineInfo and create a type alias to give
   it a better name in an ABI compatible way.

3) Improve markup on InvocationContext

4) Rename field from just "context" to "invocationContext" (Context is vague)
2018-02-02 17:09:08 +01:00
Patrick Kuo
258b562e16
set network registration poll interval via http cache control header (#434) (#2445)
* set network registration poll interval via http cache control header from the server side

* default poll interval to 10 seconds if cache header not found

* address PR issues

* address PR issues

(cherry picked from commit dca8699)
2018-02-01 15:18:53 +00:00
Andras Slemmer
92cf91c0b0
Merge pull request #159 from corda/aslemmer-multi-threaded-sm
Multi-threaded SMM
2018-02-01 14:24:17 +00:00
Patrick Kuo
dca8699e7c
set network registration poll interval via http cache control header (#434)
* set network registration poll interval via http cache control header from the server side

* default poll interval to 10 seconds if cache header not found

* address PR issues

* address PR issues
2018-02-01 13:38:25 +00:00
Anthony Keenan
0c93f1d4b1
Remove exposure of internal hibernate configuration from mockservices (#2442) 2018-02-01 10:31:11 +00:00
Andras Slemmer
b71f0c49fb Multi threaded state machine 2018-01-31 18:13:25 +00:00
Matthew Nesbit
7f58afc7ca Merge remote-tracking branch 'remotes/open/master' into mnesbit-merge-20180131 2018-01-31 10:37:44 +00:00
Matthew Nesbit
ceff50d656
Refactor location of bridge code to allow out of process bridging (#2431)
Fix some issues Andras has seen
2018-01-30 16:29:59 +00:00
Patrick Kuo
1c77736d50 merge os to enterprise 2018-01-30 14:00:22 +00:00
szymonsztuka
1ecf646f7e
Oracle 11xe and 12c database compatibility (#206)
* Sql setup scripts for Oracle and datasource configuration.
* CashSelection for Oracle.
* Workaround of forbidden distinct for BLOBs.
* ojdbc8.jar driver dependency from Oracle Maven repository, ojdbc6.jar from lib (it's not in Maven repo).
* allow to use random Port in node names and trim it from schema name, remove schema with port numbers from db setup (to cater for new test, non Oracle specific change) 
* Removed unnecessary code from ConfigUtilities (non Oracle specific change) 
* Removed db integration tests setup for RPCStabilityTest as it doesn't start any nodes
2018-01-29 18:35:58 +00:00
Patrick Kuo
685ab4c9b0
Add trace logging to network map client (#2424)
* Add trace logging to network map client

* Add trace logging to network map client

* address PR issue

* address PR issue
2018-01-29 17:44:28 +00:00
Patrick Kuo
28e29c0873
Fix path issue which causes windows build failure. (#2430) 2018-01-29 17:43:48 +00:00
Patrick Kuo
93054a9590
Add cmdline option for network root truststore and password (#2407)
* add cmdline option for network root truststore and password, instead of using node's truststore configuration to avoid confusion.

* revert line auto format

* fix failing integration test

* address PR issue
2018-01-29 13:43:16 +00:00
Rick Parker
e19f51d9ac
CORDA-959 Filter unschedules and remove database activity from inside mutex. (#2426)
* Filter unschedules and remove database activity from inside mutex.

* Race condition fix

* Bug fix
2018-01-26 17:44:42 +00:00
Matthew Nesbit
054c44d4bc Merge from OS to ENT including Bridge manager work 2018-01-26 16:55:43 +00:00
Thomas Schroeter
4257891c98
Revert "Raft Notary: remove snapshotting" (#2423)
This reverts commit cf33be66ff.
2018-01-26 16:23:59 +00:00
Shams Asari
881379b889 Merge branch 'master' into shams-os-merge-250118 2018-01-26 13:45:21 +00:00
Shams Asari
336aeb96e5 Merge fixes 2018-01-26 13:45:03 +00:00
Andrius Dagys
e357a88181
Deprecate TimeWindowChecker, make TimeWindowInvalid report exact current time and transaction time window (#2280)
* Make notary service return the current time and the transaction time window
along with the TimeWindowInvalid error.

Deprecate TimeWindowChecker.
Add a static method for validating transaction time window to reduce code duplication.
2018-01-26 09:32:11 +00:00
igor nitto
3be30af161 [ENT-1363] DB integration test fixes (#411)
Dependencies on JDBC drivers in 'node' need to be marked as 'runtime' instead of 'integrationTestRuntimeOnly', to make them available to integration tests in other projects.
2018-01-25 18:32:34 +00:00
Matthew Nesbit
0ff9c9e2e3
Move to message based bridge control protocol (#2410)
Tidy up

Remove dead RPCSecurity logic from ArtemisMessageServer

Address PR comments

Address PR comments
2018-01-25 17:53:34 +00:00
Shams Asari
4b86362391 Merge remote-tracking branch 'open/master' into shams-os-merge-250118
# Conflicts:
#	client/rpc/src/integration-test/kotlin/net/corda/client/rpc/BlacklistKotlinClosureTest.kt
#	client/rpc/src/integration-test/kotlin/net/corda/client/rpc/RPCStabilityTests.kt
#	core/src/test/java/net/corda/core/flows/FlowsInJavaTest.java
#	docs/source/changelog.rst
#	docs/source/corda-configuration-file.rst
#	docs/source/upgrade-notes.rst
#	finance/src/test/kotlin/net/corda/finance/contracts/CommercialPaperTests.kt
#	finance/src/test/kotlin/net/corda/finance/contracts/asset/CashTests.kt
#	gradle/wrapper/gradle-wrapper.properties
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/KeyStoreConfigHelpers.kt
#	node-api/src/test/kotlin/net/corda/nodeapi/internal/serialization/SetsSerializationTest.kt
#	node/src/integration-test/kotlin/net/corda/node/AuthDBTests.kt
#	node/src/integration-test/kotlin/net/corda/node/BootTests.kt
#	node/src/integration-test/kotlin/net/corda/node/NodeKeystoreCheckTest.kt
#	node/src/integration-test/kotlin/net/corda/node/NodePerformanceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/SSHServerTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/AttachmentLoadingTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/BFTNotaryServiceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/RaftNotaryServiceTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/PersistentNetworkMapCacheTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/statemachine/FlowVersioningTest.kt
#	node/src/integration-test/kotlin/net/corda/node/utilities/registration/NodeRegistrationTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/MQSecurityTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/P2PMessagingTest.kt
#	node/src/integration-test/kotlin/net/corda/test/node/NodeStatePersistenceTests.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/services/config/NodeConfiguration.kt
#	node/src/main/resources/reference.conf
#	node/src/test/java/net/corda/node/services/vault/VaultQueryJavaTests.java
#	node/src/test/kotlin/net/corda/node/CordaRPCOpsImplTest.kt
#	node/src/test/kotlin/net/corda/node/services/config/NodeConfigurationImplTest.kt
#	node/src/test/kotlin/net/corda/node/services/network/NetworkMapCacheTest.kt
#	node/src/test/kotlin/net/corda/node/services/persistence/DBCheckpointStorageTests.kt
#	samples/attachment-demo/src/integration-test/kotlin/net/corda/attachmentdemo/AttachmentDemoTest.kt
#	samples/network-visualiser/src/main/kotlin/net/corda/netmap/NetworkMapVisualiser.kt
#	samples/notary-demo/src/main/kotlin/net/corda/notarydemo/RaftNotaryCordform.kt
#	samples/simm-valuation-demo/src/integration-test/kotlin/net/corda/vega/SimmValuationTest.kt
#	testing/node-driver/src/integration-test/kotlin/net/corda/testing/driver/DriverTests.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/InMemoryMessagingNetwork.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockNode.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockServices.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/NodeTestUtils.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/NodeBasedTest.kt
#	testing/smoke-test-utils/src/main/kotlin/net/corda/smoketesting/NodeProcess.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/TestNodeInfoBuilder.kt
#	tools/explorer/src/main/kotlin/net/corda/explorer/ExplorerSimulation.kt
#	verifier/src/integration-test/kotlin/net/corda/verifier/VerifierTests.kt
#	webserver/src/integration-test/kotlin/net/corda/webserver/WebserverDriverTests.kt
2018-01-25 17:51:13 +00:00
Andrzej Cichocki
242d9cf7ad
CORDA-692 Don't include internal packages in API documentation (#2415)
* Use G1 for gradle daemon
2018-01-25 15:26:13 +00:00
Michele Sollecito
9783f11ba8
Exposed RPC SSL settings through Cordformation (#2419) 2018-01-25 14:32:58 +00:00
igor nitto
1be4f0950d
Remove compile time dependency on JDBC drivers [ENT-1363] (#387)
* Change JDBC drivers dependencies to integrationTestRuntimeOnly
* Added smoke test validating JDBC driver registration located in "./plugins" directory 
* Some docsite tweaks
2018-01-25 13:38:51 +00:00
jamesbr3
5f8af818b1
Merge pull request #2408 from corda/jamesbr-remove-jolokia-war
Remove jolokia war reference from webserver
2018-01-24 21:19:50 +00:00
Shams Asari
0fa6969d5d
Added various X509 utilities to remove some of the existing boilerplate. (#2416) 2018-01-24 18:07:29 +00:00
Mike Hearn
cfb8997f23 Fix build break due to an API change between PR check and merge 2018-01-24 17:14:03 +01:00
Ben Wyeth
d17670c747 Provide an API to register callback on app shutdown (#2402)
Provide an API to register callback on app shutdown.
2018-01-24 16:19:24 +01:00
Michele Sollecito
3c0e006456
Reverted incorrect additional advertised RPC address in NodeInfo (#2417) 2018-01-24 14:42:07 +00:00
Tudor Malene
cef1f9885c
ENT-1282: create standalone db migration tool (#356)
* ENT-1282: add standalone db migration tool that works with both the node and the doorman

* ENT-1282: remove cmd line args during node startup

* ENT-1282: more clear message

* ENT-1282: fix integration test

* ENT-1282: more fixes and cleanup code

* ENT-1282: address PR comments

* ENT-1282: more fixes and refactoring

* ENT-1282: more classloader fixes

* ENT-1282: changes after demo feedback

* ENT-1282: update API

* ENT-1282: update documentation

* ENT-1282: formatting

* ENT-1282: added CONSOLE option for dry-run and logging

* ENT-1282: documentation changes

* ENT-1282: remove getMigrationResource from the public API

* ENT-1282: removed dependency on network-manager, added release-lock

* ENT-1282: Update documentation
2018-01-24 11:55:43 +00:00
Shams Asari
61c7de22d6
Replaced KeyStoreWrapper with X509KeyStore, which is still a wrapper but assumes only X509 certs and has better APIs (#2411) 2018-01-24 07:51:55 +00:00
Joel Dudley
5df50c0e81
Fixes a bug in the deserialisation of UniqueIdentifiers in the CRaSH shell. 2018-01-23 17:28:24 +00:00
Thomas Schroeter
a564c9bfd3
Notary metrics (#383)
* Track the distribution of the number of input states

* Log number of input states and commit duration

...and move the rollback

* Update schema
2018-01-23 16:24:51 +00:00
Michele Sollecito
142f52fa82
[CORDA:936]: Enable RPC layer to work with SSL 2018-01-23 16:23:37 +00:00
Tudor Malene
c81e597199
Fix liquibase files after node split (#393) 2018-01-23 15:06:21 +00:00
josecoll
d2795954cb
Merge pull request #379 from corda/colljos-schema-split-for-notaries
CORDA-917 Bootstrap nodes without Notary schemas
2018-01-23 09:16:39 +00:00
Christian Sailer
013ac82dde
ENT-1412 flow state machine metrics (#390)
* re-add metrics for flows started, flows finished and checkpoint rate
Add metric for checkpoint volume rate.

* Put error and success counters in FlowStateMachine

* Optional graphite metrics writer

* Improved checkpoint volume metrics.

* Code review: Clean up/layout.

* Code review: spelling
2018-01-23 09:15:09 +00:00
James Brown
8de2c78dd2 Remove jolokia war reference from webserver 2018-01-22 16:21:28 +00:00
josecoll
00a7172e4b Resolve conflict after merge from master. 2018-01-22 14:39:29 +00:00
josecoll
4bff002b41 Merge branch 'master' into colljos-schema-split-for-notaries 2018-01-22 14:36:27 +00:00
Christian Sailer
8d5611853a
CORDA-929 Attachment caching (#2372)
* ENT-1403 Cache node attachments (and attachment content)

* ENT-1403 Make cache sizes configurable

* Update documentation with new config parameters

* Test that non-existence of attachments is not cached

* Remove unneeded defaults in interface

* It turned out we need the defaults on the interface in quite a few tests

* Codereview: typos, size in MB rather than bytes, charset in tests, move concurrencyLevel to a constant

* Codereview: Make the internal config value bytes again, but config file in MB

* Fix example config unit test
2018-01-22 13:41:06 +00:00