Commit Graph

329 Commits

Author SHA1 Message Date
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
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
Andras Slemmer
fc7000c152 node: Fix race in Clock.doInterruptibly by not relying on version counter 2016-09-06 09:52:43 +01:00
Matthew Nesbit
11efe8ca1b Extend Rick's closeOnShutdown so that all the shutdown that was being done manually is done through the same mechanism. Thus allowing for a consistent reverse ordering and hopefully preventing DB shutdown happening ahead of serverThread shutdown.
Follow Rick's PR suggestions

Preserve comment about abitrary timeout on serverThread stop
2016-09-06 09:18:59 +01:00
Andras Slemmer
d8ae07e771 node-driver: Use anyAddress for RandomFree port allication 2016-09-05 17:29:44 +01:00
Andras Slemmer
9836edd191 Revert reuseaddr 2016-09-05 16:08:58 +01:00
Andras Slemmer
6b37048a14 node-driver: Remove reuseAddress = true as it breaks tests on osx 2016-09-05 15:43:19 +01:00
Shams Asari
97e1a59770 Refactored FiberRequest into cleaner ProtocolIORequest and fixed checkpoint regression 2016-09-05 14:42:54 +01:00
Matthew Nesbit
eb8510e7cc Some integration tests seem to be getting exceptions that suggest the ArtemisMQ session has been closed down already. Looking at the client code it is clear two threads can call stop and interfere with each other. Therefore this fixes the running flag logic. 2016-09-05 14:13:38 +01:00