Commit Graph

9422 Commits

Author SHA1 Message Date
Ramzi El-Yafi
e40cd22c4f
Merge pull request #7042 from corda/ramzi/os-48-49-merge
NOTICK Merge OS 4.8 -> OS 4.9 21/01/22
2022-01-24 09:51:27 +00:00
LWogan
f0b7d0a2c8 Merge remote-tracking branch 'origin/release/os/4.9' into ramzi/os-48-49-merge 2022-01-21 15:15:21 +00:00
Viktor Kolomeyko
50c226c29d
ENT-6025: Change the error code after Artemis upgrade (#7041)
Artemis Upgrade (2.17.1) changed the error code for the message we are using to for message acknowledgement in `onLinkRemoteClose`.
More details can be found here: https://issues.apache.org/jira/browse/ARTEMIS-1018
2022-01-21 12:46:09 +00:00
Ramzi El-Yafi
831f6d60cc Merge remote-tracking branch 'origin/release/os/4.8' into ramzi/os-48-49-merge 2022-01-21 10:55:29 +00:00
Viktor Kolomeyko
835321bb70
ENT-6286: OS: Upgrade version of Artemis to 2.19.1 (#6975)
Fixes DDoS attack mentioned on the Jira ticket.

PR upgrades Artemis library to version 2.19.1.
This is our own release of Apache Artemis library which has vulnerability fix for v2.20 applied.

**_Breaking changes discovered during Artemis upgrade:_**
1. When the queue is created as temporary, it needs to explicitly be specified as non-durable.
2. By default, Artemis Client performs Host DNS name check against the certificate presented by the server. Our TLS certificates fail this check and this verification has to be explicitly disabled, see use of: `TransportConstants.VERIFY_HOST_PROP_NAME`.
3. Artemis Server now caches login attempts, even unsuccessful ones. When we add RPC users dynamically via DB insert this may have an unexpected outcome if the user with the same `userName` and `password` was not available previously.
To workaround permissions changing dynamically, authorization and authentication caches had to be disabled.
4. When computing `maxMessageSize`, the size of the headers content is now taken into account as well.
5. Artemis handling of start-up errors has changed. E.g. when the port is already bound.
6. A number of deprecated APIs like: `createTemporaryQueue`, `failoverOnInitialAttempt`, `NullOutputStream`, `CoreQueueConfiguration`.
7. Log warning message is produced like: `AMQ212080: Using legacy SSL store provider value: JKS. Please use either 'keyStoreType' or 'trustStoreType' instead as appropriate.`
8. As reported by QA, Artemis now produces more audit logging more details [here](https://r3-cev.atlassian.net/browse/ENT-6540). Log configuration been adjusted to reduce such output.
2022-01-21 09:18:14 +00:00
Adel El-Beik
b17e4571bf
ENT-6386: Revert change of behaviour in rpcOps.wellKnownPartyFromX500Name for revoked identity (#7032)
* ENT-6386: Reverting wellKnownPartyFromX500Name functionality to work … (#4347)
2022-01-20 11:08:13 +00:00
Dan Newton
c05c1934cf
ENT-6547 Remove url classloader in shell loading (#7034)
The `corda-shell` jar will already be installed if it exists in the the
node's `/drivers` directory. There is no need to include a
`URLClassLoader` to load its classes.

Rely on the process's main classloader.
2022-01-19 18:26:26 +00:00
Adel El-Beik
bb55d93915
ENT-6373: Write the object into the write exit event instead of null (#4320) (#7033)
Co-authored-by: Ryan Fowler <fowlerrr@users.noreply.github.com>
2022-01-19 15:58:51 +00:00
Ramzi El-Yafi
caa4de47d3
ENT-6533 Update validating notary flow to be non-idempotent (#7030) 2022-01-19 13:15:51 +00:00
Ronan Browne
2d2289b3bf
ENT-6426: update docker tagging inline with our dockerhub policies (#7027)
* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-1.8

based on pattern
{repo}:{version}-{base-Image}

* ENT-6426: update docker tahhing inline with our policies

old
corda/corda-zulu-java1.8-4.8.5:latest

new
corda/corda:4.8.5-zulu-openjdk8

based on pattern
{repo}:{version}-{base-Image}

Remove some redundant code

* ENT-6426 update corda repo tagging
2022-01-19 10:34:35 +00:00
Ryan Fowler
857b8aa286
ENT-6542: Add Community Edition string for R3 builds (#7026) 2022-01-18 11:12:32 +00:00
Lorcan Wogan
c2140f727c
ENT-6025 remote artemis channel does not exist resulting in infinite retry loop (#7020)
* ENT-6025 remote artemis channel does not exist resulting in infinite retry loop

* ENT-6025 rename test

* ENT-6025 fix detekt and add description

* ENT-6025 add check on count of connected stack
2022-01-18 10:13:29 +00:00
Rick Parker
b8a52bfd21
Merge pull request #7029 from corda/chrisr3-os48-merge
NOTICK: Merge from OS 4.8 up to 4f1a07
2022-01-17 13:21:30 +00:00
Chris Rankin
552317f2b3 Merge branch 'release/os/4.8' into chrisr3-os48-merge 2022-01-17 11:02:11 +00:00
Dimos Raptis
b644495d46
ENT-6022: Handle internal_error during SSL handshake gracefully (#7024) 2022-01-17 10:14:47 +00:00
Chris Rankin
4f1a07cbcc
ENT-6548: Ensure LazyMappedList is realised with correct SerializationContext. (#7028) 2022-01-17 09:57:33 +00:00
Dan Newton
524f1c14c9
Merge pull request #7025 from corda/dan/ENT-6376-port-to-os
ENT-6376 Don't hospitalize session end in `ReceiveFinalityFlow` (#4325)

Cherry pick from enterprise.
2022-01-13 15:19:28 +00:00
Dan Newton
bd9b50bf7c ENT-6376 Don't hospitalize session end in ReceiveFinalityFlow (#4325)
Do not keep a flow in for observation if it receives an unexpected
session end message while in `ReceiveFinalityFlow` and
`ReceiveTransactionFlow` (due to being called by the former).

This is done by checking the message of the `UnexpectedFlowEndException`
that is thrown when a session end message instead of a data message and
if the stacktrace has `ReceiveTransactionFlow` at the top, after
removing statemachine stack frames.

Checking the stacktrace for `ReceiveTransactionFlow` is important
because the unexpected session end session message is only ok if a
transaction has not already been received. For example, if
`ResolveTransactionsFlow` is in the stack, then this indicates failure
when receiving transaction dependencies on a transaction that should be
recorded.

Also added a test that highlights that the `UnexpectedFlowEndException`
caused by the session end message can be caught, therefore users can
determine their own behaviour if desired.
2022-01-13 11:02:46 +00:00
Waldemar Żurowski
9fffec665d
Merge pull request #7023 from corda/wz/merge-os-48-49-2022-01-12
NOTICK: Merging forward updates from OS 4.8 to OS 4.9 (2022-01-12)
2022-01-12 18:24:47 +01:00
Waldemar Zurowski
54bd321bfe Merge branch 'release/os/4.8' into wz/merge-os-48-49-2022-01-12 2022-01-12 15:18:30 +01:00
Waldemar Żurowski
265a293666
Merge pull request #7022 from corda/wz/merge-os-47-48-2022-01-12
NOTICK: Merging forward updates from OS 4.7 to OS 4.8 (2022-01-12)
2022-01-12 15:01:32 +01:00
Dan Newton
56c9d6404f
ENT-6378 Migrate corda-shell to external repo (#7005)
Remove the shell code from the OS code base, this includes the modules:

- `:tools:shell`
- `:tools:shell-cli`

The shell will be run within a node if it exists within the node's `drivers` directory. 

This is done by using a `URLClassloader` to load the `InteractiveShell` class into Corda's JVM process and running `startShell` and `runLocalShell`.

Running the shell within the `:samples` will require adding:

```
cordaDriver "net.corda:corda-shell:<corda_shell_version>"
```

To the module's `build.gradle` containing `deployNodes`. The script will then include the shell in the created nodes.
2022-01-12 11:54:18 +00:00
Waldemar Zurowski
00ba7b3447 Merge branch 'release/os/4.7' into wz/merge-os-47-48-2022-01-12 2022-01-12 09:52:52 +01:00
Waldemar Żurowski
46d03fc430
Merge pull request #7021 from corda/wz/merge-os-46-47-2022-01-12
NOTICK: Merging forward updates from OS 4.6 to OS 4.7 (2022-01-12)
2022-01-12 09:50:39 +01:00
Waldemar Zurowski
46a358965e Merge branch 'release/os/4.6' into wz/merge-os-46-47-2022-01-12 2022-01-12 07:34:32 +01:00
Waldemar Żurowski
43c97b6869
Merge pull request #7019 from corda/wz/merge-os-45-46-2022-01-11
NOTICK: Merging forward updates from OS 4.5 to OS 4.6 (2022-01-11)
2022-01-11 17:18:36 +01:00
Viktor Kolomeyko
8191073c7f NOTICK: Change repository for ghostdriver library
Since SCI Java repository is no longer available, the library has been copied to the internal `corda-dependencies` repository.
2022-01-11 16:48:51 +01:00
Waldemar Zurowski
42cac5d677 Merge branch 'release/os/4.5' into wz/merge-os-45-46-2022-01-11 2022-01-11 16:27:40 +01:00
Waldemar Żurowski
8cfe6064ab
Merge pull request #7018 from corda/wz/merge-os-44-45-2022-01-11
NOTICK: Merging forward updates from OS 4.4 to OS 4.5 (2022-01-11)
2022-01-11 16:25:16 +01:00
Waldemar Zurowski
0fdfc98345 Merge branch 'release/os/4.4' into wz/merge-os-44-45-2022-01-11 2022-01-11 15:52:40 +01:00
Waldemar Żurowski
24de478aaf
Merge pull request #7017 from corda/wz/merge-os-43-44-2022-01-11
NOTICK: Merging forward updates from OS 4.3 to OS 4.4 (2022-01-11)
2022-01-11 15:46:13 +01:00
Waldemar Zurowski
e92baeeb26 Merge branch 'release/os/4.3' into wz/merge-os-43-44-2022-01-11
Conflicts:
	build.gradle
2022-01-11 14:39:38 +01:00
Waldemar Żurowski
d91b06605f
NOTICK: Change repository for ghostdriver library (#7016)
* Maven SCI Java repository is not available
* `ghostdriver` moved to `corda-dependencies` repository in R3
  Artifactory
2022-01-11 14:35:32 +01:00
Viktor Kolomeyko
78aed771b2
NOTICK: Change repository for ghostdriver library (#7015)
Since SCI Java repository is no longer available, the library has been copied to the internal `corda-dependencies` repository.
2022-01-11 12:57:20 +00:00
Waldemar Żurowski
5de343ecf0
NOTICK: Merging forward updates from OS 4.5 to OS 4.6 (2022-01-11) (#7014)
* ENT-6494: Upgraded log4j to 2.17.0 (#6996)

* NOTICK: Merging forward updates from OS 4.4 to OS 4.5 (2022-01-07) (#7007)

* backported from emergency releases for log4j updates
* adds a build parameter, which control if tests should be run or not, default is `true`

* ENT-6494: Upgraded log4j to 2.17.1

Co-authored-by: Adel El-Beik <48713346+adelel1@users.noreply.github.com>
Co-authored-by: Adel El-Beik <adel.el-beik@r3.com>
2022-01-11 12:44:42 +01:00
Dan Newton
f2b3db9c7b
ENT-6315 Allow dumping of paused flows (#7008)
Checkpoint dumping of paused flows was not working because the dumper
expects a flow to have a `FlowState` of `Unstarted` or `Started`,
however due to a memory optimisation paused flows have their `FlowState`
set to `Paused`. This was causing causing an exception as well as a loss
of potentially useful information.

A flag `alwaysDeserializeCheckpoint` has been added to
`Checkpoint.Serialized.deserialize` which skips the memory optimisation
and forces the deserialization of the flow's `FlowState`.

Paused flows are now included in the dumped output along with their real
`FlowState` which is useful to users even if the flow is paused rather
than waiting for something to complete.

The status of the flow has also been added to the JSON output to assist
users in debugging their flows.
2022-01-11 10:22:49 +00:00
Adel El-Beik
c69a840e2e
Merge pull request #7010 from corda/adel/log4j-4.4
ENT-6494: Upgraded log4j to 2.17.1
2022-01-10 13:42:16 +00:00
Adel El-Beik
f26da0325f
Merge pull request #7013 from corda/adel/log4j-4.7
ENT-6494: Upgraded log4j to 2.17.1
2022-01-10 12:54:17 +00:00
Adel El-Beik
cf0b5b9cb1
Merge pull request #7012 from corda/adel/log4j-4.6
ENT-6494: Upgraded log4j to 2.17.1
2022-01-10 12:54:00 +00:00
Adel El-Beik
6062059f49
Merge pull request #7011 from corda/adel/log4j-4.5
ENT-6494: Upgraded log4j to 2.17.1
2022-01-10 12:53:42 +00:00
Adel El-Beik
6998a24dc4
Merge pull request #7009 from corda/adel/log4j-4.3
ENT-6494: Update log4j to 2.17.1
2022-01-10 12:53:04 +00:00
Adel El-Beik
f8fc7281eb ENT-6494: Upgraded log4j to 2.17.1 2022-01-10 10:51:52 +00:00
Adel El-Beik
c0c6110d5a ENT-6494: Upgraded log4j to 2.17.1 2022-01-10 10:49:18 +00:00
Adel El-Beik
a5512ff2e6 ENT-6494: Upgraded log4j to 2.17.1 2022-01-10 10:47:07 +00:00
Adel El-Beik
e9bcbd13a5 ENT-6494: Upgraded log4j to 2.17.1 2022-01-10 10:44:13 +00:00
Adel El-Beik
47ad6a150d ENT-6494: Update log4j to 2.17.1 2022-01-10 10:41:11 +00:00
Waldemar Żurowski
99403e9d18
NOTICK: Merging forward updates from OS 4.4 to OS 4.5 (2022-01-07) (#7007)
* backported from emergency releases for log4j updates
* adds a build parameter, which control if tests should be run or not, default is `true`
2022-01-08 22:10:27 +01:00
Dan Newton
044202550d
ENT-6421 Public version of FlowManagerRPCOps (#7006)
A public version of `FlowManagerRPCOps` which does not live in an
internal package has been added. This new interface shares the same name
as the internal one.

Because of the name sharing, the internal version has been
`@Deprecated`.

`FlowManagerRPCOpsImpl` implements both the new and old interfaces. This
 allows for backwards compatibility, allowing old shells or clients to
 call the old interface on newer nodes without breaking.
2022-01-07 16:40:29 +00:00
Viktor Kolomeyko
df5604874b
ENT-6388: Update Crash shell to version 1.7.5 (#7004)
This is a newly built internal version of the library which in particular upgrades `org.apache.mina:mina-core` to version `2.0.22` eliminating NexusIQ vulnerability.
2022-01-06 13:46:58 +00:00
nargas-ritu
e00c7cd693
Merge pull request #7002 from corda/wz/merge-os-43-44-2022-01-04
NOTICK: Merging forward updates from OS 4.3 to OS 4.4 (2022-01-04)
2022-01-06 09:12:10 +00:00