Commit Graph

13381 Commits

Author SHA1 Message Date
dd5859dfc9 Merge Open source up to commit '92d2e4ae38a2af27748245221d0470cdb0ddac0c' 2018-10-02 11:30:11 +01:00
92d2e4ae38 Corda-1931 Asynchronous logging (#3989)
* Provide AsyncLoggingContextSelector that inhibits use of thread local storage

* Turn on async logging via log4j properties file

* Mention async logging in the documentation and also explain how to turn it off when required.

* Formatting

* Typo

* Add shutdown hook to flush loggers.

* code review rework

* Ring buffer size to 256kB

* Set maximal log file size to 100MB - should slow down the rolling of log files and give us a bit more history on the cluster.
The old limit of max 10GB of compressed log files still stands.
2018-10-02 10:33:17 +01:00
4a4e179061 Merge pull request #1430 from corda/vkolomeyko/OS-merge
OS->Ent merge
2018-10-01 16:56:41 +01:00
63ae29d153 OS->Ent merge 2018-10-01 14:45:01 +01:00
8bbc0d9f43 ENT-2431 Add caching metrics, consolidate tracing config and better default cache sizes (#1418) 2018-10-01 14:28:03 +01:00
5a79f439db ENT-2500: Introduce optional BridgeMetricsService in nodeApi module (#4001)
* ENT-2500: Introduce optional BridgeAuditService in `nodeApi` module

* ENT-2500: Rename audit to metrics service and add more traps to capture stats.
2018-10-01 14:27:01 +01:00
532d95ccac ENT-1565 Enable the use of BoringSSL (#1358)
* BoringSsl dependency

* Merge over boring_ssl changes

* Merge over boring_ssl changes

*  Upgrade netty-tcnative (and netty to compatible version)

* Add openSSL flag to SSLConfiguration and implementations.

* Make SSL implementation switchable for Artemis

* Parameterize AMQP bridge tests on use of openSSL

* Plumb through open SSL flag to AMQP client/server.

* Add open ssl flag to reference.conf

* Slight clean-up

* Add LoggingTrustManagerWrapper for OpenSsl contexts

* Remove unneeded lazy and check for double wrapping

* Fix TrustMangerWrapper and test, clean-up

* Add key factory wrapper to get the current certificate chain out.

* Use cert chain returning key mananager factory to get local cert

* Force consistent netty-tcnative version across all dependencies

* Make proton wrapper tests check all combinations of client/server native/java SSL

* Add test netty server/client to run SSL tests with

* Simplify usage of test netty components and clean up

* Improve exception handling in NettyTestHandler

* Add openSSL test for X509UtilitiesTests

* Expose engine for test usage

* Add the X509 peer chain check from the socket based test

* Port of TLSAuthenticationTests to use Netty so we can use different SSL providers, add boringSSL tests

* Adapt tests to new config structure

* Readd `useOpenSsl` configuration

* Readd `useOpenSsl` configuration

* Fix up ArtemisTransport for OpenSSL plus tests

* Adapt auth tests

* Formatting

* Remove obsolte file

* Fix config misnomer

* Add SNI host logic to OpenSSL execution branch

* Remove TLS_DHE_RSA tests

* Make exception handling in the netty test infra deterministic
2018-10-01 13:59:52 +01:00
9979035280 Merge pull request #1415 from corda/anthony/features/ENT-2256
ENT-2256: Make database manager use picocli base class
2018-10-01 13:48:45 +01:00
a37e6c2779 Database setup documentation improvements based on questions in ENT-2421. (#1425)
Database docs improvements 1) based on questions raised by customer in 'ENT-2421 Database Migration Tool limitations - Oracle database' 2) lack of SQL Server JDBC URL example 3) some typos fixed
2018-10-01 13:06:21 +01:00
f2c0beb8d0 ENT-2530 Corda fails when running against PostgreSQL with uppercase schema namespace. (#1412)
Fix Liquibase quoting strategy for PostgreSQL to follow Corda convention.
In Liquibase for Postgres if schema name has uppercase or lowercase characters only then Liquibase would send it without double quotes and effectively make them lowercase.
Alter Postgres Liquibase dialect to wrap schema names in double quotes. This allows e.g. schemaName=ALICE be send as "ALICE" by Liquibase.
Corda persistence was already wrapping with double quotes, but certain cases in Liquibase were not following this. The result was that SQL run by Liquibase couldn't find schema (e.g. select ALICE.tablename ... in Postgres matched alice schema name not ALICE one).
The fix enables one integration test to be run now against standalone databases.
2018-10-01 12:04:57 +01:00
6980835e8c [CORDA-2044] Allow more signature schemes to TestUtils (#4002) 2018-10-01 10:41:03 +01:00
0f9be80ab9 Addressing review comments 2018-10-01 09:58:08 +01:00
da97f7bd82 Merge branch 'master' into anthony/features/ENT-2256 2018-10-01 09:57:13 +01:00
b3b327c135 ENT-1906: Upgrade DJVM to use ASM 6.2.1. (#4000) 2018-09-28 11:53:25 +01:00
842eac5c43 [CORDA-1926] Implement target version and min platform version (#3899)
https://r3-cev.atlassian.net/browse/CORDA-1926
2018-09-28 09:46:06 +01:00
06150371ad CORDA-1726 Make sure test frameworks and nodes refuse to start on any… (#3993)
* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions

Move isValidJavaVersion(), hasMinimumJavaVersion() to Node as it can be use for check in DriverDSL for starting in-process node,
in-process node doesn't go via NodeStartup class where the correct Java version is checked.

Added safeguard to hasMinimumJavaVersion as some JDKs distributions may not have the update version number (e.g. AdoptOpenJDK) which causes unintended parse exception.

* CORDA-1726 Make sure test frameworks and nodes refuse to start on anything except the right Java versions - remove new test, for proper testing this would use reflection and field setting visibility modifiers which easly can has side effects on the subsequent tests

* Addressing PR comments.
2018-09-27 19:01:01 +01:00
d35a47bc82 ENT-1906: Update DJVM to load deterministic rt.jar into sandbox. (#3973)
* Update DJVM to load deterministic rt.jar into sandbox.
* Disallow invocations of notify(), notifyAll() and wait() APIs.
* Pass entire derivedMember to MemberVisitorImpl.
* Updates after review.
* Refactor MethodBody handlers to use EmitterModule.
2018-09-27 17:28:22 +01:00
6404dc3391 Merge pull request #1424 from corda/christians/os-merge-adcd0d4
Merge OS up to adcd0c4
2018-09-27 16:40:47 +01:00
e92ad538cf CORDA-2031 put "AlgorithmParameters.SHA256WITHECDSA" to BC (#3997) 2018-09-27 15:21:12 +01:00
325336e4c3 Merge commit 'adcd0d45dfd5433a70a551c49b5c828f13667606' into christians/os-merge-adcd0d4 2018-09-27 15:03:25 +01:00
adcd0d45df Release not for retirment of TLS_DHE_RSA (#3996) 2018-09-27 13:57:04 +01:00
2286a59a49 Adds an example of nested extraConfig options (#3995)
* Update generating-a-node.rst

* Update generating-a-node.rst

* Update generating-a-node.rst
2018-09-27 13:24:24 +01:00
8d5f5341e1 Docs: Add instructions for Fedora (#3986)
* Add setup instructions for `Fedora`

* Update `CONTRIBUTORS.md`
2018-09-27 12:05:44 +01:00
8982fde5a2 Removes unnecessary caption. (#3994)
See the current output here: https://docs.corda.net/head/serialization-index.html.
2018-09-27 09:21:02 +01:00
0650ef0416 Documents default and configurable keystore passwords. Clean-up. (#3988)
* Documents default and configurable keystore passwords. Clean-up.

* Addresses review feedback.

* Review feedback. Splitting up permissiong.rst.

* Review feedback.
2018-09-27 09:16:17 +01:00
4a126849fb Update tutorial-cordapp.rst (#3980) 2018-09-26 16:11:10 +01:00
957537547f disable dependency on pdf docs for building enterprise 2018-09-26 13:39:39 +01:00
6f27898664 CORDA-1509 Configure and enable Gradle Build Cache (#3908)
* Fix to enable gradle build caching of test runs.

* Configure gradle build caching to be enabled.

* Generate dependency report and graph:
1) ./gradlew htmlDependencyReport
2) ./gradlew generateDependencyGraphCorda

* Strip out all Jacoco references to prevent Gradle Build Cache error:
"Caching disabled for task ':<module>:test': 'JaCoCo agent configured with `append = true`' satisfied"

* Revert jacoco back into jarFilter gradle build file.
Disable building deterministic modules (including jarFilter).

* Added Gradle build scan plugin.

* Set file encoding to prevent incorrect Gradle build cache keys across different machines.
https://guides.gradle.org/using-build-cache/#system_file_encoding

* Apply gradle build cache settings to buildSrc.

* Added targetted gradle build tasks to leverage cache.

* Updated URL's of several different test Gradle Cache instances.

* Updated CI batch build scripts.

* Updated script perms to be executable.

* Added CI smoke tests batch script.

* Use TestDev Labs gradle cache.

* Echo URL of Gradle Build Repository.
Echo exit status of each Gradle build command.

* Use environment variables to define Gradle Build Cache usage and URL.

* Customisation through parameters.

* Remove dependency graph generation plugin.
Align build cache settings across project and buildSrc gradle files.

* Remove buildSrc gradle build cache config.

* Revert definition of gradle build cache variables back to settings.gradle.

* Fix incorrect path.

* Aligned gradle build cache configuration across buildSrc and project.

* Minor updates to test scope.

* Minor updates to test scope.

* Update scripts to use GRADLE_HOME

* Exit on unset GRADLE_HOME

* Remove duplication following rebase from master.

* Remove fine-grained build task scripts.

* Added back Jacoco reporting.

* Revert jdk8u-deterministic module.

* Incorporating changes from PR review feedback.

* Workaround Jacoco issue associated with Gradle Build Cache test task.

* Update init script.

* Remove redundant build-scan declarations.

* Updates from PR review feedback.

* Remove GRADLE_HOME as no longer needed - everything is driven via gradle wrapper.

* Use CORDA prefix in system environment variable.
2018-09-26 13:38:23 +01:00
fec566fab6 disable tarball on OS X (#1416) 2018-09-26 12:38:38 +01:00
63c2fb722f Merge pull request #1413 from corda/mkit-os-merge-73a1b8461acc66d6447214a23de42458cb561783
MKIT OS->ENT merge
2018-09-25 22:58:56 +01:00
878bd4da8c Remove TLS_DHE_RSA cipher family (#3987) 2018-09-25 22:58:47 +01:00
a53a90c109 Merge OS->ENT up to 73a1b8461a 2018-09-25 21:24:47 +01:00
f05f6f2bc7 Make config file parsing lenient 2018-09-25 17:53:20 +01:00
58a56278c1 Fix description 2018-09-25 16:51:50 +01:00
b3307eaecb Make database manager use picocli base class withstandardised options 2018-09-25 16:48:29 +01:00
73a1b8461a CORDA-2012 Copying all certificates from the network-turst-store (#3983)
* CORDA-2012 Copying all certificates from the network-turst-store to the node's trust store

* Addressing review comments
2018-09-25 15:38:08 +01:00
02ae92fc87 Merge pull request #1409 from corda/parkri-os-merge-20180924-2
OS -> ENT merge
2018-09-24 17:19:51 +01:00
23489e62e4 Merge remote-tracking branch 'remotes/open/master' into parkri-os-merge-20180924-2 2018-09-24 15:35:08 +01:00
05fe50d9f8 ENT-2431: Expose cache factory further down the class hierarchy of AsbtractNode. (#3984) 2018-09-24 15:01:47 +01:00
0a611afa55 Various clean ups of the docs example code (#3982)
* Consistent separation of Java and Kotlin sources via package names only
* Renamed the Kotlin tutorial files to match the class names
* Added Java example of LaunchSpaceshipFlow
2018-09-24 15:00:31 +01:00
1001f4e814 Merge pull request #1408 from corda/parkri-os-merge-20180924-1
OS -> ENT merge
2018-09-24 13:09:50 +01:00
b10355a7f9 Update CONTRIBUTORS.md 2018-09-24 12:09:05 +01:00
d915c413c6 Enterprise only compilation fixes. 2018-09-24 11:16:15 +01:00
bca2d50e31 Fix bad merge conflict resolution. 2018-09-24 10:34:26 +01:00
5469e41458 Merge remote-tracking branch 'remotes/open/master' into parkri-os-merge-20180924-1
# Conflicts:
#	core/src/main/kotlin/net/corda/core/internal/NamedCache.kt
#	docs/source/index.rst
#	node/src/integration-test/kotlin/net/corda/node/services/messaging/ArtemisMessagingTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/PersistentNetworkMapCacheTest.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/services/messaging/P2PMessageDeduplicator.kt
#	node/src/main/kotlin/net/corda/node/services/messaging/P2PMessagingClient.kt
#	node/src/main/kotlin/net/corda/node/services/persistence/DBTransactionStorage.kt
2018-09-24 10:13:01 +01:00
965f9ce528 ENT-2431 Lay foundations for caching metrics (#3955) 2018-09-24 09:55:56 +01:00
7159dfcb61 CORDA-1787 Bring threat model into the docsite (#3817)
* CORDA-1787 bring threat model into docs site

* CORDA-1787 updating with full text

* CORDA-1787 update/fix typos

* CORDA-1787 update threat model with PR feedback

* CORDA-1787 fix typos

* CORDA-1787 move threat model into design section

* CORDA-1787 update formatting using pure markdown
2018-09-21 18:48:47 +01:00
9657c03544 ENT-2253 NonStop database - NonStop SQLMX Hibernate dialect doesn't support Hibernate validation and the value is left blank. (#1400) 2018-09-21 17:10:27 +01:00
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
f93c7a8034 Merge pull request #1404 from corda/bogdan-merge-210918
Bogdan merge OS-ENT 210918 (SNI header)
2018-09-21 14:25:58 +01:00