Michael Vines
6ac5700f2e
Move metrics into its own crate
2018-11-16 15:10:07 -08:00
carllin
928f375683
Rocks db ( #1792 )
...
* Add rocksdb crate
* Implement new ledger module based on RocksDb
2018-11-15 15:53:31 -08:00
anatoly yakovenko
a41254e18c
Add scalable gossip library ( #1546 )
...
* Cluster Replicated Data Store
Separate the data storage and merge strategy from the network IO boundary.
Implement an eager push overlay for transporting recent messages.
Simulation shows fast convergence with 20k nodes.
2018-11-15 13:23:26 -08:00
jackcmay
39c87fd103
Add BPF benchmarks
2018-11-14 12:06:06 -08:00
Sathish
9fe210c454
Add host information to db entries ( #1778 )
...
Add new field to each db entry identifying the host
that it originated from.
2018-11-13 21:54:15 -08:00
Sagar Dhawan
a77b1ff767
Revert "Migrate from ring to ed25519-dalek" ( #1798 )
...
* Revert "Migrate from ring to ed25519-dalek"
This reverts commit 7c610b216b
.
* Fix test failures with revert
2018-11-12 22:34:43 -08:00
Greg Fitzgerald
7c610b216b
Migrate from ring to ed25519-dalek
...
Why?
* Pure Rust, no BoringSSL (or OpenSSL) dependency
* Those avx2 benchmarks
* ring includes far more than what we need
* ring author won't add release tags: https://github.com/briansmith/ring#versioning--stability
2018-11-11 09:22:52 -07:00
Greg Fitzgerald
cdf1a96e23
Revert "V1 Window/Ledger based on RocksDb ( #1712 )"
...
This reverts commit bfcdec95cb
.
2018-11-09 20:25:53 -07:00
carllin
bfcdec95cb
V1 Window/Ledger based on RocksDb ( #1712 )
...
* Add rocksdb
* Implement new ledger module based on RocksDb
2018-11-09 18:30:26 -08:00
Michael Vines
40e945b0c8
Move token_program from src/ to programs/native/
2018-11-02 18:13:02 -07:00
Michael Vines
74b4ecb7f3
Upgrade to influx_db_client@0.3.6
2018-10-30 19:44:09 -07:00
jackcmay
3488ea7d1c
Cleanup c programs ( #1620 )
...
Cleanup C programs
2018-10-26 19:38:07 -07:00
Michael Vines
9e5ac76855
0.11.0
2018-10-25 17:19:07 -07:00
Michael Vines
48685cf766
0.10.0-pre2
2018-10-25 16:19:31 -07:00
Michael Vines
1733beabf7
mv common/ sdk/
2018-10-25 13:26:10 -07:00
Michael Vines
471d8f6ff9
Fix up the version references to all other internal crates
2018-10-25 12:54:32 -07:00
Michael Vines
e47fcb196b
s/solana_program_interface/solana[_-]sdk/g
2018-10-25 12:31:45 -07:00
Michael Vines
113b002095
Delete programs/native/move_funds
2018-10-25 11:37:38 -07:00
Michael Vines
9447537d8c
Increment internal Cargo references to solana_program_interface
2018-10-25 11:03:03 -07:00
Stephen Akridge
ead7f4287a
Storage mining fixups...
...
* Use IV to make unique identies
* Use hex! macro for hex literal and not string converted to u8 slice
* fix sha sampling to control init/end of sha state
2018-10-24 09:58:41 -07:00
Jack May
bb628e8495
Rename loaders
2018-10-16 14:27:08 -07:00
jackcmay
c886625c83
Move from solana/rbpf fork to qmonnet/rbpf ( #1511 )
2018-10-16 13:13:54 -07:00
jackcmay
d09889b1dd
Program bank integration ( #1462 )
...
Native, BPF and Lua loaders integrated into the bank
2018-10-16 09:43:49 -07:00
Tyera Eulberg
7424388924
Fix session drop
2018-10-16 00:11:26 -06:00
Tyera Eulberg
b534c32ee3
New minor version for jsonrpc crates
2018-10-11 13:35:06 -06:00
Tyera Eulberg
d2712f1457
Specify patch for jsonrpc crates
2018-10-11 11:38:14 -07:00
Michael Vines
e83834e6be
Build native programs in release configuration
2018-10-10 16:49:48 -07:00
Tyera Eulberg
785c619198
Add pubsub module for rpc info subscriptions ( #1439 )
2018-10-10 14:51:43 -06:00
Greg Fitzgerald
0403299728
Add context-free Lua smart contracts
...
lua_State is not preserved across runs and account userdata is not converted into
Lua values. All this allows us to do is manipulate the number of tokens
in each account and DoS the Fullnode with those three little words,
"repeat until false".
Why bother? Research. rlua's project goals are well-aligned with the LAMPORT runtime.
What's next:
* rlua to add security limits, such as number of instructions executed
* Add a way to deserialize Account::userdata OR use Account::program_id
to look up a metatable for lua_newuserdata().
2018-10-09 11:06:48 -06:00
Greg Fitzgerald
da0404ad03
Reduce maintenance of maintainers list
2018-10-04 23:05:08 -07:00
jackcmay
13d4443d4d
Add BPF support & C-based BPF tic-tac-toe ( #1422 )
...
Add initial support for BPF and a C port of tictactoe
2018-10-04 09:44:44 -07:00
dependabot[bot]
33e179caa6
Update sha2 requirement from 0.7.0 to 0.8.0
...
Updates the requirements on [sha2](https://github.com/RustCrypto/hashes ) to permit the latest version.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/commits/sha2-v0.8.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-10-02 09:00:05 -06:00
Stephen Akridge
aa2a3fe201
Add chacha module to encrypt ledger files
2018-09-28 14:23:37 -07:00
Jack May
abd13ba4ca
move program tests to integration
2018-09-28 11:30:10 -07:00
Michael Vines
d26e1c51a9
0.10.0
2018-09-27 16:38:53 -07:00
Tyera Eulberg
dbc1ffc75e
Use jsonrpc fork
2018-09-27 12:50:38 -06:00
jackcmay
9c47e022dc
break dependency of programs on solana core ( #1371 )
...
* break dependency of programs on Solana core
2018-09-27 07:49:26 -07:00
Greg Fitzgerald
bb7ecc7cd9
Migrate to solana-labs fork of jsonrpc
...
This changes aims to be a no-op. Future changes to rev should be
along the new solana-0.1 branch.
2018-09-26 10:08:37 -06:00
Michael Vines
8f0e0c4440
Add tic-tac-toe program
2018-09-25 12:07:41 -07:00
jackcmay
26b1466ef6
Initial integration of dynamic contracts and native module loading ( #1256 )
...
* Integration of native dynamic programs
2018-09-23 22:13:44 -07:00
sakridge
a9355c33b2
Placeholder storage contract and replicator client ( #1286 )
...
* Add hooks for executing the storage contract
* Add store_ledger stage
Similar to replicate_stage but no voting/banking stuff, just convert
blobs to entries and write the ledger out
* Add storage_addr to tests and add new NodeInfo constructor
to reduce duplication...
2018-09-21 15:32:15 -07:00
Rob Walker
8ccfb26923
tests for my IP picker
2018-09-20 09:21:09 -07:00
sakridge
2981076a14
Add solana-upload-perf to parse json from bench and upload to influx ( #1166 )
2018-09-19 13:16:55 -07:00
dependabot[bot]
7601a8001c
Update reqwest requirement from 0.8.6 to 0.9.0
...
Updates the requirements on [reqwest](https://github.com/seanmonstar/reqwest ) to permit the latest version.
- [Release notes](https://github.com/seanmonstar/reqwest/releases )
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md )
- [Commits](https://github.com/seanmonstar/reqwest/commits/v0.9.0 )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-09-19 10:47:02 -06:00
Tyera Eulberg
8b7edc6d64
Alphabetize
2018-09-16 15:17:10 -06:00
Pankaj Garg
90df6237c6
Implements recvmmsg() for UDP packets ( #1161 )
...
* Implemented recvmmsg() for UDP packets
- This change implements binding between libc API for recvmmsg()
- The function can receive multiple packets using one system call
Fixes #1141
* Added unit tests for recvmmsg()
* Added recv_mmsg() wrapper for non Linux OS
* Address review comments for recvmmsg()
* Remove unnecessary imports
* Moved target specific dependencies to the function
2018-09-13 14:41:28 -07:00
Rob Walker
e7a910b664
v0.9
2018-09-12 10:27:33 -07:00
Pankaj Garg
05460eec0d
Open multiple sockets for transaction UDP port ( #1128 )
...
* Reuse UDP port and open multiple sockets for transaction address
* Fixed failing crdt tests
* Add tests for reusing UDP ports
* Address review comments
* Updated bench-streamer to use multiple receive sockets
* Fix minimum number of recv sockets for bench-streamer
* Address review comments
Fixes #1132
* Moved bind_to function to nat.rs
2018-09-06 14:13:40 -07:00
Tyera Eulberg
77d820c842
Update drone module to return airdrop tx signature
2018-08-28 18:27:41 -06:00
Tyera Eulberg
30cbe7c6a9
Update jsonrpc crate version
2018-08-28 18:27:24 -06:00
dependabot[bot]
59dd8b650d
Update generic-array requirement from 0.11.1 to 0.12.0
...
Updates the requirements on [generic-array](https://github.com/fizyk20/generic-array ) to permit the latest version.
- [Release notes](https://github.com/fizyk20/generic-array/releases )
- [Changelog](https://github.com/fizyk20/generic-array/blob/master/CHANGELOG.md )
- [Commits](https://github.com/fizyk20/generic-array/commits )
Signed-off-by: dependabot[bot] <support@dependabot.com>
2018-08-26 14:27:19 -06:00
anatoly yakovenko
f7c0d30167
Disallow localhost in deployment ( #1064 )
...
* disallow localhost in deployment
* tests
* fmt
* integration tests do not have a flag to check
* fmt
2018-08-25 21:09:18 -07:00
Greg Fitzgerald
db3fb3a27c
Boot criterion ( #1032 )
...
* Revert benchmarks back to libtest
Criterion has too many dependencies, it's execution as slower, and
we didn't see the kind of precision we had hoped for to use it to
block CI builds.
* Ignore benchmarks that take more than a few milliseconds per iteration
* Revert "Ignore benchmarks that take more than a few milliseconds per iteration"
This reverts commit b87cdf6ef4a2549ec09e282014391de695473699.
* Don't run benchmarks in CI
They are already built in the nightly build. Executing them in CI
doesn't add much value until the results are precise enough to act
on.
2018-08-22 08:57:07 -06:00
Greg Fitzgerald
2d35345c50
Boot unused creates
2018-08-20 16:48:37 -06:00
Tyera Eulberg
d9fac86015
Use jsonrpc git repo, allowing removal of Default bound for Metadata
2018-08-18 12:29:49 -06:00
Tyera Eulberg
c6662a4512
Implement Rpc in Fullnode
2018-08-18 12:29:49 -06:00
Tyera Eulberg
d3c09b4e96
Update jsonrpc dependency syntax
2018-08-18 12:29:49 -06:00
Tyera Eulberg
fc1dbddd93
Implement json-rpc functionality
2018-08-18 12:29:49 -06:00
Michael Vines
c9508e84f2
0.8.0
2018-08-17 17:56:35 -07:00
Tyera Eulberg
46d50f5bde
Remove p2p crate (and uPnP support)
2018-08-13 18:22:58 -07:00
Michael Vines
231d5e5968
0.7.1
2018-08-13 12:12:27 -07:00
Stephen Akridge
a206f2570d
Add hostname to metrics on panic
2018-08-10 17:08:40 -07:00
Tyera Eulberg
8d2a61a0c9
Alphabetize bins
2018-08-09 16:23:05 -06:00
Tyera Eulberg
7512317243
Alphabetize dependencies
2018-08-09 16:23:05 -06:00
Rob Walker
6800ff1882
solana-ledger-tool initial commit
...
does nothing but convert from random-access ledger to json
2018-08-05 13:30:45 -07:00
Michael Vines
28fa43d2a9
Use env_logger@0.5.12
2018-08-03 20:08:30 -07:00
Stephen Akridge
7ccd771ccc
Only send sigverify to GPU if batch size is >64
...
Seems to be a decent crossover point for Xeon E5-2620 v4 8c,16t vs. nvidia 1080ti
2018-08-01 16:38:15 -07:00
Greg Fitzgerald
c5de237276
Upgrade ring and untrusted
2018-08-01 16:24:47 -07:00
pgarg66
7c5172a65e
Converted sigverify disable flag to runtime check instead of "cfg" ( #799 )
2018-07-31 16:54:24 -07:00
pgarg66
0c33c9e0d7
Dynamic network test changes ( #795 )
...
- No sigverify if feature sigverify_cpu_disable is used
- Purge validators in the test if lag count increases beyond
SOLANA_DYNAMIC_NODES_PURGE_LAG environment variable
- Other useful log messages in the test
2018-07-30 13:57:10 -07:00
Michael Vines
18d4da0076
Fetch env_logger from github until 0.5.12 is available
2018-07-29 19:08:27 -07:00
Greg Fitzgerald
7193bf28b6
Move streamer bench into standalone executable
...
It doesn't make use of criterion (or libtest)
2018-07-21 11:36:20 -04:00
Greg Fitzgerald
637f890b91
Rename client-demo to bench-tps
2018-07-21 11:36:20 -04:00
Greg Fitzgerald
9d2d9a0189
Update Cargo.toml
2018-07-19 09:02:54 -04:00
Greg Fitzgerald
6d3afc774a
Version bump
...
And authors update
2018-07-19 09:01:06 -04:00
Greg Fitzgerald
88646bf27d
Version bump
2018-07-19 08:41:18 -04:00
Greg Fitzgerald
a6cb2f1bcf
Version bump
2018-07-18 09:07:25 -04:00
Greg Fitzgerald
b253ed0c46
Version bump
2018-07-13 15:10:45 -06:00
Greg Fitzgerald
61db53fc19
Version bump
2018-07-13 15:04:10 -06:00
Greg Fitzgerald
3d9acdd970
Fix nightly
2018-07-12 21:50:28 -06:00
Greg Fitzgerald
b5006b8f2b
Migrate to solana-keygen
...
Most of #593
2018-07-12 21:50:28 -06:00
Greg Fitzgerald
81c44c605b
Add solana-keygen
...
Same as solana-mint, but without a tokens field.
2018-07-12 14:06:43 -06:00
Greg Fitzgerald
28f6fbee23
Port all benchmarks to Criterion
2018-07-11 11:18:18 -06:00
Greg Fitzgerald
3144a70b18
Move all benchmarks to benches/
2018-07-11 11:18:18 -06:00
Greg Fitzgerald
cc89801b12
Port bank benchmark to Criterion
2018-07-10 19:38:29 -06:00
Michael Vines
22c0e3cd54
Metrics v0.1
2018-07-07 19:40:09 -07:00
Greg Fitzgerald
6806a14a3f
Use Cursor instead of tempfile.
...
Faster and one less dependency.
2018-07-02 09:51:39 -06:00
Greg Fitzgerald
e7b7dfebf5
Add tests for process_ledger()
2018-07-02 09:51:39 -06:00
Michael Vines
450f271cf7
Move public IP address detection out of bash
2018-06-29 21:12:05 -07:00
Tyera Eulberg
ba6a6f5227
Use clap crate for wallet CLI subcommands and arguments
2018-06-29 21:30:20 -06:00
Greg Fitzgerald
9a38d61048
Version bump
2018-06-29 21:23:50 -06:00
Michael Vines
0b56d603c2
Client NAT traversal 0.1
...
UPnP is now used to request a port on the NAT be forwarded to the local machine.
This obviously only works for NATs that support UPnP, and thus is not a panacea
for all NAT-related connectivity issues.
Notable hacks in this patch include a transmit/receive UDP socket pair to work
around current protocol limitations whereby the full node assumes its peer can
receive on the same UDP port it transmitted from.
2018-06-29 17:36:26 -07:00
Greg Fitzgerald
a9881aee05
Add base58-encoded addresses
2018-06-29 17:28:12 -06:00
Greg Fitzgerald
c4b62e19f2
Do Proof of History verification before appending entries to the bank
...
Note: replicate_stage is still using `process_entries()` because
changing it to `process_blocks()` causes the `test_replicate` test to
fail.
2018-06-29 15:35:39 -06:00
Greg Fitzgerald
c05416e27d
Turn simple-client-demo into a simpler wallet
2018-06-27 17:35:50 -06:00
Greg Fitzgerald
ed10841e3d
No longer spin up accounts for client-demo
...
Now that the Bank is single-threaded again, we can spin up new
accounts on the fly without concern of thread contention. Likewise,
we can send all transactions from a single account, which was also
problematic in the multi-threaded bank. Sending from one account will
also make client-demo straightforward to port to solana-drone.
2018-06-27 13:50:27 -07:00
Tyera Eulberg
ac40434cdf
Initial simple client demo commit
2018-06-27 13:01:29 -06:00
OEM Configuration (temporary user)
551f639259
Some pull request fixes(linting + documentation)
2018-06-26 12:31:04 -06:00
OEM Configuration (temporary user)
08bcb62016
added remote table to update respones
2018-06-26 12:31:04 -06:00
Greg Fitzgerald
c7ce454188
Use pnet_datalink instead of all of pnet
...
pnet_transport takes a long time to build. It's been especially
painful from within a docker container for reasons I don't care
to understand. pnet_datalink is the only part of pnet we're using
so booting the rest.
2018-06-24 10:39:59 -06:00