Andrius Dagys
b9d5081af6
Update notary change flow to support encumbrances ( #101 )
...
* Update notary change flow to support encumbrances.
Move encumbrance pointer from ContractState to TransactionState.
* Refactor & add new encumbrance tests
2017-01-05 17:44:31 +00:00
Shams Asari
08e391579c
Node verifies the peer it connects to by checking its TLS common name
2017-01-05 14:22:11 +00:00
Mike Hearn
875efbfa11
Merge pull request #106 from corda/mike-thread-affinity-for-smm
...
Additional thread affinity for the StateMachineManager.
2017-01-05 11:03:35 +01:00
Thomas Schroeter
bbc9c763e3
Detect duplicate inputs in NotaryFlow
...
Throw NotaryException when duplicate inputs are detected.
2017-01-05 08:09:49 +00:00
Clinton
d9663f1698
Merge pull request #72 from corda/clint-simmdemointegrationtest
...
Add SIMM valuation demo integration test
2017-01-04 15:32:44 +00:00
Mike Hearn
1a53834a60
Additional thread affinity for the StateMachineManager.
...
Check that the SMM.add method is being called on the SMM thread and throw if not. Make ServiceHubInternal.startFlow() do a blocking call onto the server thread. Update unit tests.
This resolves an issue whereby the scheduler was starting flows outside of the server thread, which isn't intended.
2017-01-04 16:06:33 +01:00
Mike Hearn
119d00c384
Upgrade dependencies and centralise some more version numbers in the root gradle file
2017-01-04 15:44:56 +01:00
Shams Asari
e34f33785f
Prevent the node from starting if running on a version of Java with the empty Path bug ( #83 )
2017-01-03 10:42:18 +00:00
Thomas Schroeter
159ca9884f
Make NotaryFlow idempotent
...
Alternatively, we could make the underlying UniquenessProviders
idempotent.
2016-12-31 09:26:18 +00:00
josecoll
021bcb0628
Merge pull request #92 from corda/colljos-fix-issue88
...
Fixed issue caused by race condition in process registration v node e…
2016-12-23 15:20:16 +00:00
josecoll
b4a5a03992
Fixed issue caused by race condition in process registration v node exit.
...
See https://github.com/corda/corda/issues/88
2016-12-23 15:09:13 +00:00
Andrius Dagys
2e29673392
Distributed notary: manually initialize the serializer for copycat server & client. This fixes the issue where one of the nodes is unable to connect to the cluster.
2016-12-23 12:52:04 +00:00
josecoll
eac2cb1cc6
Bank of Corda integration with Trader Demo and Explorer
...
Initial conversion of Explorer to use IssuerFlow (from BankOfCorda)
Initial conversion of TraderDemo to use IssuerFlow (from BankOfCorda)
Updated TraderDemo to use IssuerFlow (from BankOfCorda)
Fixed TraderDemo integration text (added new BankOfCorda node)
Updated Explorer with changes IssuerRequest params
Explorer now correctly displaying transaction id upon Issue.
Moved IssuerFlow into finance package so can be reused across multiple demos (TraderDemo) and applications (eg Explorer)
Refactored BankOfCorda demo to use Finance package and TestUtil constants
Updated TraderDemo to use IssuerFlow
Updated Explorer to use finance package IssuerFlow.
Advertised BankOfCorda as Issuer for usage by Explorer.
Explorer no longer depends on BankOfCorda demo since IssuerFlow promoted to Finance module
Added IssuerFlow to AbstractNode whitelist.
Explicit declarations of IssuerFlow no longer required.
Added plugin registration of IssuerFlow at bootstrap.
Revert whitelisting of IssuerFlow (plugin configured)
Refactored to use constant BOC definition.
Added gradle RPC security config.
Updated documentation
Fixed incorrect references.
Renamed Issuer banks.
Added new permission set (for Issuer nodes)
Added node nearestCity info
Added new Issuer Event Generator for Issuer nodes only
Associated currency with issuer using ServiceType naming structure.
Added argument flag (-S) to trigger event generator simulation node.
Fixed problem with issuers not resolving from network map.
Updated perms on Issuer rpc proxy nodes.
Fixed minor in cash generateExit identified by Explorer.
Changes applied in prep for AWG demo.
Added IntelliJ run-configurations for launching Explorer demo nodes (with and without simulation)
Updated documentation (and added additional gradle task to launch Explorer nodes in simulation mode).
Fix following rebase.
Addressed review items from PR.
Updated TraderDemo readme.
Updated TraderDemo gradle file to launch Bank of Corda node.
Updated JRE properties.
Updated IssuerModel to incorporate correct JFX Observable handling.
Fixed bug with Exit command not displaying any currency.
Added TODO's for revisiting correct Exception handling strategy.
Optimization for when issuing cash to self.
Minor updates following PR review.
Remove old refs to Royal Mint and Federal Reserve
2016-12-22 15:55:50 +00:00
Shams Asari
924fb479e4
Cleaned up DistributedNotaryTests, including addressing overlap with RaftValidatingNotaryServiceTests
2016-12-22 12:49:33 +00:00
Mike Hearn
edc648ae95
Wish our users a merry Christmas and a happy new year.
2016-12-22 11:37:27 +01:00
Rick Parker
bd979534f3
Add database transactions back onto observations. ( #77 )
...
Add database transactions back onto Observables now that they are post database commit.
2016-12-22 10:03:22 +00:00
Andras Slemmer
7d9caa984b
node: Driver network map starts parallel with other nodes, uses executor service, pre-create most artemis queues
2016-12-20 14:49:55 +00:00
Shams Asari
81d1459599
Fixed bug where messages can't be sent to services running on the network map node ( #71 )
2016-12-20 12:03:21 +00:00
Clinton Alexander
3c2610613f
Integration test uses better naming sceme. Json support module cleaned up to use Kotlin features.
2016-12-19 16:26:54 +00:00
Andrius Dagys
6f3ed327a0
Vault: return a list of unconsumed states rather than a sequence. The lazy evaluation captures some extra context, serialization of which in flows results in errors.
2016-12-16 15:48:48 +00:00
Clinton Alexander
fa1e7cfa15
Corda JSON module now created in a separate function to the default mapper.
2016-12-16 14:51:12 +00:00
Clinton Alexander
234ffb141c
Fixed issues with incorrect serialisation in test utilities.
2016-12-16 12:11:26 +00:00
Mike Hearn
f44dd969ce
Fix ANSI logging on Windows
2016-12-15 21:00:45 +01:00
Joel Dudley
334ed4806b
Adds overload anotations and reorganizes param orders to improve java interop.
2016-12-15 18:27:41 +00:00
Andrius Dagys
7cb4cbcad4
Made vault updates contain full StateAndRef in the consumed set (instead of just StateRef). This allows subscribers to check whether the update contains relevant states.
...
Cash balances are now calculated by keeping only the aggregate values (it no longer needs to iterate through all states in the vault).
2016-12-15 16:27:39 +00:00
Andrius Dagys
673b0393b4
Increase JDBCHashMap default bucket size. With the current implementa… ( #58 )
...
Increase JDBCHashMap default bucket size. With the current implementation of the Vault, once the number of stored transactions (or UTXO) goes over the max bucket size we end up reloading each transaction from the db and deserializing it, which causes severe performance degradation.
2016-12-15 15:45:51 +00:00
exfalso
53bbb57345
Add ReceivedSessionMessage, DriverBasedTest re #57
2016-12-15 11:37:15 +00:00
Andras Slemmer
a3138ab0dc
Address PR comments
2016-12-15 11:37:15 +00:00
Andras Slemmer
4f44962962
Add kdocs on service addressing
2016-12-15 11:36:06 +00:00
Andras Slemmer
6a796cef35
Add raft notary integration tests, testing service addressing
2016-12-15 11:36:06 +00:00
Andras Slemmer
7ee88b6ec8
Add SMM test for round robin node picking
2016-12-15 11:36:06 +00:00
Andras Slemmer
fd436b0cdc
artemis, sessions, mock: Add Service addressing, tests pass
2016-12-15 11:36:06 +00:00
Shams Asari
7afa3346d6
Updated docs and TODOs to be inline with recent changes to the doorman
2016-12-13 17:03:15 +00:00
Andras Slemmer
09e11f8435
rpc-kryo: Kryo register hidden jar url inputstream class
2016-12-13 11:51:14 +00:00
Patrick Kuo
a4201c7152
This fixes the node startup issue - https://github.com/corda/corda/issues/37 ( #48 )
...
* Create missing artemis bridge when node is added to the network map
* Added integration test for this issue
* addressed PR issues
2016-12-12 13:29:31 +00:00
Clinton Alexander
d429385e72
Fix: Capsule did not contain caplet due to an incorrect path.
2016-12-09 17:58:00 +00:00
Shams Asari
9d98673c66
Added commonName extension method to X500Name and helper class for x509 cert factories
2016-12-09 17:13:00 +00:00
Clinton
b43d940297
Merge pull request #35 from corda/clint-M6publishing
...
Corda can be published to bintray and reduced publishing boilerplate in build.gradle.
2016-12-09 15:07:46 +00:00
Joel Dudley
ae349a8831
Adds todos that will improve java interop.
2016-12-09 14:30:52 +00:00
rick.parker
b52c52378f
Move Future completion outside database transaction so that the effects of the flow will be externally visible at Future completion.
2016-12-09 09:21:59 +00:00
Clinton Alexander
2f61340945
Fixed review comments.
2016-12-08 16:58:22 +00:00
rick.parker
0378b8d785
Buffer observations until database commit.
2016-12-08 16:32:45 +00:00
Mike Hearn
5f603a94f0
Minor: add a TODO
2016-12-08 14:06:32 +00:00
Andrius Dagys
b57aec1962
Minor: make distributed notary test use a different folder on every run
2016-12-08 12:15:48 +00:00
Andras Slemmer
4fe1d48e4a
demos: Fix demo RPC serialisation after rebase
2016-12-08 11:58:31 +00:00
Andras Slemmer
9117ec9860
Simplify InputStreamSerializer, make NODE_USER role explicit
2016-12-08 11:58:31 +00:00
Andras Slemmer
a601f0abf5
Local RPC, demos use RPC, NODE has special privileges
2016-12-08 11:58:31 +00:00
Matthew Nesbit
f63e6cd2a6
Add some hooks to StateMachineManager and NodeSchedulerService so that unit tests of flows with scheduled actions can safely test for completion of their test activities. Typically this is done using a while loop whilst there are active fibers, or schedules and then blocking on the ReusuableLatches until the status changes and can be re-evaluated.
...
Add unit tests of ScheduledFlow running on simulated network.
Just use existing DumyContract in test
DummyContract requires value equality so that assertEquals over states works as expected.
Remove blank line.
Add TODO on waitQuiescent.
Fix minor build error
2016-12-07 16:11:55 +00:00
Joel Dudley
03b5e9bced
Address review comments.
2016-12-07 14:15:20 +00:00
joeldudleyr3
432015ddfe
Adds JvmName annotations where necessary to improve interop when developing CorDapps in java.
2016-12-07 12:12:18 +00:00
Clinton Alexander
41b0b6c0b1
Re-added the capsule file. Fixed deploy with another publish option.
2016-12-06 16:06:16 +00:00
Clinton Alexander
a0d5426ced
Due to insurmountable issues with publishing the JARs when the project is called Corda it has been renamed back to capsule.
2016-12-06 16:06:16 +00:00
Clinton Alexander
1463cd2b37
Renamec capsule module to corda.
2016-12-06 16:06:16 +00:00
Clinton Alexander
b24c628e34
Publications now publish JARs again. Install task now publishes again.
2016-12-06 16:06:16 +00:00
Clinton Alexander
bf49dda731
Corda now publishes with updated publish utils.
2016-12-06 16:06:16 +00:00
Clinton Alexander
c8e14b0ac6
Added all artifacts required for the corda capsule to be published on maven central.
2016-12-06 16:06:16 +00:00
Clinton Alexander
810596927e
Added a new capsule build.gradle to allow multiple bintray uploads from one build.gradle.
2016-12-06 16:06:16 +00:00
Clinton Alexander
348092cfa6
Re-added corda capsule publication.
2016-12-06 16:06:16 +00:00
Clinton Alexander
dec9cfc5a4
Added client and node publishing.
2016-12-06 16:06:16 +00:00
Andras Slemmer
fd229df956
node: Add ClassSerializer, register default flow parameters for RPC
2016-12-06 13:55:18 +00:00
Matthew Nesbit
99219c6a5f
Allow cordapp types to be used in parameters to cordapp startFlowDynamic RPC calls.
...
Add missing registration.
2016-12-05 16:57:22 +00:00
Shams Asari
10360ae8cf
Converted MapChange into a sealed data structure so that only Modified has the previous node property
2016-12-05 10:04:31 +00:00
Shams Asari
4addb91f80
Added security to RPC and P2P systems.
2016-12-02 18:11:08 +00:00
Shams Asari
5432905b4a
Clean up NetworkMapCache and InMemoryNetworkMapCache
2016-12-02 14:45:54 +00:00
Andrius Dagys
ad5d6f5cd4
DistributedImmutableMapTest: enable copycat client connection retry to avoid race conditions
2016-12-01 13:21:25 +00:00
Matthew Nesbit
e54a304e2e
Depend upon an internal artifact, rather than a maven local published artifact when building the corda fatjar.
2016-11-30 16:16:51 +00:00
Mike Hearn
d500bf8f50
Address review comments.
2016-11-30 15:11:35 +00:00
Mike Hearn
7b40be8361
Run the IntelliJ reformatter across the Kotlin code. Did not reformat JS/web code.
2016-11-30 14:40:34 +00:00
Andrius Dagys
8e836bc279
Distributed notary: configure Raft client retry to avoid race conditions
2016-11-29 11:07:22 +00:00
Andrius Dagys
4c6625559f
Merged in andrius-dep-cleanup (pull request #569 )
2016-11-28 18:28:28 +00:00
Ross Nicoll
f5ecddb4b2
Add get() method to identity service
2016-11-28 18:01:03 +00:00
Andrius Dagys
ef598d926f
Include only required atomix dependencies.
2016-11-28 15:51:31 +00:00
Shams Asari
38876e3984
Introducing Future.getOrThrow() which throws the cause of the ExecutionException
2016-11-28 15:21:22 +00:00
Mike Hearn
7b2eb651be
Suppress or fix the few remaining compiler warnings
2016-11-28 14:04:30 +00:00
Jose Coll
bc3550e3e6
Merged in colljos-kryo-observable-registration (pull request #544 )
...
Kryo registration of Observable with explicit ID.
2016-11-28 13:31:51 +00:00
Shams Asari
56ada37259
Remove checked in node logs and git ignore node/logs
2016-11-28 10:49:44 +00:00
Andras Slemmer
811b0e6a8d
Merged in aslemmer-warn-on-double-tx-record (pull request #546 )
...
Check for duplicate transaction records
2016-11-28 10:34:34 +00:00
Andrius Dagys
946cfda03e
Added a distributed notary demo that runs a notary cluster and gets several transactions notarised
2016-11-25 17:09:57 +00:00
Andrius Dagys
758ab6d359
Extended Driver api to allow custom config overrides. Added helper methods for creating a distributed notary cluster.
2016-11-25 17:09:57 +00:00
Andras Slemmer
44d1b79ef9
docs: Address PR 513 comments
2016-11-25 15:33:04 +00:00
Mike Hearn
aa629f74ca
Change startup message of the day
2016-11-25 14:30:40 +01:00
Andras Slemmer
87bd97d0c7
Check for duplicate transaction records
2016-11-24 18:00:04 +00:00
Patrick Kuo
cd34f3ae16
Merged in pat-explorer-more-changes (pull request #505 )
...
Pat explorer more changes
2016-11-24 17:47:01 +00:00
Rick Parker
44e09f3366
Merged in parkri-remove-intermittent-error-at-start (pull request #542 )
...
Remove race condition and intermittent logged error at node start up regarding "Queue created for a peer that we don't know from the network map".
2016-11-24 16:30:14 +00:00
rick.parker
8ec21eedb3
quasarScan removal.
2016-11-24 16:27:51 +00:00
Patrick Kuo
fbf952a1ab
Explorer corda branding
2016-11-24 15:46:50 +00:00
Jose Coll
f6f896d072
Kryo registration of Observable with explicit ID.
2016-11-24 15:39:08 +00:00
rick.parker
b20baff54c
Remove race condition and intermittent logged error at node start up regarding "Queue created for a peer that we don't know from the network map".
2016-11-24 13:14:07 +00:00
rick.parker
7d387870d2
Fix annotation on JDBCHashMapTestSuite and class name typo.
2016-11-23 13:08:14 +00:00
rick.parker
f68529d1fd
Rename protocol to flow.
2016-11-22 17:17:14 +00:00
Mike Hearn
6aa5f0a4b5
Minor: better plugin name printing in the banner
2016-11-22 15:04:15 +01:00
Mike Hearn
a70136f775
Minor: fix startup time calculation, fix demos to print things to stdout instead of log.info
2016-11-22 12:41:05 +01:00
Andrius Dagys
93505d5e2e
Merged in andrius-rename-bits (pull request #508 )
2016-11-22 08:26:37 +00:00
Mike Hearn
235cee6727
Add a startup banner and suppress console logging unless --log-to-console is passed on the command line.
2016-11-21 16:08:36 +01:00
Andrius Dagys
64299591c3
Rename PublicKeyTree -> CompositeKey and unify terminology across documentation.
2016-11-21 14:47:19 +00:00
Andrius Dagys
635ee8df79
Rename bits -> bytes, as it normally indicates a byte array
2016-11-21 13:02:27 +00:00
Clinton Alexander
063dbec505
Merged in clint-bintray (pull request #496 )
...
Removed duplicate gradle plugins and added bintray publishing tasks
2016-11-21 11:20:13 +00:00
Andrius Dagys
9256056ebc
Moved distributed notary tests to integration-test. Stopped using full date as the test folder name.
2016-11-21 09:59:08 +00:00
Andrius Dagys
0d56846b1b
Added a distributed notary that uses the Raft consensus algorithm (implemented by Copycat).
...
The notary operates by storing committed input states in a map state machine which is replicated across the Copycat cluster.
2016-11-18 18:13:19 +00:00
rick.parker
6abb5750bf
RPC Kryo plugin functionality.
2016-11-18 17:38:05 +00:00