Commit Graph

9354 Commits

Author SHA1 Message Date
Ryan Fowler
2ca10464b7
CORDA-3845: Update BC, log4j, slf4j (#6464)
* CORDA-3845: Update BC to 1.64

* CORDA-3845: Upgraded log4j to 2.13.3

* We can remove the use of Manifests from the logging package so that when _it_ logs it doesn't error on the fact the stream was already closed by the default Java logger.

* Some more tidy up

* Remove the logging package as a plugin

* latest BC version

* Remove old test

* fix up

* Fix some rebased changes to log file handling

* Fix some rebased changes to log file handling

* Update slf4j too

Co-authored-by: Adel El-Beik <adel.el-beik@r3.com>
2020-07-23 16:37:29 +01:00
Yiftach Kaplan
4acf41ea3d
INFRA-477: Start nodes in parallel when possible (#6460)
Co-authored-by: Ross Nicoll <ross.nicoll@r3.com>
2020-07-23 16:35:34 +01:00
Ross Nicoll
05c2428f2f
NOTICK Add more detail on signature build failures (#6510)
Add details of the signature provider and key algorithm if `InvalidKeyException` is thrown when constructing a `ContentSigner`, in order to be able to usefully diagnose incorrect signature providers or similar errors.
2020-07-23 15:17:59 +01:00
Christian Sailer
db94f65d8a Merge remote-tracking branch 'origin/release/os/4.6' into christians/ENT-5273-update-from-os-4.6 2020-07-23 14:02:18 +01:00
Waldemar Zurowski
0b1ccb48d0 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-23 2020-07-23 11:31:43 +01:00
Waldemar Żurowski
6a51a3fe1f
Merge pull request #6509 from corda/wz/merge-os-44-45-2020-07-23
NOTICK: Merging forward Jenkins configuration updates from OS 4.4 to OS 4.5
2020-07-23 11:29:31 +01:00
Waldemar Zurowski
2e6bd97fe9 Updates
* INFRA-508: NexusIQ stage for GA releases updated to `release`
* do not truncate stdio when collecting JUnit tests
2020-07-23 10:46:32 +01:00
Waldemar Zurowski
49c86af354 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2020-07-23 2020-07-23 10:39:12 +01:00
Waldemar Żurowski
14279a30cc
INFRA-508: NexusIQ stage for GA releases updated to release (#6508) 2020-07-23 10:36:48 +01:00
Waldemar Zurowski
4e0ebefbcc Merge branch 'release/os/4.5' into release/os/4.6 2020-07-22 19:56:07 +01:00
Waldemar Zurowski
136743ae61 Merge branch 'release/os/4.4' into release/os/4.5 2020-07-22 19:55:12 +01:00
Waldemar Zurowski
f60f06a85f INFRA-508: Change appID in sonatype stage for Corda and Corda Enterprise 2020-07-22 19:54:41 +01:00
Waldemar Zurowski
8a4e522227 Merge branch 'release/os/4.5' into release/os/4.6 2020-07-22 19:45:50 +01:00
Waldemar Zurowski
4d03bcb7ed Merge branch 'release/os/4.4' into release/os/4.5 2020-07-22 19:44:21 +01:00
Waldemar Zurowski
0842ea26b7 NOTICK: Backport Jenkins configuration for nightly builds to release 4.4 2020-07-22 19:43:08 +01:00
Waldemar Zurowski
b1571cc241 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-22 2020-07-22 19:35:49 +01:00
Joseph Zuniga-Daly
c33720c73d
CORDA-3717: Apply custom serializers to checkpoints (#6392)
* CORDA-3717: Apply custom serializers to checkpoints

* Remove try/catch to fix TooGenericExceptionCaught detekt rule

* Rename exception

* Extract method

* Put calls to the userSerializer on their own lines to improve readability

* Remove unused constructors from exception

* Remove unused proxyType field

* Give field a descriptive name

* Explain why we are looking for two type parameters when we only use one

* Tidy up the fetching of types

* Use 0 seconds when forcing a flow checkpoint inside test

* Add test to check references are restored correctly

* Add CheckpointCustomSerializer interface

* Wire up the new CheckpointCustomSerializer interface

* Use kryo default for abstract classes

* Remove unused imports

* Remove need for external library in tests

* Make file match original to remove from diff

* Remove maySkipCheckpoint from calls to sleep

* Add newline to end of file

* Test custom serializers mapped to interfaces

* Test serializer configured with abstract class

* Move test into its own package

* Rename test

* Move flows and serializers into their own source file

* Move broken map into its own source file

* Delete comment now source file is simpler

* Rename class to have a shorter name

* Add tests that run the checkpoint serializer directly

* Check serialization of final classes

* Register as default unless the target class is final

* Test PublicKey serializer has not been overridden

* Add a broken serializer for EdDSAPublicKey to make test more robust

* Split serializer registration into default and non-default registrations. Run registrations at the right time to preserve Cordas own custom serializers.

* Check for duplicate custom checkpoint serializers

* Add doc comments

* Add doc comments to CustomSerializerCheckpointAdaptor

* Add test to check duplicate serializers are logged

* Do not log the duplicate serializer warning when the duplicate is the same class

* Update doc comment for CheckpointCustomSerializer

* Sort serializers by classname so we are not registering in an unknown or random order

* Add test to serialize a class that references itself

* Store custom serializer type in the Kryo stream so we can spot when a different serializer is being used to deserialize

* Testing has shown that registering custom serializers as default is more robust when adding new cordapps

* Remove new line character

* Remove unused imports

* Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt

* Remove comment

* Update comment on exception

* Make CustomSerializerCheckpointAdaptor internal

* Revert "Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt"

This reverts commit b835de79bd.

* Restore "Add interface net.corda.core.serialization.CheckpointCustomSerializer to api-current.txt""

This reverts commit 718873a4e9.

* Pass the class loader instead of the context

* Do less work in test setup

* Make the serialization context unique for CustomCheckpointSerializerTest so we get a new Kryo pool for the test

* Rebuild the Kryo pool for the given context when we change custom serializers

* Rebuild all Kryo pools on serializer change to keep serializer list consistent

* Move the custom serializer list into CheckpointSerializationContext to reduce scope from global to a serialization context

* Remove unused imports

* Make the new checkpointCustomSerializers property default to the empty list

* Delegate implementation using kotlin language feature
2020-07-22 17:31:59 +01:00
Ross Nicoll
8cf3fa4ac8
CORDA-3916 Update to BouncyCastle 1.61 (#6492)
Update to BouncyCastle 1.61. Updating one version at a time to mitigate risk of a complex breaking change being introduced.
2020-07-22 16:35:03 +01:00
Dan Newton
a41152edf6
CORDA-3899 Refactor flow's transient fields (#6441)
Refactor `FlowStateMachineImpl.transientValues` and
`FlowStateMachineImpl.transientState` to stop the fields from exposing
the fact that they are nullable.

This is done by having private backing fields `transientValuesReference`
and `transientStateReference` that can be null. The nullability is still
needed due to serialisation and deserialisation of flow fibers. The
fields are transient and therefore will be null when reloaded from the
database.

Getters and setters hide the private field, allowing a non-null field to
returned.

There is no point other than in `FlowCreator` where the transient fields
can be null. Therefore the non null checks that are being made are
valid.

Add custom kryo serialisation and deserialisation to `TransientValues`
and `StateMachineState` to ensure that neither of the objects are ever
touched by kryo.
2020-07-22 16:19:20 +01:00
Waldemar Żurowski
d810067ab6
NOTICK: Fixed for JDK11 builds (#6501)
* NexusIQ every build related to Corda X.Y (GA, RC, HC, patch or
  snapshot) uses the same NexusIQ application
* NexusIQ application application has to exist before a build starts
* Fixed repository name for publishing, use OS instead of Ent one
2020-07-22 14:43:14 +01:00
Waldemar Zurowski
8ee070953a Merge branch 'release/os/4.5' into wz/merge-os-45-46-2020-07-22 2020-07-22 13:00:42 +01:00
Waldemar Zurowski
6413873f68 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2020-07-22 2020-07-22 12:57:45 +01:00
Waldemar Żurowski
05532c0419
NexusIQ updates (#6499)
* every build related to Corda X.Y (GA, RC, HC, patch or snapshot) uses
  the same NexusIQ application
* NexusIQ application application *has* to exist before a build starts
2020-07-22 12:41:22 +01:00
Waldemar Żurowski
ca37b9b737
PR Code Checks use standard Jenkins agent (#6496) 2020-07-22 09:26:39 +01:00
Ross Nicoll
cd4626d8c2
CORDA-3917 Update to Jackson 2.9.8 (#6493)
* Update to Jackson 2.9.8 to address multiple security issues, and update warning note about
updates to clarify that it refers to 2.10+. When the note was added 2.9.7 as the highest
available version in the 2.9.x series.
* Add PR code checks Jenkinsfile
2020-07-22 09:08:49 +01:00
Yiftach Kaplan
a03fb8c6fd
INFRA-438: Close session factory before closing the locator (#6477) 2020-07-21 18:10:09 +01:00
Waldemar Żurowski
1924e5a7d1
Merge pull request #6491 from corda/wz/merge-45-46-2020-07-21
NOTICK: Empty JUnit results are not allowed
2020-07-21 16:05:22 +01:00
Waldemar Zurowski
a90197ed81 Merge branch 'release/os/4.5' into wz/merge-45-46-2020-07-21 2020-07-21 15:59:07 +01:00
Waldemar Żurowski
e7f4e4f717
Merge pull request #6490 from corda/wz/merge-44-45-2020-07-21
NOTICK: Empty JUnit results are not allowed
2020-07-21 15:58:09 +01:00
Waldemar Zurowski
5ee2626530 Empty JUnit results are not allowed 2020-07-21 15:55:56 +01:00
Waldemar Zurowski
35d0d5c510 Merge branch 'release/os/4.4' into wz/merge-44-45-2020-07-21 2020-07-21 15:53:59 +01:00
Waldemar Żurowski
b52b242837
Merge pull request #6489 from corda/wz/merge-43-44-2020-07-21
NOTICK: Empty JUnit results are not allowed
2020-07-21 15:52:53 +01:00
Waldemar Zurowski
7437630d56 Empty JUnit results are not allowed 2020-07-21 15:50:21 +01:00
Waldemar Zurowski
969ee34b0a Merge branch 'release/os/4.3' into wz/merge-43-44-2020-07-21 2020-07-21 15:47:01 +01:00
Waldemar Żurowski
50c51d3e6f
Empty JUnit results are not allowed (#6488) 2020-07-21 15:42:57 +01:00
Christian Sailer
377c3f9d78 Merge remote-tracking branch 'origin/release/os/4.6' into christians/ENT-5273-update-from-os-4.6 2020-07-21 14:17:27 +01:00
Dimos Raptis
7261fa690f
CORDA-3506 - Implement session close operations (#6357) 2020-07-21 13:26:11 +01:00
Stefano Franz
c6cfe1ecf3
Merge pull request #6485 from corda/vkolomeyko/os-4.5-os-4.6-merge
NOTICK: OS 4.5 to OS 4.6 merge
2020-07-21 13:13:58 +02:00
Viktor Kolomeyko
234ac2c246 Merge remote-tracking branch 'origin/release/os/4.5' into vkolomeyko/os-4.5-os-4.6-merge 2020-07-21 10:29:07 +01:00
Viktor Kolomeyko
1c48418904
NOTICK: Remove relaxedThoroughness variable (#6483)
It is:
a. No longer works in Jenkins
b. May result spawning 100s of process that kill Windows build. Evidence: https://ci02.dev.r3.com/blue/organizations/jenkins/Corda-Enterprise%2FCorda-ENT-MS-Win-Compatibility%2Fenterprise/detail/PR-3553/25/pipeline/
2020-07-21 09:58:29 +01:00
Rick Parker
3b6a3f6fff
Merge pull request #6481 from corda/vkolomeyko/os-4.5-os-4.6-merge
NOTICK: OS 4.5 -> OS 4.6 merge
2020-07-20 17:36:03 +01:00
Viktor Kolomeyko
3e9a8cdfcd Merge remote-tracking branch 'origin/release/os/4.5' into vkolomeyko/os-4.5-os-4.6-merge 2020-07-20 15:16:33 +01:00
Kyriakos Tharrouniatis
5fef0726a2
Add missing 'Suspendable' annotations to suspending methods (#6480) 2020-07-20 15:09:26 +01:00
Matthew Nesbit
2a84108e13
Merge pull request #6479 from corda/vkolomeyko/os-4.4-os-4.5-merge
NOTICK: OS 4.4 -> OS 4.5 merge
2020-07-20 13:58:00 +01:00
Viktor Kolomeyko
4491abd7ba Merge remote-tracking branch 'origin/release/os/4.4' into vkolomeyko/os-4.4-os-4.5-merge 2020-07-20 11:51:08 +01:00
Ryan Fowler
d4444e520a
ENT-5140: Tighten network parameters checks (#6390)
* ENT-5140: Tighten network parameters checks
2020-07-20 11:26:27 +01:00
jakubbielawa
3721b7c701
Decrease the ring buffer size (#6470) 2020-07-20 11:14:23 +01:00
Dimos Raptis
e5a8351dc3
ENT-5437 - Add test for sendAll with multiple sessions from the same party (#6476) 2020-07-20 11:13:49 +01:00
Oliver Knowles
a500084d38
CORDA-3201 - Enforce separate key for notary identity (#6308) 2020-07-20 10:59:08 +01:00
Yiftach Kaplan
e6d5842a23
INFRA-482: Correct exception caught testing for node death (#6471) 2020-07-17 13:57:40 +01:00