Commit Graph

2723 Commits

Author SHA1 Message Date
ae2b96df41 Fix integration tests in database mode (#1401)
Add SQL setup in new test classes which were missing it.
Ignoring H2 tests when running against standalone database.
Revert datasource Enterprise specific configuration for RaftTransactionCommitLogTests.kt test, and mark it as required for test in database mode.
2018-09-21 15:03:46 +01:00
cd8b802fcb Follow refactoring CHECKPOINT_CONTEXT from SerializationDefaults to CheckpointSerializationDefaults etc in Enterprise only code. 2018-09-20 17:09:23 +01:00
dc25fc28b7 Merge remote-tracking branch 'remotes/open/master' into corda/os-merge-20-09-2018
# Conflicts:
#	core-deterministic/build.gradle
#	core/src/test/kotlin/net/corda/core/utilities/KotlinUtilsTest.kt
#	node/src/integration-test/kotlin/net/corda/node/BootTests.kt
#	node/src/integration-test/kotlin/net/corda/node/flows/AsymmetricCorDappsTests.kt
#	node/src/integration-test/kotlin/net/corda/node/modes/draining/P2PFlowsDrainingModeTest.kt
#	node/src/main/kotlin/net/corda/node/internal/CordaRPCOpsImpl.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/Kryo.kt
#	node/src/main/kotlin/net/corda/node/serialization/kryo/KryoSerializationScheme.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/InternalTestUtils.kt
2018-09-20 16:39:34 +01:00
4639f14383 Ensure distinct node names in AssymetrictCorDappsTests and BootTests integration tests - align with Enterprise repo. (#3976) 2018-09-20 13:16:24 +01:00
83f98839ab Integration tests in database mode - add Oracle 12.1 JDBC driver directly into libs dir (#1399)
Stop downloading Oracle driver for Oracle 12.1 from Oracle proprietary repo as it's very unreliable,
and from time to time the dependency cannot be dowloaded. Issue: "Could not parse POM https://www.oracle.com/content/secure/maven/content/com/oracle/jdbc/orai18n/12.2.0.1/orai18n-12.2.0.1.pom Invalid byte 1 of 1-byte UTF-8 sequence."
2018-09-19 20:49:00 +01:00
6775ffa2e6 Check java version is above 1.8.0_171 on node startup (#3870) 2018-09-19 16:34:03 +01:00
c4d86b1b26 CORDA-1999 Changed isRelevant to relevancyStatus. (#3966)
* Changed isRelevant to relevancyStatus.

* Fix cash selection from breaking.

* Fixed non-backwards compatible API change.

* Updated schema migration changelog.

* Updated comment.
2018-09-19 15:50:39 +01:00
98c92ef16f CORDA-1391: Separate out Checkpoint serialization (#3922)
* Separate out Checkpoint serialization

* Update kdocs

* Rename checkpoint serialization extension methods

* Fix bungled rename

* Limit API changes

* Simplify CheckpointSerializationFactory

* Add CheckpointSerializationScheme to API checker

* CheckpointSerializationScheme should not be implemented

* Move checkpoint serialisation to internal package

* Remove CheckpointSerializationScheme from api-current

* Quarantine internal classes

* Remove checkpoint context from public API

* Remove checkpoint context from public API

* Fix test failures

* Completely decouple SerializationTestHelpers and CheckpointSerializationTestHelpers

* Remove CHECKPOINT use case

* Remove stray reference to checkpoint use case

* Fix broken test
2018-09-19 14:23:29 +01:00
19b8f70117 [CORDA-1996]: Apply error code to exceptions that do not propagate to NodeStartup. (#3964) 2018-09-19 14:24:21 +02:00
4c68b515f8 ENT-2489: Experiment with multi-identity RPC worker (#1377)
* ENT-2489: Trivial change to prep for multiple RpcWorkerServiceHubs (i.e. identities)

* ENT-2489: Allow passing `targetLegalIdentity` from Client RPC call.

* ENT-2489: Starting RpcWorker with multiple RpcWorkerServiceHubs (unfinished)

* ENT-2489: Starting RpcWorker with single (for now) RpcWorkerServiceHub

* ENT-2489: Tighten-up integration tests assertions

* ENT-2489: Introduce RPCOpsRouting

* ENT-2489: Output configs for reference

* ENT-2489: Extend test for RpcWorker to operate with multiple identities.

* ENT-2489: Remove un-necessary P2P address

* ENT-2489: New test for RpcWorker getting paid.

* ENT-2489: Make RpcWorkerMultiIdentityTest work

* ENT-2489: Use MAX_RPC_MESSAGE_SIZE when configuring RPC broker.

* ENT-2489: Add exception clause when client attempts to use the wrong identity.

* ENT-2489: Fixes post merge from `master`.

* ENT-2489: Fixes post merge from `master`.

* ENT-2489: Explicitly specify X500 name in test.

* ENT-2489: Use single flow worker and switch anonymity off when making payment.

* ENT-2489: Fix for RpcWorkerTest.

Add `NetworkMapUpdater` to `FlowWorkerServiceHub` or else no-one will ever send a signal on `networkMapCache.nodeReady` future.
Not having `networkMapCache.nodeReady` in completed state, will prevent SMM from operating properly.

* ENT-2489: Handle gracefully the fact that session might be already closed.

* ENT-2489: Fix incorrect merge from `master`.

* ENT-2489: Make `RPCOpsRouting` generic with regard to `RPCOps` following discussion with @mnesbit

* ENT-2489: Make `methodTable` uniform for all the legal names.

* ENT-2489: Make `ObservableContext` non-generic.

* ENT-2489: Tidy-up shutdown sequence post merge from `master`

* ENT-2489: Correct exception type thrown

* ENT-2489: Generics test compilation fix.
2018-09-19 11:04:37 +01:00
7b4c4803b9 isRelevant didn't work for composite ownership, it's now fixed (under certain assumptions). (#3967) 2018-09-19 10:03:16 +01:00
dbee84c01d ENT-2489: Perform cleaner shutdown of Rpc/Flow workers (#1398)
* ENT-2489: Perform cleaner shutdown of P2P connections.

* ENT-2489: SessionFactory tidy-up

* ENT-2489: Tidy-up RpcFlowWorkerDriver shutdown sequence

* ENT-2489: Fix test compilation issue.

* ENT-2489: Introduce helper function following review from @mnesbit
2018-09-18 17:54:08 +01:00
c9bce39696 Fixed parsing of --network-root-truststore so that it defaults to the base dir correctly (#3958) 2018-09-18 17:38:36 +01:00
b264d4cc20 [CORDA-1971]: Improve error code derivation (#3956) 2018-09-18 13:04:59 +02:00
5113f4c8c1 [CORDA-1941]: Server-side draining node shutdown. (#3909) 2018-09-18 13:04:26 +02:00
df6903b52f Merge remote-tracking branch 'open/master' into os-merge-c79dd80 2018-09-17 17:39:03 +01:00
1c4294f42d CORDA-1982: Convert the --base-directory to an absolute path to avoid issues on start up (#3952)
Also the --network-root-truststore default value has been corrected to be relative to the base dir.

The cliutils has been updated to always convert Path cmd line params to be absolute
2018-09-17 17:38:28 +01:00
e7d32055e5 OS sync 2018-09-17 17:37:14 +01:00
d22bab98fa Merge remote-tracking branch 'open/master' into os-merge-c79dd80
# Conflicts:
#	docs/source/changelog.rst
#	docs/source/clientrpc.rst
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/rpc/RpcExceptionHandlingTest.kt
#	node/src/main/kotlin/net/corda/node/internal/rpc/proxies/ExceptionMaskingRpcOpsProxy.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/DriverDSLImpl.kt
2018-09-17 17:12:50 +01:00
c79dd8017d CORDA-1264: Mask internal errors if devMode is false (#3942) 2018-09-17 15:44:51 +01:00
a10323ed0f Merge commit 'df4699c69abc8aab7e1e44b602c762212cbf93f6' into chrisr3-os-merge 2018-09-17 14:01:09 +01:00
df4699c69a CORDA-1985: Configure Gradle capsule plugin to use Capsule 1.0.3. (#3949) 2018-09-17 13:55:31 +01:00
137f7664c1 CORDA-1986 Ensure key alias format is supported by the major HSM vendors (#3950) 2018-09-17 10:19:34 +01:00
0b2e0b04ec CORDA-1979 Cleanup NodeStartup for better readability (#3946) 2018-09-15 23:17:10 +01:00
925af20339 Merge remote-tracking branch 'open/master' into anthony-os-merge-20190914-2
# Conflicts:
#	docs/source/index.rst
#	docs/source/running-a-node.rst
#	node/build.gradle
2018-09-14 16:45:40 +01:00
356bddb2d4 check for empty rpc keystore/trustore passwords + extract method refactoring. (#3944) 2018-09-14 15:32:24 +01:00
5be7d5c4f1 CORDA-1959 - Enforce backwards compatibility of new CLI's (#3939)
* enforce backwards compatibility of new CLI's

* move Shell yml
2018-09-14 14:37:52 +01:00
9a33a7f51f Merge pull request #1392 from corda/anthony-os-merge-20180914
Anthony O/S Merge 14/9/2018
2018-09-14 11:46:11 +01:00
271146dd4d ENT-2489: Improve logging for MultiThreadedStateMachineManager. (#1389) 2018-09-14 11:02:04 +01:00
bce4e54156 Merge remote-tracking branch 'open/master' into anthony-os-merge-20180914
# Conflicts:
#	build.gradle
#	node/capsule/build.gradle
2018-09-14 10:16:48 +01:00
3c9619b169 ENT-2489: Minor logging improvement for SingleThreadedStateMachineManager. (#3936) 2018-09-13 15:35:22 +01:00
4602a21a35 Merge pull request #1391 from corda/chrisr3-os-merge
Merge from Open Source
2018-09-13 15:14:50 +01:00
725441b39c Minor changes to bring in-sync with OS (#1390) 2018-09-13 12:53:06 +01:00
fba96a53fa Update remaining shadow plugin usages, remove cordform-common from,node. 2018-09-13 11:42:58 +01:00
046b104fee CORDA-1764: Make shell use picocli for parsing command line options (#3923)
* Fix link in shell documentation

* The TypeSafe config parser wants extensions.sshd to be present in the config even though extensions is nullable

* Temp commit

* Make Standalone Shell use picocli

* Simplify gradle config for bootstrapper

* Fix logging dependency issues

* Revert "Temp commit"

This reverts commit f4efafcc9d.

* Fix quasarExcludeExpression

* Correct bootstrapper configuration

* Correct CRaSH capitalisation in docs

* Fix unit tests

* Fix help text typo

* Make logging level case insensitive

* Fix CRaSH capitalisation in help text

* Fix unit tests
2018-09-13 11:14:31 +01:00
96597ba084 Merge commit '1c7dfd4b7b310e86b8aa973b8350487ba63c08b1' into chrisr3-os-merge 2018-09-13 11:06:52 +01:00
1c7dfd4b7b CORDA-1964: Unify versioning of the shadow plugin, and resolve more issues for Gradle 5.0. (#3918) 2018-09-13 10:55:52 +01:00
057ee74611 Single node notary thread safety (#3924) 2018-09-12 13:36:04 +01:00
445ffc8404 Merge remote-tracking branch 'open/master' into os-merge-90a7dd2
# Conflicts:
#	core/src/main/kotlin/net/corda/core/crypto/internal/ProviderMap.kt
#	core/src/main/kotlin/net/corda/core/messaging/CordaRPCOps.kt
#	core/src/main/kotlin/net/corda/core/utilities/ByteArrays.kt
#	finance/src/main/resources/migration/cash.changelog-master.xml
#	finance/src/main/resources/migration/commercial-paper.changelog-master.xml
#	finance/src/test/kotlin/net/corda/finance/flows/CashIssueFlowTests.kt
#	node/src/integration-test/kotlin/net/corda/node/flows/FlowRetryTest.kt
#	node/src/integration-test/kotlin/net/corda/node/modes/draining/P2PFlowsDrainingModeTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/statemachine/HardRestartTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/P2PMessagingTest.kt
#	node/src/main/kotlin/net/corda/node/Corda.kt
#	node/src/main/kotlin/net/corda/node/services/keys/PersistentKeyManagementService.kt
#	node/src/main/kotlin/net/corda/node/services/persistence/DBCheckpointStorage.kt
2018-09-12 11:37:11 +01:00
90a7dd2bf4 ENT-2489: Fix serialization for some of the CordaExceptions. (#3925)
Also add a unit test that exposes the problem.

Without these changes AMQP serialization fails with the following:
```
 net.corda.serialization.internal.amqp.AMQPNotSerializableException: Constructor parameter - "reason" -  doesn't refer to a property of "class net.corda.node.services.statemachine.SessionRejectException"
	at net.corda.serialization.internal.amqp.SerializationHelperKt.toPropertyAccessorConstructor(SerializationHelper.kt:120) ~[corda-serialization-4.0-SNAPSHOT.jar:?]
	at net.corda.serialization.internal.amqp.SerializationHelperKt.propertiesForSerializationFromConstructor(SerializationHelper.kt:107) ~[corda-serialization-4.0-SNAPSHOT.jar:?]
	at net.corda.serialization.internal.amqp.custom.ThrowableSerializer.toProxy(ThrowableSerializer.kt:28) [corda-serialization-4.0-SNAPSHOT.jar:?]
	at net.corda.serialization.internal.amqp.custom.ThrowableSerializer.toProxy(ThrowableSerializer.kt:12) [corda-serialization-4.0-SNAPSHOT.jar:?]
	at net.corda.serialization.internal.amqp.CustomSerializer$Proxy.writeDescribedObject(CustomSerializer.kt:159) [corda-serialization-4.0-SNAPSHOT.jar:?]
```
2018-09-12 11:29:36 +01:00
ca5d88e65a Minor changes made in ENT which should have been ported over (#3932) 2018-09-12 11:26:37 +01:00
6f3a6cb584 Merge remote-tracking branch 'open/master' into vkolomeyko/OS-merge
# Conflicts:
#	build.gradle
2018-09-12 09:54:58 +01:00
f5768348ee More descriptive message on "latest" supported Java version. (#3929)
Also a TODO to reconsider the auto-resume registration functionality.
2018-09-11 17:39:19 +01:00
45b2417910 Merge remote-tracking branch 'open/master' into os-merge-7459115
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/amqp/ProtonWrapperTests.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	tools/shell/src/integration-test/kotlin/net/corda/tools/shell/InteractiveShellIntegrationTest.kt
2018-09-11 13:26:48 +01:00
7459115f54 CORDA-1969 Retire SECP256K1 for TLS (#3920)
* Flag SECP256K1 as not supported for TLS

* Remove authentication tests using SECP256K1 for TLS

* Remove K1 leftover
2018-09-11 13:04:29 +01:00
8bc46d9f7d Porting over missing CRL soft fail check unit test from ENT (#3926) 2018-09-11 13:02:02 +01:00
3ff7fc2585 CORDA-1968 Ensure we check for the trustroot existence and alias validity. (#3917)
* Ensure we check for the trustroot existence and alias validity.

* fix missing keystore message on integration test after changes.

* adding more requirements to check for missing aliases to validateKeyStores

* import X509Utilities const values (CORDA_ROOT_CA, CORDA_CLIENT_CA, CORDA_CLIENT_TLS) to AbstractNode.

* address review comment: avoid using !! (not null)
2018-09-11 12:37:21 +01:00
4ffe2960db Merge pull request #1379 from corda/os-merge-d56a80d
O/S merge d56a80d
2018-09-10 13:23:22 +01:00
ec55397335 Record Hikari metrics (#3912) 2018-09-10 13:13:58 +01:00
cc58a0c34a ENT-2414 Cache trace capture (#1372)
* Refactor cache tracing so it is available in core (without pulling in any extra dependencies

* Wrap all named caches in trace wrapper (if configured to create traces)

* Remove special case for NodeVaultService and initialise CacheTracing config as soon as possible.

* Keep checkCacheName internal

* Revert back to use Google Longs class rather than hand-rolled code.

* Add comment explaining unusual location of initialisation code.

* Code review rework
2018-09-10 11:56:39 +01:00