Commit Graph

2284 Commits

Author SHA1 Message Date
Ritu Gupta
2c2d7e938a [NOTICK] The list added for Bugs and Storys without Epic link 2020-03-05 15:06:20 +00:00
Ritu Gupta
4c944f048c [NOTICK] The list added for Bugs and Storys without Epic link 2020-03-05 12:12:05 +00:00
nargas-ritu
ae17669892
Merge pull request from corda/vcamp/os_release_notes_4.4
DOCS: release notes - Corda 4.4
2020-02-27 12:56:50 +00:00
Matthew Nesbit
9dec5aac4b
Merge pull request from corda/denis/ENT-4926-node-identity-docs
ENT-4915, ENT-4926, CORDA-3585: Update docs for X500 name and SSH hostkey
2020-02-20 11:11:46 +00:00
Valerio Campanella
3eb88bca7d OS 4.4 release notes: added pargraph on bonus AppServiceHub call, revised section title, removed deprecations section 2020-02-18 17:37:41 +00:00
Ryan Fowler
6ec314fade Merge remote-tracking branch 'origin/release/os/4.3' into rfowler-os4.3-0s4.4-20200218
# Conflicts:
#	.ci/dev/integration/Jenkinsfile
#	.ci/dev/unit/Jenkinsfile
#	Jenkinsfile
#	build.gradle
#	create-jdk8u/build.gradle
#	docs/source/corda-network/UAT.md
#	docs/source/network-builder.rst
#	node/src/integration-test-slow/kotlin/net/corda/node/services/distributed/DistributedServiceTests.kt
2020-02-18 15:48:58 +00:00
Valerio Campanella
c23deee3fb OS 4.4 release notes: address comments 2020-02-17 17:51:03 +00:00
Thomas Schroeter
a18caef56b
CORDA-3495: fix link to network builder () 2020-02-17 16:42:39 +00:00
nargas-ritu
fbf9ec5654
Merge pull request from corda/ENT-4717-add-minimumPlatformVersion-to-docs
CORDA-3509: add documentation about minimumPlatformVersion
2020-02-17 15:32:27 +00:00
James Higgs
3547b629c3
[NOTICK] Add a detekt rule to catch tests with no timeout ()
* [NOTICK] Add a custom detekt rule for tests with no timeout, and fix remaining missing timeouts

* [NOTICK] Add a test for custom detekt rules and tidying

* add timeout annotation to new test

Co-authored-by: Stefano Franz <roastario@gmail.com>
2020-02-14 17:31:02 +00:00
Valerio Campanella
c745f13913 OS 4.4 release notes: fix incorrect info in flow api improvements section 2020-02-14 14:42:00 +00:00
Valerio Campanella
27bd9f561b Corda 4.4 release notes 2020-02-14 13:50:37 +00:00
James Higgs
da192bcf0d
[EG-140] Allow system property paths with multiple keys to be specified in node.conf ()
* [EG-140] Allow system property paths with multiple keys to be specified in node.conf

* [EG-140] Split property paths to remove quotes

* [EG-140] Quote system properties in docs

* [EG-140] Rename path to key
2020-02-14 11:18:21 +00:00
Thomas Schroeter
af4d9c48a0
ENT-4933: Document notary.etaMessageThresholdSeconds ()
* ENT-4933: Document `notary.etaMessageThresholdSeconds`

* Fix typo
2020-02-12 14:10:26 +00:00
Waldemar Żurowski
e90058962f
Updating Artifactory URLs for Corda OS () ()
* Switching Artifactory URLs from obsolete ci-artifactory to software.r3.com
2020-02-11 11:57:51 +00:00
Stefano Franz
b23af5f0d2
add timeouts to all tests () 2020-02-11 10:14:05 +00:00
Waldemar Żurowski
9ccbfe178c
Updating Artifactory URLs for Corda OS 4.3 ()
* Switching Artifactory URLs from obsolete ci-artifactory to software.r3.com
2020-02-11 08:40:22 +00:00
Denis Rekalov
5a4bdc0a00 ENT-4915, ENT-4926, CORDA-3585: Update docs for X500 name and SSH shell hostkey 2020-02-10 17:40:23 +00:00
Oliver Knowles
286fffd67a
ENT-4368 - Improve error handling when required included config resource cannot be found. Add note in docs encouraging use of required syntax for includes. () 2020-01-30 10:10:24 +00:00
Joel Dudley
5b186b1c65
Interfaces/classes/methods with internal in their name are non-public API () 2020-01-29 15:35:00 +00:00
Ryan Fowler
d16e1126db
CORDA-3542: Use the config values for reconnecting retry interval and max reconnect attempts () 2020-01-29 13:08:54 +00:00
Viktor Kolomeyko
2e8f2ffc21 CORDA-3025: Permissions template for a read-only user () 2020-01-28 11:49:12 +00:00
Ryan Fowler
338671e6b2 CORDA-3509: add documentation about Corda features and their
corresponding platformVersion and network minimumPlatformVersion
2020-01-27 09:42:28 +00:00
Ryan Fowler
8f7367add7 CORDA-3509: add documentation about Corda features and their
corresponding platformVersion and network minimumPlatformVersion
2020-01-24 16:48:40 +00:00
Christian Sailer
de2a868d6e Slight rewording to underline the change for the better. 2020-01-24 16:19:42 +00:00
Christian Sailer
f34235924b Update CorDapp overview for Open Core changes. 2020-01-24 16:19:42 +00:00
Dan Newton
4f1777adb4 NO-TICK Cap the default size of the external operation thread pool ()
Cap the default size of the external operation thread pool to 10 or
the maximum number of available processors, whichever is smaller.

Set the minimum size of the thread pool to 1. Meaning that only a
single thread is used unless the node actually starts to use
`FlowExternalOperation` which consumes threads from this pool.
2020-01-24 12:11:53 +00:00
Denis Rekalov
b512a2981d ENT-3828: Remove ability to SSH into standalone shell () 2020-01-24 10:44:25 +00:00
Viktor Kolomeyko
42a2ed98e2 CORDA-2942: Allow exception from CordaService creation to propagate ()
* CORDA-2942: Allow exception from `CordaService` creation to propagate

It will ultimately be thrown from Node's `start()` method terminating the node start-up sequence.

* CORDA-2942: Be lenient when retrievign the name of the Notary

Some tests setup such that they do nto have Notary running.
2020-01-24 10:20:08 +00:00
Denis Rekalov
6a2249e697 CORDA-3520, CORDA-3550: SSH memory leak and security ()
* CORDA-3520: Closing RPC connection on SSH disconnect
CORDA-3550: Remove support for outdated ciphers and algorithms from SSH

* CORDA-3550: Remove support for outdated ciphers and algorithms from SSH
2020-01-22 14:40:25 +00:00
James Higgs
9a1d46ddd1 EG-73 - Remove postgres dependency from the node and update docs () 2020-01-22 09:52:02 +00:00
Dan Newton
4bae045a58 ENT-4601 Public API to run external operations from a flow ()
Deprecate FlowAsyncOperation and reimplement public versions FlowExternalOperation and FlowExternalAsyncOperation.

await added to FlowLogic to allow easy calling from both Java and Kotlin. There are two overrides of await (one for FlowExternalOperation and FlowExternalAsyncOperation).

Implementations of FlowExternalOperation return a result (written as blocking code) from their execute function. This operation will then be executed using a thread provided by the externalOperationExecutor.

Implementations of FlowExternalAsyncOperation return a future from their execute function. This operation must be executed on a newly spawned thread or one provided by a thread pool. It is up to developers to handle threading in this scenario.

The default thread pool (externalOperationExecutor) can be configured through the flowExternalOperationThreadPoolSize node config.

The current implementation leaves FlowAsyncOperation alone, meaning that any developers that have used it (even though it is internal) won't need to change their apps. If this was not concern I would delete it completely and replumb the state machine code. Instead, it has been marked with @DoNotImplement and executeAsync is annotated with @Deprecated
2020-01-22 09:27:17 +00:00
Viktor Kolomeyko
0978500a9a CORDA-2942: Node lifecycle events ()
* CORDA-2942: Port minimal set of changes to make lifecycle events work

... and make codebase compile.

* CORDA-2942: Undo some changes which are not strictly speaking necessary

* CORDA-2942: Make `NodeServicesContext` leaner and delete `extensions-api` module

* CORDA-2942: Reduce even more number of files affected

* CORDA-2942: Integration test fix

* CORDA-2942: Make events `AfterStart` and `BeforeStop` generic w.r.t. `NodeServicesContext`

* CORDA-2942: `NodeLifecycleObserverService` and a set of integration tests.

Public API violations are expected as well as integration tests failing.

* CORDA-2942: Re-work to introduce `ServiceLifecycleObserver`

* CORDA-2942: Explicitly mention a type of exception that may be thrown for some events.

* CORDA-2942: Register `ServiceLifecycleObserver` through `AppServiceHub`

* CORDA-2942: Fix integration test + KDocs update

* CORDA-2942: Detekt and `api-current` update

* CORDA-2942: Improvement to `CordaServiceLifecycleFatalTests`

... or else it has side effects on other tests.

* CORDA-2942: Add an integration test for new API use in Java

Driver test is written in Kotlin, but services definition is written in Java.

Also KDocs improvements.

* CORDA-2942: Documentation and release notes update

* CORDA-2942: First set of changes following review by @mnesbit

* CORDA-2942: Second set of changes following review by @mnesbit

* CORDA-2942: Added multi-threaded test

* CORDA-2942: Fixes

* CORDA-2942: Undo changes to `api-current.txt`

* CORDA-2942: Bare mimimum change to `api-current.txt` for CI gate to pass.

* CORDA-2942: Address review feedback from @rick-r3

* CORDA-2942: Detekt update

* CORDA-2942: Delete `ServiceLifecycleObserverPriority` and replace it with `Int` after discussion with @mnesbit

* CORDA-2942: Introduce more `NodeLifecycleEvent` and switch services to listen for those events

* CORDA-2942: Few more changes after input from @rick-r3

* First stub on integration test
Unfinished - hang on issue and pay

* CORDA-2942: Switch to use out-of-process nodes for the inetgration test

Currently Alice and Notary stuck waiting to hear from each other.

* CORDA-2942: Extra log lines during event distribution

* CORDA-2942: Asynchronously distribute lifecycle events

* CORDA-2942: Await for complete P2P client start-up

Next step: Add vault query to integration test

* CORDA-2942: Asynchronously distribute lifecycle events

Next step: Improve integration test

* CORDA-2942: Fix test broken by recent changes and improve logging

* CORDA-2942: Improvement of the test to be able to monitor actions performed by @CordaService in the remote process

* CORDA-2942: Add node re-start step to the integration test

* CORDA-2942: Remove `CORDAPP_STOPPED` event for now

* CORDA-2942: s/CORDAPP_STARTED/STATE_MACHINE_STARTED/

* CORDA-2942: Inverse the meaning of `priority` as requested by @rick-r3

* CORDA-2942: Register `AppServiceHubImpl` for lifecycle events and put a warning when SMM is not ready.
2020-01-21 13:38:02 +00:00
Chris Rankin
a7147c1ffd ENT-4652: Provide an "attachment fixup" mechanism to repair broken transactions. ()
* Do not register cordapp custom serialisers when using attachment classloader.

* Record the URLs of CorDapp JARs that contain custom serialisers. Include these JARs as extra attachments if we discover that we're missing a custom serialiser during transaction verification.

* Check for disabled serializer when explicitly requesting a custom serializer.
Refactor test case to force use of a custom serializer.

* Tidy up basic custom serializer test.

* Also test that TransactionBuilder rejects missing custom serializers.

* Remove test whitelists, which should not be needed with custom serialisers.

* Add changelog entry. Also align TestCordappImpl.findRoots() with OS backports.

* Second approach based around CorDapps inside AttachmentStorage - report missing type descriptor or any non-composable types.

* Initial implementation of Corda-Fixup rules inside a CorDapp jar.

* Replace original "automatic attachment fixing" mechanism completely.

* First review comments: restore "missing class" logic to TransactionBuilder.

* Restore "missing class" mechanism as fallback for SignedTransaction too.
2020-01-14 15:18:51 +00:00
Denis Rekalov
73a0782f5d CORDA-3452: Node: Configure the input of custom string in CSR ()
* CORDA-3452: Node: Configure the input of custom string in CSR to be used by Identity Service

* CORDA-3452: Remove unused import

* CORDA-3452: Add test for networkServices configuration
2020-01-13 09:52:51 +00:00
James Higgs
d0543d7270 [CORDA-3436] Allow CorDapps access to node diagnostic information ()
* [CORDA-3436] Allow CorDapps access to node diagnostic information

* [CORDA-3436] Fix API breakages

* [CORDA-3436] Improve documentation around diagnostics service

* [CORDA-3436] Remove CorDapps from the diagnostics information

* [CORDA-3436] Silence detekt warning
2020-01-09 11:18:32 +00:00
Austin Moothart
d5e7c9abbd DOCS - typo () 2019-12-20 15:07:31 +00:00
Ramzi El-Yafi
edd1205db1 OS 4.3 -> OS 4.4 Merge ()
* Prevent on-demand tests re-triggering from branch indexing

* Mark integration test tasks with "big" node taint

* Jenkins file for nightly regression tests ()

* Jenkins file for nightly regression tests

* Use k8s instead of gke cluster

* DOCS: Update UAT.md ()

* Fix report generation against regression builds ()

* Prevent on-demand tests re-triggering from branch indexing

* Mark integration test tasks with "big" node taint

* Jenkins file for nightly regression tests ()

* Jenkins file for nightly regression tests

* Use k8s instead of gke cluster

Co-authored-by: Stefano Franz <roastario@gmail.com>
Co-authored-by: carolynequinn <44175553+carolynequinn@users.noreply.github.com>
2019-12-20 14:44:45 +00:00
carolynequinn
35c58f1b9b DOCS: Update UAT.md () 2019-12-19 18:28:11 +00:00
Denis Rekalov
bc96bea24a ENT-4628: Harmonize CryptoService and BCCryptoService between OS and ENT () 2019-12-18 16:54:39 +00:00
Kyriakos Tharrouniatis
b0903efa50 CORDA-3202 Add a specific exception for flows to hospitalise themselves ()
* Introducing a new type of exception and a new hospital staff member to pause flows by immediately hospitalising them.

* Renaming exception to "HospitalizeFlowException".

* Making HospitalizeFlowException an open class.

* Overloading constructors of HospitalizeFlowException to be available in Java.

* Using Throwable#mentionsThrowable.

* Moving HospitalizeFlowException in its own file.

* Update kdocs for HospitalizeFlowException and StaffedFlowHospital#SedationNurse.

* Added tests, testing various HospitalizeFlowException types thrown.

* Fix Detekt issues.

* Imports optimizing.

* Add safe casting.

* Update api-flows and node-flow-hospital docs.

* Minor code comment change.

* Add DOCSTART-DOCEND signs in HospitalizeFlowException for makeDocs. It is referenced by api-flows.rst.

* Minor change in note.

* Code formatting.

* Remove comment.

* Remove if statement that makes example worse.

* Remove redundant comment.

* Moving 'Internal Corda errors' at the bottom.

* Changing node-flow-hospital.rst as per review.

* Change HospitalizeFlowException description as per review.

* Adding an example for FlowException.

* Minor indentation fix.

* Update FlowException example label as per review.

* Correcting handling of custom exception.
2019-12-11 10:35:58 +00:00
Ed Prosser
0ca97d2d96 ENM-866: Link to CENM docs 2019-12-05 13:27:52 +00:00
Viktor Kolomeyko
43205e1f1a CORDA-3471: Create CordaTransactionSupport and make it accessible through AppServiceHub ()
* CORDA-3471: Create `CordaTransactionSupport` and use wherever possible instead of `CordaPersistence`

* CORDA-3471: Address comments by @mnesbit
- Relocate `CordaTransactionSupport` to `core`
- Create a lighter version of transaction - `VaultTransaction` that gives access to `session` object only.

* CORDA-3471: More changes after discussion with  @mnesbit
- Rename `VaultTransaction` into `SessionScope`.

* CORDA-3471: Revert changes to most of the files after conversation with @mnesbit and @rick-r3

* CORDA-3471: Introduce `CordaTransactionSupportImpl` and make it accessible via `AppServiceHub`.

* CORDA-3471: Minor change (comment).

* CORDA-3471: Address input from @mnesbit

* CORDA-3471: Address input from @rick-r3

* CORDA-3471: Make Detekt happier

* CORDA-3471: Add a new test that proves transactions can be started from client threads

As requested by @mnesbit

* CORDA-3471: Change log and documentation update.

As requested by @mnesbit
2019-12-04 17:18:40 +00:00
Nick Dunstone
e6f9b46584 https://r3-cev.atlassian.net/browse/ENT-3829 ()
Open Source
2019-12-03 10:28:00 +00:00
Anthony Keenan
96e6313fbd
CORDA-3477: Update node database documentation to be correct ()
* Update node database documentation to be correct

* Couple more discrepancies
2019-12-02 16:37:31 +00:00
thorgilman
ee74963235 Update node.conf template to remove single quotes ()
The single quotes surrounding the jvm arguments in the empty node.conf cause an error when trying to perform initial registration.
2019-12-02 14:58:56 +00:00
Anthony Keenan
e28478c983
CORDA-3386: Improve node configuration override documentation ()
* Update docs for environment variables

* Typo corrections

* More tweaks

* Address review comments
2019-12-02 14:42:23 +00:00
Anthony Keenan
1caeeb01de
CORDA-3476: Fix typo in node database table documentation () 2019-12-02 11:58:55 +00:00
Ed Prosser
63b7f2093e Merge branch 'release/os/4.3' into EdP/typo-merge-4.4
# Conflicts:
#	buildSrc/build.gradle
2019-11-29 13:53:06 +00:00
CaisManai
6487844ed5 Fixing small typo
"Double-click the new contract file to open it" should read "Double-click the new flow file to open it" as we're now working on flows.
2019-11-29 10:55:32 +00:00