Commit Graph

620 Commits

Author SHA1 Message Date
rick.parker
cd98b559bf Move jolokia access config to the config directories, alongside log4j2.xml file. Point samples at top level dev and test config. 2016-11-18 11:11:54 +00:00
Jose Coll
876b17bb12 Transaction notes now stored individually per row. 2016-11-17 17:57:07 +00:00
Rick Parker
0c9b03411a Merged in parkri-pending-messages (pull request #481)
Remove need for pending messages map/table and fix start up race between network map and protocols wanting to look up Party
2016-11-17 17:12:35 +00:00
rick.parker
996b2d13d5 Network map message filtering. Removal of pending messages. Needs cleaning up. 2016-11-17 17:11:10 +00:00
Mike Hearn
ae49c2bdb2 Java code in Node currently targets Java 6 due to the caplet, until we decide we need to separate it out. This file uses Java 7+ features so downgrade it, which fixes the build (for some reason I could not easily reproduce this failure) 2016-11-17 12:33:57 +01:00
Jose Coll
1427baf797 Transaction note retrieval now using indexed field on database table. 2016-11-16 14:07:16 +00:00
Jose Coll
5dfffb1b84 Re-applied changes following net.corda rebase. 2016-11-16 14:07:16 +00:00
Richard Green
d65ff747b3 Merged in clint-capletfix (pull request #466)
Fixed classpath augmentation for plugins.
2016-11-16 10:39:27 +00:00
Shams Asari
012fa855a1 Moved RPCUserServiceImplTest into correct package 2016-11-15 17:36:35 +00:00
Andras Slemmer
07df9f17b3 loadtest: Add loadtest code 2016-11-15 17:21:26 +00:00
Andras Slemmer
dcd7a8a08a Address PR 465 comments 2016-11-15 16:51:07 +00:00
Andras Slemmer
7f0dd1ab5b Generic startProtocol and typesafe wrappers, per-protocol permissions, CashProtocol, remove executeCommand, move almost all Cash-related things to :finance 2016-11-15 16:46:37 +00:00
Andrius Dagys
9b8f00ef84 Stop using "legally-Identifiable" signatures for the notary protocol 2016-11-15 16:08:42 +00:00
Andrius Dagys
e261167343 Merged in andrius-servicename-gen (pull request #475)
Allow specifying advertised service identity name in configuration, generate a name if none specified
2016-11-15 14:33:02 +00:00
Shams Asari
c326a9ae46 Moved the RPC user config out of the properties file and into the main config file 2016-11-15 12:52:08 +00:00
Andrius Dagys
73bc841b7c Allow specifying advertised service identity name in configuration, generate a name if none specified 2016-11-15 11:12:24 +00:00
Andrius Dagys
d00163e29d Stop using "legally-Identifiable" signatures for the notary protocol, as notary nodes will use their service identity to sign (and not the legal one). It also doesn't make sense to attach an identity on the signature if it's a group identity and the signer holds only 1 out of many keys. 2016-11-14 16:02:20 +00:00
Andrius Dagys
d855b10817 Nodes part of a group identity (e.g. notary) now advertise the whole group Party on the network. When sending a message to a group, a representative node advertising the group identity is first chosen (at random), and its legal identity is used for communication. Currently we assume that a single legal identity can't be advertised by more than one node (the PublicKeyTree of an identity is used for Artemis queue names and we need to do more work to properly map a single queue to multiple nodes) 2016-11-14 14:57:16 +00:00
Andrius Dagys
c33c55eb20 Replace PublicKey with PublicKeyTree in Party. A single entity can now be identified by more than one key. 2016-11-14 14:57:16 +00:00
Clinton Alexander
e3f685f674 Fixed classpath augmentation for plugins. 2016-11-10 18:07:11 +00:00
Mike Hearn
ce99f354cb Rename com.r3corda -> net.corda 2016-11-10 17:14:24 +01:00
Rick Parker
af8859ebf1 Merged in parkri-protocol-error-handling-fix (pull request #447)
Fix handling of node shutdown so protocols don't blow up when they encounter the messaging layer already shutdown.  Protocols will also stop resuming once shutdown has commenced.
2016-11-08 18:15:35 +00:00
rick.parker
fe6bf0e6ea Implement controlled stop of StateMachineManager. 2016-11-08 17:53:43 +00:00
Katarzyna Streich
103817ec57 Add signing of transaction merkle root hash. 2016-11-08 17:41:32 +00:00
Mike Hearn
686b53f768 Fix Cordapp docs which don't use the right gradle syntax. Minor tweaks in AbstractNode 2016-11-08 15:40:44 +01:00
Andras Slemmer
51e86e7cd3 node: Small cleanup 2016-11-08 11:20:10 +00:00
Matthew Nesbit
1c39780c22 Handle the timeout exception, which can happen if the scheduler overruns (e.g. during debugging, but also potentiallyu with slow callbacks). 2016-11-07 09:56:38 +00:00
Katarzyna Streich
71965b0792 Add serialization workaround for HashMaps inside states. Fix tests. 2016-11-04 17:21:11 +00:00
Shams Asari
bd89da458b Added nice extension methods for Path, which are more readable than the static methods from Files 2016-11-04 15:36:14 +00:00
rick.parker
143e3a063f Pending redelivery table name prefix added in line with other tables.
No longer delete all pending messages from the database and move into memory before putting back into the database again, which is vulnerable to failure.  Now we delete individual pending messages on successful redelivery.
2016-11-04 10:22:14 +00:00
Patrick Kuo
7f8608c981 Changing UI layout 2016-11-03 11:39:24 +00:00
Shams Asari
6d39b71bf9 Simple RPC access control, with a demo control on the cash RPCs 2016-11-03 10:46:25 +00:00
Jose Coll
1d25d23b73 Merge from master 2016-11-02 14:20:51 +00:00
Jose Coll
012dc9ec10 Merge branch 'master' into colljos-vault-code-clean-up-refactor 2016-11-02 11:20:21 +00:00
Jose Coll
a38b363e9d Fixed subtle bug in Cash Spending when processing for same Issuer with multiple refs. 2016-11-02 11:15:09 +00:00
Clinton Alexander
ad81ecf2f9 Merged in clint-todocleanup (pull request #432)
Removed unused files, cleaned up build scripts.
2016-11-02 11:06:10 +00:00
Rick Parker
847257c250 Merged in parkri-speed-up-integration-tests (pull request #434)
Speed up JDBCHashMapTestSuite by 3min on my laptop by avoiding Exposed table existence checks each time a map/table is created by re-using the map/sets across tests (after clear()-ing to reset their state).
2016-11-02 11:02:54 +00:00
rick.parker
b188bfda52 Speed up JDBCHashMapTestSuite by 3min on my laptop by avoiding Exposed table existence checks each time a map/table is created by re-using the map/sets across tests (after clear()-ing to reset their state). 2016-11-02 10:08:38 +00:00
Ross Nicoll
f26813c1ab Merged in rnicoll-cache-key-collision (pull request #425)
Error if multiple nodes match a key
2016-11-01 18:14:23 +00:00
Jose Coll
7e3c00c1ff Merged in colljos-pluginservicehub (pull request #427)
Added PluginServiceHub for use by Corda plugin service extensions.
2016-11-01 17:12:52 +00:00
Jose Coll
f415c497d9 Minor changes to address PR feedback and comments 2016-11-01 16:47:50 +00:00
Jose Coll
e449ba93c4 Minor fix following rebase to incoporate Ross changes to CashState definition. 2016-11-01 16:29:21 +00:00
Ross Nicoll
b4ee47bd33 Error if multiple nodes match a key
InMemoryNetworkMapCache.getNodeByPublicKey() previously returned null if multiple nodes matched
a given public key (for example if the same node is registered more than once with different
names). This is incorrect behaviour, as there is a match.
2016-11-01 16:27:54 +00:00
Ross Nicoll
e6a0f18436 Add diagnostics for web server and API plugin instantiation 2016-11-01 16:22:49 +00:00
Jose Coll
253a70f55e Fixed bug in generateSpending whereby Issuer Ref was not being checked. 2016-11-01 16:12:19 +00:00
Clinton Alexander
1e6cca4d5d Removed dead installDist configurations and moved Jolokia access to the correct resources dir. 2016-11-01 16:09:13 +00:00
Ross Nicoll
613a86c5d9 Remove deposit and issuanceDef fields
Remove deposit field from the FungibleAsset interface, and moved it into a fixed reference to
amount.token.issuer.
Remove issuanceDef field and replace it with amount.token.
2016-11-01 14:49:57 +00:00
Jose Coll
74dc0b7154 Exposed Vault Transaction Note functionality via RPC. 2016-11-01 12:46:41 +00:00
Jose Coll
d9f0a161e4 Addressed comments in PR review. 2016-11-01 12:05:48 +00:00
Jose Coll
c5500caf98 Minor changes to address PR feedback and comments 2016-11-01 11:39:11 +00:00
Jose Coll
308d7c1df7 Added PluginServiceHub for use by Corda plugin service extensions. 2016-10-31 17:15:06 +00:00
Jose Coll
96007cd777 Changed transaction notes type DB from 'blob' to 'text' 2016-10-31 15:07:34 +00:00
rick.parker
5898a15579 Upgrade H2 to 1.4 to fix curious file corruption issue encountered by Patrick. 2016-10-28 17:39:10 +01:00
Clinton Alexander
c3533bac7d Improved error reporting. 2016-10-28 13:46:43 +01:00
Clinton Alexander
fdbd67db5c Added some more error logging to Node. 2016-10-28 13:46:43 +01:00
Jose Coll
2ce310050e Revert incorrect merge commit. 2016-10-28 10:28:15 +01:00
Jose Coll
b46de0b964 Merge remote-tracking branch 'origin/colljos-vault-transaction-notes' into colljos-vault-transaction-notes
# Conflicts:
#	core/src/main/kotlin/com/r3corda/core/node/services/Services.kt
#	core/src/main/kotlin/com/r3corda/core/testing/InMemoryVaultService.kt
#	node/src/main/kotlin/com/r3corda/node/services/vault/NodeVaultService.kt
2016-10-28 09:59:58 +01:00
Jose Coll
369214a747 Additional method on VaultService to add notes to a transaction
Additional method on VaultService to retrieve notes for a transaction
2016-10-28 09:57:33 +01:00
Jose Coll
504ec42720 Additional method on VaultService to retrieve notes for a transaction 2016-10-27 16:35:26 +01:00
Jose Coll
f2e98ffba5 Merge branches 'colljos-vault-transaction-notes' and 'master' of https://bitbucket.org/R3-CEV/r3prototyping into colljos-vault-transaction-notes 2016-10-27 14:59:37 +01:00
Jose Coll
74e89181da Merge remote-tracking branch 'remotes/origin/master' into colljos-vault-code-clean-up-refactor
# Conflicts:
#	core/src/main/kotlin/com/r3corda/core/contracts/Structures.kt
#	node/src/test/kotlin/com/r3corda/node/services/NodeSchedulerServiceTest.kt

Fixed conflict.
2016-10-27 12:57:37 +01:00
Jose Coll
7d080c39df Merge remote-tracking branch 'remotes/origin/master' into colljos-vault-code-clean-up-refactor
# Conflicts:
#	core/src/main/kotlin/com/r3corda/core/contracts/Structures.kt
#	node/src/test/kotlin/com/r3corda/node/services/NodeSchedulerServiceTest.kt

Fixed failing CommercialPaper test
(caused by re-use of same database transaction context for vault across two different transaction participants)
2016-10-27 12:56:08 +01:00
Clinton Alexander
8f1329b03f Merged in clint-capletnode (pull request #413)
Moved the Corda Caplet to Node to clear out root src dir.
2016-10-25 09:37:32 +00:00
Clinton Alexander
af902ee4df Removed redundant whitespace. 2016-10-24 18:36:19 +01:00
Clinton Alexander
c18ed4b402 ProtocolLogicFactory now initiated before it is used. 2016-10-24 17:56:16 +01:00
Clinton Alexander
f92f7d8d56 NodeSchedulerService no longer takes a default protocol logic ref factory (because otherwise no protocols are whitelisted) and instead now uses the one constructed in the node. 2016-10-24 17:56:16 +01:00
Clinton Alexander
546f3e2bbf Removed dead plugin reference. 2016-10-24 17:56:16 +01:00
Clinton Alexander
2f5efb34d6 Removed the RatesFixProtocol and dependent code and moved to the IRS repo. 2016-10-24 17:56:16 +01:00
Clinton Alexander
b197a8fa66 Fixed comment on function definition. 2016-10-24 17:41:21 +01:00
Clinton Alexander
19a53ea12d Added prerequisite for using the test clock. 2016-10-21 17:29:59 +01:00
Clinton Alexander
71e1c39622 Fixed type of useTestClock. 2016-10-21 16:42:00 +01:00
Clinton Alexander
8631a64c66 Moved capsule to node to remove it from src. 2016-10-21 14:17:05 +01:00
Clinton Alexander
8f326824f3 Test fix and review fix. 2016-10-21 12:09:21 +01:00
Clinton Alexander
cbb8aa74f9 Replaced clock object with clock class and added documentation. 2016-10-21 11:32:29 +01:00
Clinton Alexander
54e002f654 Clock now instantiates via reflection to allow demo clocks to be passed in. 2016-10-21 11:32:29 +01:00
Clinton Alexander
622b5cabf7 Fixed merge conflict. 2016-10-21 11:32:29 +01:00
Clinton Alexander
1d6b8de11e Added clock to the node 2016-10-21 11:32:29 +01:00
Clinton Alexander
201561497a Added clock to node configuration to allow for creating a demo with a different clock. 2016-10-21 11:31:18 +01:00
Clinton Alexander
0ee4f9c19b Added DriverNodeInfo to allow access to the host and port for the api address for use in integration tests. 2016-10-21 11:31:18 +01:00
Shams Asari
e2d6ace449 RPC client authentication using user/password from config file 2016-10-20 17:55:16 +01:00
Jose Coll
75f671a446 Decommissioned InMemoryVaultService service (all dependent Tests updated to use NodeVaultService) 2016-10-20 13:10:00 +01:00
Jose Coll
c7d98b8c6b Fixed items raised by MH in CRD-CR-58 code review. 2016-10-20 10:52:51 +01:00
Matthew Nesbit
30b7eec18c Remove the file based checkpoints and transactions from the tests.
Messages requiring redelivery to late registered handler persisted in database.

Remove spurious comment and make local val not var
2016-10-19 16:33:12 +01:00
Matthew Nesbit
8eee4afe7d Merged in mnesbit-cor-389-driver-remove-startClient (pull request #409)
Unify messaging services to have a database and not support client type connections.
2016-10-19 14:09:50 +00:00
Jose Coll
04920c9507 Additional method on VaultService to add notes to a transaction 2016-10-19 15:06:52 +01:00
Rick Parker
6c6d7f8546 Merged in bugfix-for-persistent-scheduler (pull request #410)
Fixed intermittent stack serialization issue with persistent scheduler.
2016-10-18 17:23:04 +00:00
Matthew Nesbit
4db1836996 Unify messaging services to have a database and not support client type connections when they should use the RPC connections. Also, push NodeInfo across to the driver via the web interface to remove that use of startClient.
Fix typo
2016-10-18 17:48:52 +01:00
rick.parker
8a3027ffd6 Fixed intermittent stack serialization issue with persistent scheduler.
Improved exception reporting when fiber serialization fails or other internal Quasar error to help with future Kryo errors when checkpointing.
2016-10-18 17:05:10 +01:00
Jose Coll
c23aea3997 Fixed broken tests caused by missing Transaction Context (when moving from InMemory to Db implementation of vault service in MockNetwork) 2016-10-18 10:27:12 +01:00
Jose Coll
62dfea2a1a Re-factoring of OnLedgerAsset generateSpend code (moved to VaultService) 2016-10-17 17:58:26 +01:00
Patrick Kuo
3403d50168 Merged pat-cash-creation-ui into master 2016-10-17 16:10:53 +01:00
Rick Parker
6a20f32a7a Merged in persistent-scheduler (pull request #405)
Persistent scheduler
2016-10-17 12:35:40 +00:00
rick.parker
6a25fcfe8c Persistent scheduler, with race condition removed. 2016-10-17 13:33:32 +01:00
rick.parker
962fdba0f8 Make transaction -> statemachine id mapping persistent. 2016-10-17 11:33:29 +01:00
Patrick Kuo
d4362fbd78 New counterparty model and subscription mechanism to retrieve and track counterparty changes in network map
New transaction creation screen for creating new cash transactions, using party info source from the counterparty model.
2016-10-17 11:25:20 +01:00
Jose Coll
67b2d91b33 Re-factoring of CashBalances code (moved to VaultService) 2016-10-17 11:16:53 +01:00
rick.parker
02a9f8fe67 Remove SAME_THREAD executor and it's use in MockNetwork etc.
Remove all traces of unused optional Executor in messaging.
2016-10-12 12:02:28 +01:00
Matthew Nesbit
1f3b1f4df9 Transactions in database
Include basic unit tests of Transaction storage

Use Rick's column storage code as suggested in PR comments

Remove blank line
2016-10-11 17:49:15 +01:00
Shams Asari
e48e09f04e Session handshake optimised to carry the first send payload in the init message 2016-10-11 17:27:09 +01:00
Matthew Nesbit
1388454396 Never send transactions to the Notary that aren't signed by all parties. Toughen up to use validating Notary in general and put Client precheck into NotaryProtocol.
Rename method to better reflect its actions

Handle comments from PR

Correct indentation
2016-10-11 10:43:40 +01:00
Shams Asari
ac01b67549 Using the protocol ID for the protocol logger name 2016-10-10 13:45:43 +01:00
Mike Hearn
11bcaf5fb2 Minor: go back to using logging for the trader demo specific output (i.e. admit defeat with the ANSI renderer, which is not long for this world anyway) 2016-10-10 12:00:48 +02:00
Andras Slemmer
cf19ff37cd node: Add cleanup TODO on cash creation RPC call 2016-10-10 10:38:02 +01:00
rick.parker
50e613bb75 Clean up compiler warning and make database table names and columns more meaningful. 2016-10-07 18:05:54 +01:00
Matthew Nesbit
1e836edd78 Change ServiceType to a sealed class from an abstract class
Allow AdvertisedServices to have their own identity and keys. Also, rationalise legalIdentity onto the local node's NodeInfo which is available on ServiceHub

Fixup after rebase

Remove legal identity that was on storage service. Now access via myInfo.legalIdentity and key via keyManagement lookup.

Enforce singleton notary per node for now

Tidy up based upon Rick's suggestions

Handle PR comments

clean up imports

Fix typo

Fixup rename

Capitalise comment

Eliminate unused variable warning

Make changes based upon PR comments

Cleanup whitespace changes
2016-10-07 13:44:51 +01:00
Andrius Dagys
4e2f0e0ff9 Split out NodeConfiguration helpers into a separate utility class 2016-10-07 10:44:03 +01:00
rick.parker
2e3952ee1f H2 database exported via configurable port number. 2016-10-06 14:33:56 +01:00
Shams Asari
c3f824001d Removed unused ServiceRequestMessage class hierarchy and added sendRequest method 2016-10-06 10:27:35 +01:00
Shams Asari
307c93858b Using Checkpoint.id when storing Checkpoints 2016-10-05 18:30:46 +01:00
Andrius Dagys
6eb91ffe8b Minor refactoring and api doc update 2016-10-05 17:48:04 +01:00
Andrius Dagys
893f6e4f50 Updated config docs 2016-10-05 17:48:04 +01:00
Andrius Dagys
e5072a8854 FullNodeConfiguration: make use of the getOrElse helper 2016-10-05 17:48:04 +01:00
Andrius Dagys
727c3ac5fc Node: get artemisAddress and webAddress from the config rather than constructor parameters 2016-10-05 17:48:04 +01:00
Andrius Dagys
e5c0c975bd Remove hostNotaryServiceLocally config property – nodes need to specify the correct notary service type in extraAdvertisedServiceIds 2016-10-05 17:48:04 +01:00
Andrius Dagys
3b187a2171 Make Node override configuration and use FullNodeConfiguration so that no casting is needed 2016-10-05 17:48:04 +01:00
Andrius Dagys
fac12b4fce Remove NodeConfigurationFromConfig and replace usages with FullNodeConfiguration 2016-10-05 17:48:04 +01:00
rick.parker
5419e773dc Fix kotlin 1.0.4 error on use of Class.cast() 2016-10-05 13:59:18 +01:00
rick.parker
cd301c727e First working version with database persistence in MockNetwork/Node. 2016-10-05 12:03:28 +01:00
rick.parker
ec975b0426 Hibernate ORM implementation for states. 2016-10-05 11:40:27 +01:00
Andras Slemmer
3bb96f3f3e node: Fix after rebase 2016-10-05 10:40:18 +01:00
Andras Slemmer
8e471c6768 node: Address review comments 2016-10-05 10:40:18 +01:00
Andras Slemmer
5af0e97444 Refactor explorer and friends to use RPC, remove NodeMonitor* 2016-10-05 10:40:18 +01:00
Patrick Kuo
c57229a944 New gradle task for packaging certificate singing request utility jar. 2016-10-04 16:56:18 +01:00
Shams Asari
6b97fbb79f Removed ValidatingClient as notary behaviour is not client configurable 2016-10-04 15:20:36 +01:00
Shams Asari
5e6533eb8a Better use of Futures 2016-10-04 14:11:43 +01:00
Ross Nicoll
53ecb0ecd9 Constrain class type passed to registerProtocolInitiator() 2016-10-04 12:57:22 +01:00
Andrius Dagys
5efa0fd5b3 Advertised services now contain ServiceInfo which describes ServiceType and a service identifier. This will be used, e.g. for grouping distributed notary nodes into the same service cluster. 2016-10-04 11:36:26 +01:00
Matthew Nesbit
76808d36c3 Store protocol checkpoints in the DB, except during Single threaded MockNetwork activity, where we still use the file system based checkpointing. Make the Checkpoint acess a Sequence not an Iterable, so that we don't end up with all the checkpoints permanently resident in memory.
Split up storage initialisation so that there is less code copying in MockNode

Add header comment to DBCheckpointStorage class

Respond to PR comments

Resolve PR comments

Rename iterator on checkpoints

Fix typo

Fixup checkpoints in DB logic after Shams's PR

Delete duplicated code
2016-10-03 17:56:58 +01:00
Shams Asari
67fdf9b2ff Automatic session management between two protocols, and removal of explict topics 2016-10-03 15:21:27 +01:00
Andrius Dagys
b3f3ee0562 Added a json serializer for PublicKeyTree
Typo fixes, other minor refactorings
2016-10-03 11:09:36 +01:00
Andras Slemmer
43d18d46bb Add PartiallyResolvedTransaction to client 2016-10-03 10:17:41 +01:00
Clinton Alexander
a740167100 Merged in clint-mvcc (pull request #366)
Improved concurrency of H2 database with config
2016-09-28 16:51:27 +01:00
Clinton Alexander
7afb034b8c Merged in clint-vegacorechanges (pull request #380)
Corda Changes required for Vega
2016-09-28 16:28:15 +01:00
Clinton Alexander
43de27c4c1 Updated Corda in preparation for the merging of the Vega cordapp. Includes
some minor changes, including gitignore rule changes. The largest change
is replacing the current fresh key for each transaction with a single
static identity in preparation for aimproved and more fleshed out key
sharing infrastructure.
2016-09-28 14:39:41 +01:00
Andras Slemmer
5b10c207e0 Add StateMachine -> Recorded TX mapping stream and emit events on transaction records 2016-09-28 11:46:37 +01:00
Andras Slemmer
6c96517f6f core, node: Add RPC calls, change RPC init order 2016-09-28 10:32:22 +01:00
Patrick Kuo
8f00ec03a3 Checks for SSL certificate on Node startup 2016-09-27 10:15:09 +01:00
Rick Parker
46d6749616 Merged in persistence-support-in-mock-node (pull request #371)
Persistence support in MockNode
2016-09-26 15:12:59 +01:00
rick.parker
cb1fa83b67 Fix up database persistence to work with MockNetwork/MockNode without getting tangled up in the ThreadLocals. 2016-09-26 14:54:00 +01:00
rick.parker
16eda06095 Fix erroneous log statement that corrupts the logs. 2016-09-26 12:57:01 +01:00
Andras Slemmer
7e7bf08062 Rename stateMachineRunId properties to id, remove unused fiberId 2016-09-26 10:40:18 +01:00
Andras Slemmer
cfa5878ea2 Add StateMachineRunId, type for SMM Changes 2016-09-26 10:40:18 +01:00
Matthew Nesbit
a964073c2f Track message id's to deduplicate replays. Widen the auto-acknowledgement window of Artemis back to the default.
Use synchronized wrapper over set.

Drop discard message to trace level logging.

Fix code layout

Use lazy trace extension method

Track message id's to deduplicate replays. Widen the auto-acknowledgement window of Artemis back to the default.

Use synchronized wrapper over set.

Include tx message unique id in checkpointed data.

Add test for checkpointed resend

Fix bug in not getting UUID off message.

Tidy formatting

Add explanation comments to test asserts

Put unique id even on Client messages.

Tidy formatting
2016-09-26 10:12:50 +01:00
Matthew Nesbit
074964f919 Track message id's to deduplicate replays. Widen the auto-acknowledgement window of Artemis back to the default.
Use synchronized wrapper over set.

Drop discard message to trace level logging.

Fix code layout

Use lazy trace extension method
2016-09-22 15:18:24 +01:00
Patrick Kuo
eee18b55f5 Moved certificates path to node configuration 2016-09-22 14:28:12 +01:00
Ross Nicoll
54991c90a1 Merged in rnicoll-dictionary (pull request #369)
Correct typos, add custom dictionary
2016-09-22 09:52:28 +01:00
Clinton Alexander
58c1ab4562 Changed DB store type to MV store. 2016-09-22 09:37:03 +01:00
Patrick Kuo
f7193fee54 fix ArtemisMessagingServer certificate path 2016-09-21 17:50:26 +01:00
Ross Nicoll
80ccf4df34 Change keypair to "keyPair"/"key pair"
Change "keypair" to "keyPair"/"key pair" to correctly indicate it is two words,
not a single word.
2016-09-21 10:50:28 +01:00
Ross Nicoll
d38392093f Rename wallet monitor service to node monitor service 2016-09-21 10:26:20 +01:00
Ross Nicoll
ebda724f14 Change references to 'wallet' with 'vault' 2016-09-20 18:14:53 +01:00
Andras Slemmer
2640e600c8 Merged in aslemmer-node-explorer (pull request #311)
explorer ui v0.2
2016-09-20 12:02:09 +01:00
Patrick Kuo
9b4bf32fdc client certificate signing utility 2016-09-20 10:51:09 +01:00
Andras Slemmer
01d879772d client, explorer: Rearrange/add tx screen columns 2016-09-19 15:05:23 +01:00
Andras Slemmer
041c33a167 client, node: Handle snapshot in explorer 2016-09-19 15:05:23 +01:00
Andras Slemmer
4b74d94001 node: Fix compile after rebase, small typo fix 2016-09-19 15:05:22 +01:00
Andras Slemmer
a23c1d019c node: Fix compile after rebase 2016-09-19 15:05:22 +01:00
Andras Slemmer
c04a3401c3 client, node: Fix compile error after rebase 2016-09-19 15:05:22 +01:00
Andras Slemmer
3042407250 node: Better diagnostics for exit generation in WalletMonitorService 2016-09-19 15:05:22 +01:00
Andras Slemmer
eb82e946d0 node: Expose LedgerTransactions instead of SignedTransactions in WalletMonitor 2016-09-19 15:05:22 +01:00
Clinton Alexander
7d7418095e Increased timeout to avoid spurious timeouts. Added MVCC flag to allow
better concurrency and prevents deadlocks when multiple transactions are
occurring at once, as has happened on Vega.
2016-09-19 13:45:54 +01:00
Matthew Nesbit
478cb58dd6 Delay State Machine fiber start until network map cache is fully populated.
Add some unit tests of the late init behaviour.

Fix merge error

Change statemachine logic to use an in-memory only flag on checkpoints to track their materialisation during startup.

Add annotations for test method

Fix possible race condition on storing checkpoint objects

Correctly create checkpoint

Use then helper function

Cleanup imports
2016-09-19 12:15:33 +01:00
rick.parker
476db876d9 Move db commit to after "protocol completed" future is set.
Move db commit to after "protocol completed" future is set.
2016-09-16 13:56:49 +01:00
rick.parker
236a47104f Persitent network map and key service. Temporary persistence workaround for scheduler. 2016-09-16 12:14:56 +01:00
Patrick Kuo
1388747484 Permissioning server: added new node properties in node config for certificate signing request 2016-09-16 11:42:33 +01:00
Mike Hearn
4d83f1489f Add a client library that provides an RPC mechanism for talking to the Corda node.
The RPC mechanism uses message queues and is essentially conventional except for the fact that it supports marshalling observables. An observable encapsulates a stream of ongoing events, and server-side observables sent to the client are automatically bound to message queues and managed by Artemis.
2016-09-16 10:13:21 +01:00
rick.parker
17c9d231f4 Fix hanging test and fail fast on hang. 2016-09-15 16:39:58 +01:00
Shams Asari
8ea20dd0d2 Removed session IDs from the send and receive methods of ProtocolLogic and are now partially managed by HandshakeMessage 2016-09-14 15:26:55 +01:00
Shams Asari
f314bab6c8 Replacing the two params of AbstractNodeService with single ServiceHubInternal 2016-09-13 11:52:31 +01:00
Rick Parker
53de66a23d Merged in cor-344-persistence-jdbc-transactions (pull request #353)
Add database transactions ready for more widespread persistence.
2016-09-13 10:48:48 +01:00
rick.parker
27cb1c3597 Introduce database transactions around message handling, web API and in protocols. 2016-09-13 10:47:50 +01:00
Andrius Dagys
422a766c1a Minor persistent uniqueness provider tweak 2016-09-13 10:37:53 +01:00
Mike Hearn
ee637b79e2 Merge branch 'mike-fix-wms-for-k104' 2016-09-12 16:40:11 +01:00
Mike Hearn
0e37547af0 Rename ArtemisMessagingClient to NodeMessagingClient to make the purpose clearer once we start landing the clientrpc framework. 2016-09-12 13:16:45 +01:00
Mike Hearn
f6def0ef8f Minor: fix build for Kotlin 1.0.4 pre-release. It is stricter about some dubious code. 2016-09-12 12:18:35 +01:00
Andrius Dagys
0ed6a0ef4d Added a persistent uniqueness provider, backed by a JDBCHashMap.
Enabled a single node persistent notary.
2016-09-12 10:15:03 +01:00
rick.parker
03a04d10ca Remove use of interrupts to in ClockUtils 2016-09-09 16:45:49 +01:00
rick.parker
879802f7fd JDBC backed persistent hash map implementation. 2016-09-09 14:01:05 +01:00
Matthew Nesbit
bf0721868e Move Interest Rate related classes out of :node to reduce dependency of :node module on any specific contract. (Currently only WalletMonitorService and CashBalanceAsMetricsObserver stop me removing the compil dependency of :node on :contracts rather than :core). This has required that I modify fixing protocol to require information on what class of Oracle to use. 2016-09-09 11:31:08 +01:00
Andras Slemmer
0fc560d20a node: Relax TwoPartyTradeProtocolTests so it only checks a subsequence of store accesses 2016-09-09 10:54:16 +01:00
Matthew Nesbit
9518c38f29 Ensure integration tests in modules are in separate configurations and not directly called from build or installDist. 2016-09-08 15:28:04 +01:00
Matthew Nesbit
245d6ce21f Use standalone Corda main class and configuration in the Driver, rather than a separate class.
Better check for Notary services
2016-09-08 12:44:12 +01:00
Mike Hearn
d8d639f192 Merged in mike-small-tweaks (pull request #337)
A few small tweaks
2016-09-08 12:40:14 +02:00
Matthew Nesbit
1f2a6d256e Simplify the FullNodeConfiguration now that an explicit identity for the NetworkMapService isn't a problem.
Use consistent if style

Don't include NetworkMapAddress in config if hosting locally
2016-09-07 15:35:50 +01:00
Mike Hearn
fa4b503f81 Minor: rename UntrustworthyData.validate to UntrustworthyData.unwrap to better indicate its purpose and deprecate the old name. 2016-09-07 13:09:39 +02:00
Mike Hearn
49a0fd8fdd Improve the usability of SignedTransaction.verifySignatures taking into account how it is typically used. 2016-09-07 13:09:39 +02:00
Mike Hearn
1d272f89c2 Check the tx type in NotaryChangeProtocol and add a TODO to write a test for this once the protocol framework propagates exceptions. 2016-09-07 13:09:39 +02:00
Matthew Nesbit
2e1952a8a7 Get rid of the fake NodeInfo used to identify the NetworkMapService node.
Remove old comment
2016-09-06 18:25:12 +01:00
rick.parker
35274cd15c Refactor network map service in preparation for persistence.
Removed currently superfluous clock.
2016-09-06 18:21:06 +01:00
Mike Hearn
2d40c7e6dc Minor: make the logger in the standalone node private to avoid accidental screwups due to name conflicts (mental or read) 2016-09-06 18:40:39 +02:00
Matthew Nesbit
58aa933307 My recent PR#325 contained a couple of mistakes. In particular on Unix, but not windows the shutdown hook unregister can give a non-fatal exception during some tests. Also, I got the point of client messaging service stop registration wrong, which was leading to the server shutting down teh client session ahead of the proper stop sequence. 2016-09-06 16:26:31 +01:00
Andras Slemmer
9e993c5b86 Merged in aslemmer-generators-fixes (pull request #300)
Aslemmer generators fixes
2016-09-06 14:19:28 +01:00
Andras Slemmer
618f46cba4 node: Fix JsonSupportTest imports 2016-09-06 13:59:01 +01:00
Andras Slemmer
491b1abd4a contracts, core, node: Use entropyToKeyPair in Generators instead of manually creating keys 2016-09-06 13:54:59 +01:00
Andras Slemmer
9ff1ad7769 node: Fix redelivery race 2016-09-06 13:54:58 +01:00
Andras Slemmer
cc556cde6f ndoe: Fix message duping on redelivery 2016-09-06 13:54:58 +01:00
Andras Slemmer
89a5448c39 node, core: Add quickcheck generators for basic types, transactions 2016-09-06 13:54:58 +01:00
Mike Hearn
9d83a9b6d2 Minor: move transaction types out of the contracts package and into a new transactions package 2016-09-06 14:20:32 +02:00
Andras Slemmer
4923e33a7d node: Remove unnecessary @Suppress 2016-09-06 09:52:43 +01:00
Andras Slemmer
737fc0589c node: Add clock test for external interrupt on waiting strand 2016-09-06 09:52:43 +01:00