mirror of
https://github.com/corda/corda.git
synced 2025-01-20 11:39:09 +00:00
Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
ca23612fe1
* CORDA-3596 Record flow metadata Record flow metadata during the zero'th checkpoint that occurs before calling the flow's `call` function. This required adding an RPC call's arguments to the `InvocationContext` that gets created. These arguments are then accessible within the statemachine and from the `Checkpoint` class. The arguments are then extracted when recording a flow's metadata inside of `DBCheckpointStorage`. Updated the size of the started by column to 128 since it was not long enough to hold the fully qualified class of a service that started a flow. * CORDA-3596 Remove arguments from in-memory checkpoint When executing a flows first real suspend (from flow code) the arguments contained in the `InvocationContext` are removed. This saves holding these arguments for the whole lifecyle of a flow. * CORDA-3596 Increase `cordapp_name` column to 128 * CORDA-3596 Join metadata by `flow_id` Due to changes in where metadata is recorded, there is no need for having `invocation_id` as the metadata table's primary key. The `flow_id` is now the primary key of the table and is used to join to the main checkpoints table. The `invocation_id` has been removed from the checkpoints table since it is not needed for the join anymore. * CORDA-3596 Remove `received_time` from metadata table * CORDA-3596 Remove unused `StartReason` enum * CORDA-3596 Simple `DBCheckpointStorageTests` for metadata * CORDA-3596 Truncate really long flow names |
||
---|---|---|
.ci | ||
.github | ||
.idea | ||
client | ||
common | ||
confidential-identities | ||
config | ||
core | ||
core-deterministic | ||
core-tests | ||
detekt-plugins | ||
docker | ||
docs | ||
experimental | ||
finance | ||
gradle/wrapper | ||
isolated | ||
jdk8u-deterministic | ||
lib | ||
node | ||
node-api | ||
node-api-tests | ||
release-tools | ||
samples | ||
serialization | ||
serialization-deterministic | ||
serialization-djvm | ||
serialization-tests | ||
testing | ||
tools | ||
.dockerignore | ||
.gitignore | ||
build.gradle | ||
BUILD.md | ||
buildCacheSettings.gradle | ||
constants.properties | ||
CONTRIBUTING.md | ||
CONTRIBUTORS.md | ||
detekt-baseline-config.yml | ||
detekt-baseline.xml | ||
detekt-config.yml | ||
deterministic.gradle | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
Jenkinsfile | ||
LICENSE | ||
README.md | ||
SECURITY.md | ||
settings.gradle | ||
sizing.sh | ||
TRADEMARK |
Corda
Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
Features
- Smart contracts that can be written in Java and other JVM languages
- Flow framework to manage communication and negotiation between participants
- Peer-to-peer network of nodes
- "Notary" infrastructure to validate uniqueness and sequencing of transactions without global broadcast
- Enables the development and deployment of distributed apps called CorDapps
- Written in Kotlin, targeting the JVM
Getting started
- Read the Getting Started documentation
- Run the Example CorDapp
- Read about Corda's Key Concepts
- Follow the Hello, World! tutorial
Useful links
- Project Website
- Mailing List
- Documentation
- Stack Overflow Tag
- Slack Channel
- Meetups
- Training Courses
Contributing
Corda is an open-source project and contributions are welcome!
To find out how to contribute, please see our contributing docs.
License
Acknowledgements
YourKit supports open source projects with its full-featured Java Profiler.
YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.