Commit Graph

5298 Commits

Author SHA1 Message Date
Maksymilian Pawlak
835c357a0b CORDA-1047 - Dockerform documentation (#2544)
* Comments update

* Links fix

* Grammar
2018-02-22 17:52:21 +00:00
Andrius Dagys
659d6c03ef 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.
2018-02-22 17:51:41 +00:00
Christian Sailer
ce4735da20 CORDA-1096 - Performance when loading multiple states from the vault (#2609)
* Provide efficient `loadStates()` implementation

* Replace loops using `loadState` with calls to `loadStates`
2018-02-22 16:12:07 +00:00
Joel Dudley
82f1240e34
Update deploying-a-node.rst 2018-02-22 14:29:05 +00:00
Andrzej Grzesik
a3abc1d2a5 CORDA-1075 - Add "bye" and "help" to crash shell menu(#2600)
* shell: list commands alphabetically

* increased crash shell version

* crash shell with help and bye
2018-02-22 11:15:28 +00:00
szymonsztuka
3ac2de0ede CORDA-1085 0 Alter column names to be consistent with R3.Corda. (#2601) 2018-02-22 10:18:16 +00:00
Katelyn Baker
e2fee754eb
CORDA-1080 - Doc update to make instructions clearer (#2598) 2018-02-21 17:31:03 +00:00
Michele Sollecito
d97a579a2e [CORDA-1089]: Correctly display an error message on node startup if RPC settings are invalid (#2592)
* [CORDA-1089]: Correctly produce an error message on node startup if rpc options are invalid.

* [CORDA-1089]: Made RPC settings validation only trigger if address is specified.

* [CORDA-1089]: Fixed outdated deployNodes task in build.gradle.

* [CORDA-1089]: Fixed outdated deployNodes task in build.gradle.
2018-02-21 17:09:13 +00:00
Andrius Dagys
7358e902a5 CORDA-941 - Instead of storing the network map contract implementation whitelist along with (#2581)
the constraint, pass it in during verification on LedgerTransaction
2018-02-21 16:45:50 +00:00
Andras Slemmer
adf9d50940 CORDA-984 - Add RPC deduplication to client and server (#2582) 2018-02-21 16:43:07 +00:00
Mike Hearn
9be6022012 DOCS - Bring doc improvements for v3 across from master (#2593)
* Docs: some work on the network map docs.

* Address review comments

* Address review comments

* Docs: discuss zone constraints, flow drains and more upgrade related topics (#2585)

Docs: discuss zone constraints, flow drains and more upgrade related topics.
2018-02-21 16:31:26 +00:00
Michele Sollecito
f4a9a055d9 CORDA-1059 - Fix Driver hanging on duplicate node names. (#2574)
* [CORDA-1059]: Fix bug with Driver hanging on duplicate node names.

* [CORDA-1059]: Code review changes.

* [CORDA-1059]: Code review changes.
2018-02-20 19:59:15 +00:00
Shams Asari
be0758e52f Removed DriverParameters.initialiseSerialization (#2572) (#2576)
(cherry picked from commit 979aef1)
2018-02-20 16:49:46 +00:00
Katelyn Baker
3fe2aa24b6
DOCS - Separate parameter names in exceptions in a clear fashion (#2578) 2018-02-20 15:37:21 +00:00
Andrius Dagys
f6c82dc99e CORDA-1010 - Send a request signature in addition to a transaction to the notary (#2573)
* Make NotaryFlow.Client more modular and easier to customise

* 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-20 12:09:51 +00:00
Tudor Malene
60a4bcba5b CORDA-941 - Add Network Parameters contract implementation Whitelist (#2539)
* CORDA-941 Add Network Parameters contract implementation Whitelist

* CORDA-941 fix merge

* CORDA-941 added uploader support to Attachments and added check into the AttachmentClassloader to only allow loading attachments that were uploaded from the local cordapps folder

* CORDA-941 update api spec

* CORDA-941 address some code review changes and fix and add classloader test

* CORDA-941 fix test

* CORDA-941 address code review comments

* CORDA-941 address code review comments - use and update existing whitelist

* CORDA-941 address code review comments

* CORDA-941 fix compile error

* CORDA-941 address code review comments

* CORDA-941 removed: whitelistAllContractsForTest

* CORDA-941 removed: whitelistAllContractsForTest

* CORDA-941 add comment

* CORDA-941 remove toLedgerTransaction

* CORDA-941 add warning when node not using latest CorDapp

* CORDA-941 remove the stubbing approach for cleaning LedgerTransaction

* CORDA-941 Code review changes

* CORDA-941 Fix merge

* CORDA-941 workaround for api scanner bug

* Fixed JacksonSupportTest.
2018-02-20 11:09:23 +00:00
Shams Asari
34e82026f3 Changed the wither methods in DriverParameters and NodeParameters to begin with "with" and not "set" (#2570) (#2571)
(cherry picked from commit ad959c7)
2018-02-20 09:52:13 +00:00
sollecitom
22f6827131 CORDA-961 - Revert the introduction of GlobalProperties.
* Changes to LargeTransactionTests.
 * Code review changes.
 * Code review changes.
 * Code review changes.
 * Reverted to MAX_FILE_SIZE for Artemis.
 * reverted max message size for BridgeControlListener inside Node.kt
 * reverted max message size for BridgeControlListener inside Node.kt
 * Renamed setNetworkParameters to withNetworkParameters in MockNetwork.kt
 * Updated to reflect latest state.
2018-02-19 15:57:21 +00:00
Joel Dudley
273d5c5d7a
Renames plugins folder to cordapps 2018-02-19 14:58:32 +00:00
Matthew Nesbit
ec93408d24 The IRS demo has a clash between web server ports and the regulator node on port 10010. This bumps the ports up by 1 to fix the issue. (#2562) (#2564) 2018-02-19 14:22:31 +00:00
Matthew Nesbit
9a339fbac7 CORDA-1064 - Fix a hang in AMQP protocol code that occurs when pausing in debugger causes protocol timeout, but wasn't driving event procesing to actuially kill the socket. (#2557) (#2559) 2018-02-16 17:43:03 +00:00
Mike Hearn
c0448a0e3c Minor: reduce the size of the MockNetwork API a bit, add some better documentation 2018-02-16 18:40:43 +01:00
Shams Asari
4bc3f9ffa8 ENT-1519 - Ensure NodeInfo always has at least one address by checking in the c'tor (#2538) (#2542)
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.

(cherry picked from commit 2864ce1)
2018-02-16 16:52:08 +00:00
Anthony Keenan
b24ec9f680 CORDA-939 - Modify Api Scanner to check api for internal exposures (#2534)
* 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

# Conflicts:
#	.ci/api-current.txt
#	node-api/src/test/kotlin/net/corda/nodeapi/internal/AttachmentsClassLoaderStaticContractTests.kt
#	node-api/src/test/kotlin/net/corda/nodeapi/internal/AttachmentsClassLoaderTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/AttachmentLoadingTests.kt
#	node/src/test/kotlin/net/corda/node/internal/cordapp/CordappProviderImplTests.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/InternalMockNetwork.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/MockCordappConfigProvider.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/MockCordappProvider.kt

* Bump gradle plugins version

* One last internal exposure

* Update constants.properties

* Fix api-current

* Address mikes review comments
2018-02-16 15:22:13 +00:00
Konstantinos Chalkias
b68957cf83 CORDA-1038 - docs fix: TransactionWithSignatures (#2552) 2018-02-16 14:43:05 +00:00
Katelyn Baker
d29736eccb
DOCS: AMQP Serialization "gotcha" (#2555)
How to deal with the case where the constructor parameter doesn't map to
a class property
2018-02-16 14:41:13 +00:00
Katelyn Baker
17de5be4bc
CORDA-966 - RELEASE - Rename current build version to reflect health check status (#2556) 2018-02-16 13:32:09 +00:00
Anthony Keenan
27fb4b8fe8 CORDA-1011 Add powershell script to update testing package imports (#2528) (#2549)
* Add powershell script to update testing package imports

* Make sure script works with java files

* Address review comments
2018-02-16 13:31:41 +00:00
Katelyn Baker
3606cef0a1
CORDA-1032 - unnamed ctor param serialization issue (#2535) 2018-02-15 09:00:48 +00:00
Maksymilian Pawlak
b87ca85046 Test driver default parameters removal (#2519) (#2525)
* Removed long parameter list in test driver, replaced with DriverParameters object

(cherry picked from commit b91dd43)
2018-02-14 10:24:16 +00:00
Anthony Keenan
90c8b2a12a CORDA-939 - Remove sslConfiguration from public constructor of CordaRPCClient (#2522) (#2529)
* Remove sslConfiguration from public constructor of CordaRPCClient

* Address review comments

* Update api-current.txt

* sslConfiguration doesn't need to be a property

# Conflicts:
#	.ci/api-current.txt
2018-02-13 22:48:14 +00:00
Michele Sollecito
79fc4a42d7 CORDA-1016 - Demobench now writes a node.conf that is compatible with current Corda. (#2526)
* Demobench now writes a node.conf that is compatible with current Corda.

* Demobench now writes a node.conf that is compatible with current Corda.

* fixed broken compilation
2018-02-13 16:27:41 +00:00
Katelyn Baker
f0e52e1eed
CORDA-1007 - Tweak the way invocation context is integrated to reduce the pain for devs using the old API (#2447) (#2524)
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-13 13:12:26 +00:00
Patrick Kuo
7d6f15b7ba CORDA-1008 - Samples fail to run due to wrongly configured max transaction size in the network bootstrapper (#2509) (#2514)
* [CORDA-1008] - Samples fail to run due to wrongly configured max transaction size in the network bootstrapper

* address PR issues

(cherry picked from commit ddf0d34)
2018-02-13 13:11:29 +00:00
Joel Dudley
c9ade00de6 No IdentityServiceInternal as public param. Start nodes without params. Simpler MockServices ctors. (#2521)
* Removes IdentityServiceInternal as a public parameter to MockServices.

* Reorders params to put non-default args first. Creates simpler default constructors.

* Adds constructors for creating mock nodes by passing params.
2018-02-13 11:32:04 +00:00
Shams Asari
49f75dab9c CORDA-1006: Undoing the wiring of maxMessageSize as it's not correctly implemented and updating the docs to clarify its status. (#2501)
The network parameter was just fed into Artemis' minLargeMessageSize property which isn't the same thing.
2018-02-13 11:31:39 +00:00
Maksymilian Pawlak
0b76c5d3f0 Docker system (end-to-end) test (#2437) (#2518)
* System test for IRS Demo utilizing docker, docker-compose and PhantomJS to automate full-stack testing

(cherry picked from commit a9856b9)
2018-02-13 10:23:17 +00:00
Konstantinos Chalkias
133bff90a6 CORDA-967 - Allow multi-tx signature verification (#2495)
* Allow multi-tx signature verification

* remove empty line

* CORDA-967 Allow multi-tx signature verification
2018-02-13 09:45:15 +00:00
Anthony Keenan
c7986c87fd CORDA-716 - Update changelog for test package changes and provide upgrade script (#2434) (#2515)
* Update changelog for test package changes and provide upgrade script

* Upgrade kotlin and java scripts
2018-02-13 09:43:24 +00:00
Michele Sollecito
fbb7f8f019 CORDA-990 - Flows Draining Mode (#2507)
* [CORDA-990]: Flows Draining Mode

* Fixed incorrect disconnect login.

* Code review changes.

* Fixed compilation error about MockNetwork...

* Fixed compilation error about MockNetwork...

* Fixed broken compilation.

* Ignoring an unstable test.
2018-02-13 09:34:10 +00:00
Anthony Keenan
e363090f30 CORDA-939 - Don't expose StartedNode and AbstractNode as part of public test api (#2472) (#2505)
* 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

# Conflicts:
#	.ci/api-current.txt
2018-02-12 13:26:56 +00:00
Andras Slemmer
805178debc CORDA-1003: Fix duplicate detection on cache evict (#2499) 2018-02-12 10:17:34 +00:00
Andras Slemmer
10f3c0bcf9 CORDA-995: r3corda wire compatibility (#2497) 2018-02-12 10:09:47 +00:00
Patrick Kuo
c18bc8758f CORDA-961 Wire up and enforce max transaction size (#2465) (#2493)
* 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

(cherry picked from commit c8cf46c)
2018-02-09 17:24:15 +00:00
Katarzyna Streich
af4aba2bfa First approach to network parameters updates (#2412) (#2487)
* 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-09 14:55:19 +00:00
Anthony Keenan
e41408d21e CORDA-939 - Dont expose FlowStateMachine via public API (#2438) (#2476)
* 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

# Conflicts:
#	.ci/api-current.txt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/NodeTestUtils.kt

* Revert api-current to v1 api

* Adding missing line and missing annotations

* Made changes post review

* Minor text change
2018-02-08 14:40:16 +00:00
josecoll
9c2b5f4ced Tolerate duplicates to prevent a PK violation. (#2460) 2018-02-08 11:17:57 +00:00
Katelyn Baker
9b8fe3a1d4
Merge pull request #2470 from corda/fixes/sollecitom/failfast_rpc_settings
Added basic node configuration validation.
2018-02-06 16:32:26 +00:00
Katelyn Baker
441f1cd8e0
Merge pull request #2461 from corda/corda-915-backport
CORDA-915 Backport to release breanch
2018-02-06 14:51:29 +00:00
sollecitom
7947bb314f CORDA-988 - Added basic node configuration validation. 2018-02-06 14:47:36 +00:00