Commit Graph

1652 Commits

Author SHA1 Message Date
3abe6888cf Fix typo. (#2657) 2018-02-27 12:36:44 +00:00
cd569577d2 Fix rpc sender thread busy looping 2018-02-27 10:23:48 +00:00
3391810101 CORDA-1004 Quasar-friendly ThreadLocal solution (#2594)
* Use FastThreadLocalThread in fiber scheduler
* Test that thread locals aren't serialized
2018-02-27 10:22:30 +00:00
147f46fbf4 [CORDA-1119] Sign in DB transaction (#2645) 2018-02-27 10:00:30 +00:00
0adc203d7a CORDA-696: Fix conflict resolution error, fix filename type 2018-02-27 09:48:39 +00:00
9da3a8ee05 [ENT-1552] Delete temporary truststore once the test is complete. (#484) (#2634) 2018-02-26 17:11:10 +00:00
0edfef2409 CORDA-696 - Create separate transaction types for contract upgrade transactions (#2589)
* CORDA-986 and CORDA-985 CompositeKey and Signature verification performance fixes (#2467)

* CORDA-696: Create separate transaction types for contract upgrade transactions.

Add rationale around upgrade transactions

Move contract upgrade transaction resolution logic into internal until it's stabilised.

Throw a better exception when contract attachment not found

Default legacy contract constraint to always accepting - needs to be changed to whitelist constraint before merging

Introduce a new upgraded contract interface that allows specifying the legacy constraint.

Remove StateLoader, make all tx resolution functions take in ServicesForResolution

Contract upgrade transactions can handle whitelist by zone constraints

When creating a contract upgrade transaction, make sure the attachment of the old cordapp gets attached when using hash constraints.
Attachment lookup for a given contract class name only scans currently loaded cordapps, and we don't load old versions of cordapps.

CORDA-696: Update upgrade docs
2018-02-26 11:29:25 +00:00
a483e7e8ce CORDA-1096 - Performance when loading multiple states from the vault (#2614)
* CORDA-1096 - Performance when loading multiple states from the vault (#2609)

* Provide efficient `loadStates()` implementation

* Replace loops using `loadState` with calls to `loadStates`

* Replace `map`/`flatMap` with just a single `flatMap`
2018-02-26 09:37:32 +00:00
5be0e4b39e [CORDA-941]: Add NetworkParameters contract implementation whitelist. (#2580) 2018-02-23 14:29:02 +00:00
977836f4eb Enable tests which were ignored due to recent flakiness on TC and issue with maxTransactionSize which should now be resolved. (#2621) 2018-02-23 13:45:18 +00:00
1552e992e7 ENT-1443 Add cert role to CSR and doorman issue cert according to the cert role (#2620)
* ENT-1443 Add cert role to CSR and doorman issue cert according to the cert role (#431)

* Doorman and HSM create certificate base on requested cert role specified in the certificate signing request.

(cherry picked from commit 94f7392)

* remove R3 corda code
2018-02-23 13:38:09 +00:00
2af0feee04 Various cleanup of the network map code (#2604) 2018-02-23 09:13:00 +00:00
e91b74962b [CORDA-1098]: Fixed Artemis filters for flows draining mode. (#2613) 2018-02-22 20:45:56 +00:00
5db4882668 [CORDA-1089]: Ensure graceful error message is shown on node startup if RPC settings are invalid. (#2595) 2018-02-22 09:47:56 +00:00
731cb1b67e Remove unused occurrences of 'exportJMXto' (#2588) 2018-02-21 19:05:55 +00:00
68c2dd16d9 Remove spurious logline 2018-02-20 17:09:48 +00:00
dc268ebe63 Merge pull request #2477 from corda/aslemmer-corda/issues/2300
Add RPC deduplication to client and server
2018-02-19 16:25:36 +00:00
c704ff6370 Fix a build issue caused by a bad auto-import. 2018-02-19 16:58:28 +01:00
4f0c692831 Minor: reduce the size of the MockNetwork API a bit, add some better documentation 2018-02-19 16:58:28 +01:00
32bcf0a06c Address more comments 2018-02-19 15:16:12 +00:00
7f1bfac8b0 Write better test for dupes 2018-02-19 14:53:28 +00:00
71c94f8a9d Reversing the introduction of GlobalProperties (by CORDA-961), and added NetworkParameters to ServicesForResolution instead. (#2563)
Also, replaced the maxTransactionSize parameter of the driver and MockNetwork with NetworkParameters.
2018-02-19 12:23:59 +00:00
003e14ce57 Added a helpful error log when validating keystores. 2018-02-16 16:54:16 +00:00
5b93abdc57 CORDA-1010: Send a request signature in addition to a transaction to the notary (#2527)
CORDA-1010: Notary flow - clients now send a signature over a notarisation
request in addition to the transaction. This will be logged by the notary
to be able to prove that a particular party has requested the consumption
of a particular state.
2018-02-16 16:14:06 +00:00
fee89c044f Enhance the pluggability of the bridging and messaging code, so that more complex HA and out of process bridges can be written. (#2558) 2018-02-16 16:13:05 +00:00
458db7cb24 Cleanup build (#2551)
* Remove compile-time dependencies on jolokia-war from webserver 
* Stop exporting jolokia version to all projects, it is only used by node
2018-02-16 12:17:46 +00:00
ed0cf91946 Start Jolokia agents if configured without modifying JVM options [CORDA-1042] (#2541)
* Jolokia agents are loaded dynamically if configured
* Renamed exportJmxTo (never used) to jmxMonitoringHttpPort and take it from config
* Updated documentation and tests
2018-02-15 17:10:07 +00:00
2864ce1384 ENT-1519: Ensure NodeInfo always has at least one address by checking in the c'tor (#2538)
Further, the look up of the node's own node-info from its database has been tightened to ensure there isn't more than one.

Also fixed some brittle code which was assuming exactly one address rather than at least one.
2018-02-15 14:06:41 +00:00
ae63de34ad Run H2 fix test in parallel (#2504)
* Parallel execution for reduced test time
2018-02-15 12:22:31 +00:00
311475a81c Switch to using our own quasar fork with thread leak fix (#2443)
* Switch to using our own quasar fork with thread leak fix

* Update quasar.jar in lib

* Review changes

* Bump to 3.0.7
2018-02-14 17:32:00 +00:00
6a4f783106 Hack around database-with-observables issue 2018-02-14 17:30:32 +00:00
3e8d76334e CORDA-939 Modify Api Scanner to check api for internal exposures (#2510)
* Update check api changes to look for internals

* Update several more uses of internal

* Make check-api-changes script filter out internal class usages

* Make CordaClock part of API

* Update api-current.txt

* Remove exclusion of nodeapi.internal

* Remove access to CordaPersistence from public api

* Don't expose DB Connection from StartedMockNode and remove unnecessary transaction from CustomVaultQueryTest

* Make internal tests that use need db access use InternalMockNetwork

* Make test certificates internal

* Address further review comments

* Revert some accidental changes to api-current.txt

* Address Shams' review comments

* Update Api Scanner to filter out CordaInternal attribute

* Update api-current.txt

* Remove superfluous brackets

* Add transaction to StartedMockNode

* More leaky transaction fixes
2018-02-14 16:42:56 +00:00
81b16776f3 Fix RPC observation vs reply ordering 2018-02-14 15:16:59 +00:00
174ed3c64b CORDA-556: Added Cordapp Config and a sample (#2469)
* Added per-cordapp configuration 
* Added new API for Cordformation cordapp declarations to support per-cordapp configuration
* Added a cordapp configuration sample
2018-02-14 14:49:59 +00:00
117f4a721e CORDA-939 Remove sslConfiguration from public constructor of CordaRPCClient (#2522)
* Remove sslConfiguration from public constructor of CordaRPCClient

* Address review comments

* Update api-current.txt

* sslConfiguration doesn't need to be a property
2018-02-13 21:39:31 +00:00
7924a5a834 Add RPC deduplication to client and server 2018-02-13 18:51:59 +00:00
b91dd43a83 Test driver default parameters removal (#2519)
* Removed long parameter list in test driver, replaced with DriverParameters object
2018-02-13 13:15:05 +00:00
ad1be79900 Reorders params to put non-default args first. Creates simpler default constructors. 2018-02-12 17:02:34 +00:00
da591363fd CORDA-990: Flows Draining Mode (#2483)
[CORDA-990]: Flows draining mode.
2018-02-12 16:13:43 +00:00
ad7b84b5a8 Removes IdentityServiceInternal as a public parameter to MockServices. 2018-02-12 13:30:47 +00:00
d1627fed5b Backporting introduction of constants for the dev certs from enterprise (#2502) 2018-02-12 12:12:16 +00:00
a9109e0855 Merge pull request #2498 from corda/aslemmer-fix-cache-duplicate-detection-on-evict
CORDA-1003: Fix duplicate detection on cache evict
2018-02-12 10:13:16 +00:00
7b65b7971a CORDA-939 - Don't expose StartedNode and AbstractNode as part of public test api (#2472)
* Don't expose StartedNode via Node Driver

* Dont expose StartedNode/Abstract Node via MockNetwork

* Remove internal var from constructor as it doesn't hide from public api and change to internal initialisation method

* Update api

* Rename MockNode to StartedMockNode to avoid confusion
Update documentation
Update api-current.txt

* Fix typo

* Fix test failure

* Modify flow tests to use internal mock network and remove additional internal exposures from StartedMockNode

* Fix api-current

* Change InProcess and OutOfProcess to interfaces

* Explicitly declare MockNetwork parameters
Dont expose StateMachineManager
Move affected tests to use internal mock network

* Fix api-current

* Changes requested via review

* Fix IRS Demo address

* Fix api

* Remove internal attribute from classes in internal package

* Remove accidentally added code

* Move useHttps into NodeHandleInternal

* Remove duplicated code

* Update api-current

* Make webAddress internal on NodeHandle

* Make sure parameters in public api are explicitly specified

* Use correct address in IRS Demo

* Get webaddress from webserver handle

* Update api-current
2018-02-12 10:09:59 +00:00
cfc90a221b CORDA-1003: Fix duplicate detection on cache evict 2018-02-09 18:23:42 +00:00
d072f6c275 Merge pull request #2490 from corda/aslemmer-r3corda-compatibility
CORDA-995: r3corda wire compatibility
2018-02-09 17:12:18 +00:00
d01b2cbe97 Address comments, fix test 2018-02-09 16:03:36 +00:00
0a88b76e46 r3corda wire compatibility 2018-02-09 14:50:20 +00:00
c8cf46c657 CORDA-961 Wire up and enforce max transaction size (#2465)
* wire up and enforce max transaction size

* fixup after rebase
moved network parameter from AbstractNode to NodeProperties

* removed TODO

* fix broken import

* address PR issues

* remove API breaking change
address PR issue

* added max transaction size to driver and mock network.
address PR issues

* fix failing test

* added TODO

* fix verifier test

* fix spring driver build error
2018-02-09 14:48:45 +00:00
1902a4f11e CORDA-973 Refactoring for serialization compression support (#2466)
* Use constant for empty byte array
* Less byte array copying
* Fix InputStreamSerializer trailing garbage
* More OO kryo streams
* Introduce SerializationMagic
* Introduce non-copying slice on ByteSequence
2018-02-09 11:54:07 +00:00
6acff3a7df First approach to network parameters updates (#2412)
* Network parameters updates

Add two RPC methods networkParametersFeed and
acceptNewNetworkParameters. Implementation of client handling of network
parameters update event. Partial implementation of accepting new
parameters and installing them on the node as well as node startup with
updated parameters.

Move reading of network parameters on startup to separate
NetworkParametersReader class. Add tests.

Move NetworkParameters and NotaryInfo classes to core.

* Ignore evolvability test - to be fixed later

* Add documentation on update process
2018-02-08 14:31:43 +00:00