972 Commits

Author SHA1 Message Date
Christian Sailer
8d5611853a
CORDA-929 Attachment caching (#2372)
* ENT-1403 Cache node attachments (and attachment content)

* ENT-1403 Make cache sizes configurable

* Update documentation with new config parameters

* Test that non-existence of attachments is not cached

* Remove unneeded defaults in interface

* It turned out we need the defaults on the interface in quite a few tests

* Codereview: typos, size in MB rather than bytes, charset in tests, move concurrencyLevel to a constant

* Codereview: Make the internal config value bytes again, but config file in MB

* Fix example config unit test
2018-01-22 13:41:06 +00:00
Andrzej Cichocki
1fc646cfa8 CORDA-716 Move test-utils and node-driver to stable API section in docs (#2335)
* Move test-utils and node-driver to stable section.

* Move FlowStackSnapshotFactory to testing.services package & update docs

* Move SerializationTestHelpers to testing.core package

* Move TestConstants.kt to core namespace

* Move Expect.kt to core namespace

* Move CoreTestUtils to core.TestUtils - rename class and update imports

* Added some clarification to documents after re-reading them

* Added static imports

* Removing unused import

* Fix merge conflict

* Fixing merge conflict
2018-01-22 11:28:41 +00:00
szymonsztuka
f59560bb06
Database schema changes. (#2389)
Changes compatible with R3.Corda (ENT-794):
1) Added Hibernate corda-wrapper-binary two to to columns.
2) Shorten names of tables in dummy schemas used in tests.
3) Undo removal of compound index of VaultTxnNote (b423fea).
4) Assertions for 2 vault tests don't rely on order of rows.
2018-01-19 17:09:02 +00:00
Mike Hearn
ac7637e2b4 Revert "CORDA-599 RPCSecurityManager is no longer lateinit (#2347)"
This reverts commit 75e74e67a1b589cbfa443fb8f05e625233bef78b.
2018-01-19 17:52:59 +01:00
Andrzej Cichocki
bd342a690c
Merge commit 'bbcafca959b2d468a6f4f9bb847a1bbb7bfc9fdc' into andr3ej-os-merges
# Conflicts:
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/persistence/CordaPersistence.kt
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/persistence/DatabaseTransaction.kt
#	node/src/main/kotlin/net/corda/node/services/statemachine/FlowStateMachineImpl.kt
2018-01-19 13:46:27 +00:00
Andrzej Cichocki
7ac1cbd379
Merge commit 'e699dad076fc1d81b8bd9529747e2922728ce2e0' into andr3ej-os-merges
# Conflicts:
#	node/src/test/kotlin/net/corda/node/services/transactions/DistributedImmutableMapTests.kt
#	node/src/test/kotlin/net/corda/node/services/transactions/PersistentUniquenessProviderTests.kt
2018-01-19 13:40:16 +00:00
Andrzej Cichocki
f3c5ae2ff6
Merge commit '6edf95506bb2bd96ebffade9b9dd82d468cd4252' into enterprise
# Conflicts:
#	docs/source/changelog.rst
#	node/src/main/kotlin/net/corda/node/services/messaging/P2PMessagingClient.kt
2018-01-18 16:48:05 +00:00
Katarzyna Streich
133cf13674
Remove primary key constraint on host and port (#336)
* Remove primary key constraint on DBHostAndPort

* Update migration file
2018-01-18 16:24:06 +00:00
Katarzyna Streich
af081a7170
Remove primary key constraint on DBHostAndPort (#2318)
Remove primary key constraint on DBHostAndPort

Return always first node if more are matching by address.
2018-01-18 16:23:41 +00:00
Andrzej Cichocki
42e1a38c6b
Merge commit 'ea57639a378fa45f0aef6930bc4450d0bbfaa5f4' into andr3ej-entbot
# Conflicts:
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
2018-01-18 11:15:14 +00:00
Andrzej Cichocki
bbcafca959
Retire DatabaseTransactionManager. (#2385) 2018-01-18 10:11:34 +00:00
josecoll
e699dad076
CORDA-917 Bootstrap nodes without Notary schemas (by default) (#2376)
* Default jolokia version with optional override in CorDapp project gradle file.

* Bootstrap a node without Notary schemas by default.

* Revert unrelated Jolokia code change.

* Revert unrelated Jolokia code change.

* Addressed PR review feedback.
2018-01-18 10:10:06 +00:00
Christian Sailer
d9fb2ae4a8 Merge commit 'fca0afe5913d880628b9f94c459a04fb785b6c17' into christians/ENT-985-merge 2018-01-18 09:56:46 +00:00
Shams Asari
d19eb4a9d7
Removed useHTTPS from NodeConfiguration as it's not needed by the node. (#2375)
It's still expected to be present in node.conf if the web server needs to use SSL.
2018-01-17 17:47:40 +00:00
Matthew Nesbit
6edf95506b
Rename the inbox (#2360)
Add changelog entry

Address review comments

Alternate solution to service queues

Fixup after merge
2018-01-17 16:06:31 +00:00
Andrzej Cichocki
ea57639a37
CORDA-924 Fix IntegrationTestingTutorial (#2349)
i.e. H2 startup bug. also:
* Fix poor connection pool discipline
* Log cleanup failures instead of replacing foreground failure
2018-01-17 14:23:13 +00:00
Christian Sailer
fca0afe591
CORDA-928 Caching in the NetworkMapCache (#2358)
* CORDA-928 cache query results via `getPeerByLegalName` and `getNodesByIndentityKey` to avoid hitting the DB hard in RPC handling.

* Skip cache invalidation during init() - caches are still null.

* Remove registeredNodes/partyNodes caching of data feed.
Rewrite data feed to be initialised off the DB.
Add start method to trigger readyness/artemis listeners if there are nodes in the DB.

* Invalidate cache last rather than first when updating
2018-01-16 21:15:15 +00:00
bpaunescu
52a6abefb5
Merge pull request #276 from corda/bogdan-date-to-localdatetime
replace java.Date with java.time
2018-01-16 19:53:08 +00:00
josecoll
eb9a51af75 Merge branch 'master' into colljos-merge-release3-dp-master 2018-01-16 14:28:07 +00:00
josecoll
eb3798da5e Merge remote-tracking branch 'open/master' into colljos-merge-160118 2018-01-16 12:13:49 +00:00
josecoll
24bf6df868 Merge branch 'master' into colljos-merge-release3-dp-master 2018-01-16 09:58:51 +00:00
Andrzej Cichocki
75e74e67a1
CORDA-599 RPCSecurityManager is no longer lateinit (#2347) 2018-01-15 19:11:00 +00:00
Shams Asari
7cdacb0142 Merge branch 'master' into shams-os-merge-120118 2018-01-15 15:23:27 +00:00
Christian Sailer
5e7d2f00ae
ENT-1389 Modify the HibernateObserver to persist states by schema (and only create a session per schema, not one per state per schema) (#2366) 2018-01-15 15:19:32 +00:00
Christian Sailer
df195b20bd
ENT-1383 Memory weight based transaction cache (#2355)
* ENT-1383 Make the transaction cache in DBTransactionStorage memory-weight based (rather than count based) so large transactions can no longer use an undue amount of memory.

* Code review: formatting and legibility

* Fix stupid type cast error

* More formatting
2018-01-15 13:48:55 +00:00
josecoll
729aa65e7f Merge from R3 Corda 3.0 Dev Preview release branch to master 2018-01-13 11:00:01 +00:00
Andrius Dagys
7311111c9c
Re-enable notary idempotence test (#2356)
* Re-enable notary idempotence test
2018-01-12 20:25:49 +00:00
Tudor Malene
4b3a77b5cb
attempt to fix db integration tests (#350) 2018-01-12 18:38:20 +00:00
Tudor Malene
e7cc38cf1b
ENT-1330: Liquibase migration generation tool (#339)
* [ENT-1330]: Tool to generate migration files for CorDapps

* [ENT-1330]: cleanups

* [ENT-1330]: cleanups

* [ENT-1330]: added test to check if a migration file is properly generated and picked up
2018-01-12 09:53:42 +00:00
Shams Asari
c71ef3139b Merge remote-tracking branch 'open/master' into shams-os-merge-120118
# Conflicts:
#	core/src/main/kotlin/net/corda/core/schemas/CommonSchema.kt
#	node-api/src/main/kotlin/net/corda/nodeapi/internal/network/NetworkMap.kt
#	node/src/integration-test/kotlin/net/corda/node/services/RaftNotaryServiceTests.kt
#	node/src/main/kotlin/net/corda/node/internal/AbstractNode.kt
#	node/src/main/kotlin/net/corda/node/utilities/registration/HTTPNetworkRegistrationService.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/internal/vault/DummyDealStateSchemaV1.kt
2018-01-12 08:06:44 +00:00
Shams Asari
bbfbb08c43
CORDA-881: Signed network parameters has the network map cert attached to it instead of just the public key. (#2346)
Introduced DigitalSignatureWithCert and SignedDataWithCert as internal APIs, with the expectation that they will become public; renamed the network parameters end-point to network-parameters; updated the network-map.rst doc; and did some refactoring.
2018-01-12 07:59:08 +00:00
Christian Sailer
0c017fdfec
ENT-1361 Enforce Unicode settings for SQL server (#311) (#321)
* Enforce Unicode settings for SQL server (#311)

* Enforce correct unicode setting in the JDBC Url for SQL server

* Avoid cast/null check

* Fixed wrong string literal and added test to check the literal matches what Hikari expects

* Optimise Imports

* Constant for config tag and minor test improvement.

* Constant and case insensitive check

* Import and Capitalisation

* Missed curly brace
2018-01-11 14:29:46 +00:00
Tudor Malene
12546c0a7c
[ENT-1281]: Disable database.runMigration by default and enforce database version on startup. (#264)
* [ENT-1281]: set database.runMigration=false by default and add state check at startup

* [ENT-1281]: attempt to fix tests

* [ENT-1281]: attempt to fix tests

* [ENT-1281]: set runMigration=true in the cordformation plugin

* [ENT-1281]: attempt to fix tests

* [ENT-1281]: attempt to fix tests

* [ENT-1281]: attempt to fix tests

* [ENT-1281]: fix formatting

* [ENT-1281]: typo and javadocs

* [ENT-1281]: small refactoring and added test for SchemaMigration

* [ENT-1281]: update documentation to reflect changes

* [ENT-1281]: fix tests after merge

* [ENT-1339]: for h2, allow schemas without migrations to run (#294)

* [ENT-1339]: for h2, allow schemas without migrations to run

* [ENT-1339]: fix various migration issues and change author name

* [ENT-1339]: add naming convention for migrations

* [ENT-1339]: change naming convention to use hyphens

* [ENT-1339]: change mapping of participants to be able to control the table name

* [ENT-1339]: change FK names to <=30 for oracle 11g compatibility

* [ENT-1339]: cmd line argument for migrations made consistent

* [ENT-1339]: revert abstract state superclasses

* Update db integration test setup - new tables.

* Update db integration test setup - new tables.

* [ENT-1339]: remove final from participants to allow table name config

* [ENT-1339]: shortened pk

* [ENT-1339]: revert constructor

* [ENT-1339]: change getMigrationResource api to Nullable

* fix compile error

* [ENT-1281]: fix tests after merge

* [ENT-1281]: fix tests after merge
2018-01-10 11:32:24 +00:00
Anthony Keenan
979d7f2c63
ENT-1226 Improve Network client Error Handling (#2344)
* Improve Network client Error Handling

* Reformatted NetworkMapServer

* Removed line that is now redundant
2018-01-09 16:55:16 +00:00
Tudor Malene
0c646ff662
[ENT-1339]: for h2, allow schemas without migrations to run (#294) (#305)
* [ENT-1339]: for h2, allow schemas without migrations to run (#294)

* [ENT-1339]: for h2, allow schemas without migrations to run

* [ENT-1339]: fix various migration issues and change author name

* [ENT-1339]: add naming convention for migrations

* [ENT-1339]: change naming convention to use hyphens

* [ENT-1339]: change mapping of participants to be able to control the table name

* [ENT-1339]: change FK names to <=30 for oracle 11g compatibility

* [ENT-1339]: cmd line argument for migrations made consistent

* [ENT-1339]: revert abstract state superclasses

* Update db integration test setup - new tables.

* Update db integration test setup - new tables.

* [ENT-1339]: remove final from participants to allow table name config

* [ENT-1339]: shortened pk

* [ENT-1339]: revert constructor

* [ENT-1339]: change getMigrationResource api to Nullable
2018-01-09 14:44:17 +00:00
Shams Asari
a94f99781a Merge remote-tracking branch 'open/master' into shams-os-merge-080118
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/services/AttachmentLoadingTests.kt
#	node/src/integration-test/kotlin/net/corda/node/services/DistributedServiceTests.kt
#	node/src/test/kotlin/net/corda/node/services/events/NodeSchedulerServiceTest.kt
2018-01-08 13:43:10 +00:00
Andrzej Cichocki
9d66214f4a
CORDA-891 Convert NodeSchedulerServiceTest into a unit test (#2273) 2018-01-05 16:34:03 +00:00
Shams Asari
74c2eb8a0a Merge remote-tracking branch 'open/master' into shams-os-merge-040118
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/AuthDBTests.kt
#	node/src/integration-test/kotlin/net/corda/node/SSHServerTest.kt
2018-01-05 14:13:36 +00:00
igor nitto
00b570df29
Improve RPC security test coverage [CORDA-827] (#2320)
* Added test cases covering encrypted password usage
 * Renamed UserAuthServiceTests as AuthDBTests: the integration tests checking user credentials loaded from external database (still limited to H2 in-memory for now).
 * Some internal renamings
2018-01-05 11:50:21 +00:00
Shams Asari
b577b680ff Merge remote-tracking branch 'open/master' into shams-os-merge-040118 2018-01-04 18:32:15 +00:00
Konstantinos Chalkias
48be562a2a
ECDSA entropyToKeyPair + no idempotent signatures (#2210) 2018-01-04 17:52:31 +00:00
Ross Nicoll
412fead02e
CORDA-785: Add functions for constructing FlowLogicRef without the class (#2134)
Add functions for constructing `FlowLogicRef` from class name, rather than requiring the class itself. This avoids requiring that schedulable states have access to the scheduled flow to instantiate, but instead can require it only actually scheduling the flow. This reduces the size of the JAR required to validate transactions containing these states.
2018-01-04 13:32:10 +00:00
Shams Asari
13619df0b1 Merge remote-tracking branch 'open/master' into shams-os-merge-040118
# Conflicts:
#	node/src/integration-test/kotlin/net/corda/node/utilities/registration/NodeRegistrationTest.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/MockServices.kt
#	testing/test-utils/src/main/kotlin/net/corda/testing/dsl/TransactionDSLInterpreter.kt
2018-01-04 10:58:44 +00:00
Shams Asari
d84105b60e
Using X509Certificate consistently throughout, rather than BC's X509CertificateHolder. (#2305)
The later is now only used where needed. This has reduced the amount of converting we have to do back and forth.
2018-01-03 22:00:39 +00:00
Shams Asari
20683c3239
Added checks on the received node CA cert from the doorman service. (#2301) 2018-01-02 15:51:13 +00:00
Shams Asari
52173219c3 Merge remote-tracking branch 'open/master' into shams-os-merge-020118
# Conflicts:
#	client/rpc/src/integration-test/java/net/corda/client/rpc/CordaRPCJavaClientTest.java
#	node/src/integration-test/kotlin/net/corda/node/NodeKeystoreCheckTest.kt
#	node/src/integration-test/kotlin/net/corda/node/services/network/NetworkMapTest.kt
#	node/src/integration-test/kotlin/net/corda/node/utilities/registration/NodeRegistrationTest.kt
#	node/src/integration-test/kotlin/net/corda/services/messaging/MQSecurityTest.kt
#	node/src/main/kotlin/net/corda/node/services/config/ConfigUtilities.kt
#	node/src/test/kotlin/net/corda/node/services/events/NodeSchedulerServiceTest.kt
#	testing/node-driver/src/main/kotlin/net/corda/testing/node/internal/DriverDSLImpl.kt
2018-01-02 15:32:32 +00:00
bpaunescu
80640cca91 replaces uses of java.Date with java.time;
changed nullable timestamp variables to non-nullable
2018-01-02 15:22:03 +00:00
Shams Asari
730fec2eb4
Internal driver now also does the registration for the notaries. (#2304)
Using the --just-generate-node-info flag for the notary nodes so that their identities can be submitted to the network map server, which does the network parameters generation.
2018-01-02 15:12:30 +00:00
Andrzej Cichocki
fe3c2b3983
CORDA-891 Refactoring for #2273 (#2306)
* Make FlowLogicRefFactoryImpl a class.

* Replace instanceof with polymorphism.

* Fix out-of-scope spelling error.
2018-01-02 13:11:43 +00:00
Shams Asari
4a2f157118
Validating the entire cert path in node registration, rather just checking the root cert. (#2298)
Also reduced duplicate code when creating the node CA cert path for testing, and renamed IdentityGenerator to DevIdentityGenerator.
2017-12-29 14:38:30 +00:00