6261 Commits

Author SHA1 Message Date
Christopher Goes
49e03fb481 Update dependency versions 2018-05-14 15:26:14 +02:00
Christopher Goes
86b09b0cd7 Bugfix 2018-05-14 15:26:14 +02:00
Christopher Goes
391936b734 Prevent unnecessary signatures, improve error messages 2018-05-14 15:26:14 +02:00
Christopher Goes
e25a64fdf1 Fix testcases, all looks OK 2018-05-14 15:26:14 +02:00
Christopher Goes
065c3943b1 Fix no-Ledger testcase 2018-05-14 15:26:14 +02:00
Christopher Goes
1c9ff46e98 Ledger integration, WIP 2018-05-14 15:26:14 +02:00
Anton Kaliaev
a7d695408a
Merge pull request #94 from tendermint/tm-bench-improvements
[tm-bench] small fixes and improv.
2018-05-14 15:08:11 +04:00
Adrian Brink
9439306f0f
Change last instance of AppStateBytes to GenesisBytes 2018-05-13 20:05:45 -04:00
Ethan Buchman
a41f0d3891 rpc: /consensus_state for simplified output 2018-05-13 19:53:54 -04:00
Adrian Brink
f80b3aee48
Change AppStateBytes to GenesisBytes
The consensus should pass the entire genesis file to the application.
That way the application has access to the chain_id, the timestap, ...
2018-05-13 19:50:15 -04:00
Ethan Buchman
658060150c rpc: add voting power totals to vote bitarrays 2018-05-13 19:22:23 -04:00
Adrian Brink
ef67705524
Allow ResponseInitChain to return the initial validator set
ResponseInitChain should be able to return an initial validator set that
is determined by some logic within the genesis.json file.
2018-05-13 19:04:03 -04:00
Ethan Buchman
d0229e8b1e
Merge pull request #1554 from tendermint/jae/expose_peer_stats
Expose peer stats for dump_consensus_state
2018-05-13 16:16:35 -04:00
Zaki Manian
1c8dffaa28 Initial implementation of xchacha20poly1035 aead 2018-05-13 11:06:20 -04:00
Jae Kwon
56c9e0da7e Add back sample output in rpc/core/consensus.go; Tweak DumpConsensusState output for peers 2018-05-12 15:39:30 -07:00
Ethan Buchman
fbe253767e
Merge pull request #1540 from tendermint/set-genesis-time-on-init
set GenesisTime to now during `tendermint init`
2018-05-12 10:10:06 -04:00
Jae Kwon
edbec10f9e Expose peer stats for dump_consensus_state 2018-05-10 22:43:21 -07:00
Jae Kwon
a8fcf45624 Change defaults to 100M and 10G respectively 2018-05-10 20:58:28 -07:00
Jae Kwon
2e41756b55 Add logjack command 2018-05-10 20:43:50 -07:00
Christopher Goes
67faf556ed
Merge pull request #162 from tendermint/db-gRPC
DB as a service: remove database deployment with API
2018-05-10 18:46:05 +02:00
Anton Kaliaev
a28fdfd3a8
fix stats calculation 2018-05-10 17:08:49 +04:00
Jae Kwon
43570388a9
Update README.md 2018-05-09 13:48:49 -07:00
Jae Kwon
35cf21c6eb
Update README.md 2018-05-09 13:48:21 -07:00
Liamsi
3477dd7a90 safer PRNG seeding: hash concatenation of fresh seedBytes with current seedBytes 2018-05-09 15:04:51 +01:00
Zach
851232d1b5
Merge pull request #95 from tendermint/delete-ansible-and-terraform
delete ansible and terraform folders
2018-05-09 07:12:27 -04:00
Anton Kaliaev
7fac16dc7f
ansible and terraform moved to tendermint core repo
see https://github.com/tendermint/tendermint/tree/master/networks
2018-05-09 15:06:47 +04:00
Liamsi
94ce56d243 Use constant-time comparator (sublte.ConstantTimeCompare) to compare
signatures

prevents potential signature forgery

resolves #91
2018-05-09 11:48:46 +01:00
Allen
c0a1a8d3c0 add link to github (#1542) 2018-05-09 12:13:07 +04:00
Christopher Goes
20be8c75e5
Tweak testcases 2018-05-08 17:13:13 +02:00
Christopher Goes
0b6d101c77
Implement batch operations 2018-05-08 16:38:39 +02:00
Christopher Goes
45514a6013
Address PR comments 2018-05-08 15:47:06 +02:00
Anton Kaliaev
80e6e0fa05
only call Sleep if it took us less than 1 sec. to generate txs 2018-05-08 16:23:29 +04:00
Anton Kaliaev
52d3eca67c
check if block was created after timeStart 2018-05-08 16:23:00 +04:00
Anton Kaliaev
ac2d3a917e
set GenesisTime to now during tendermint init 2018-05-08 12:04:20 +04:00
Christopher Goes
39e1567d0a
Add iterator tests 2018-05-08 00:53:33 +02:00
Christopher Goes
55f4ccd4fc
CI fix 2018-05-07 23:28:41 +02:00
Christopher Goes
2cca5a7a4c
Implement TLS/SSL 2018-05-07 23:16:06 +02:00
Christopher Goes
bf16d6453c
Address PR comments 2018-05-07 22:12:26 +02:00
Emmanuel T Odeke
5d12e1eb46
remotedb: a client package implementing the db.DB interface
Simplified the abstractions to remotedb, a package that
allows clients to use whatever database they can in client
code without having to switch out their code e.g
```go
client, err := remotedb.NewInsecure(":9888")
...
// Just like they'd initialize locally
in := &remotedb.Init{
  Name: "test-remote-db",
  Type: "leveldb",
  Dir: "/tmp/dbs",
}

if err := client.InitRemote(in); err != nil {
    log.Fatalf("Failed to initialize the database")
}

v1 := client.Get(k1)
client.Set(k9, dog)

for itr := client.Iterator(a1, z1); itr.Valid(); itr.Next() {
  k, v := itr.Key(), itr.Value()
  dom := itr.Domain()
  ...
}
```
2018-05-07 22:00:38 +02:00
Emmanuel T Odeke
1260b75f63
grpcdb: Better readability for docs and constructor names
* Added some docs for NewClient, BindServer, *server.Init
* Security level clarified, whether "secure" for https
or "insecure" for non-https gRPC connections.
2018-05-07 22:00:38 +02:00
Emmanuel T Odeke
11bee6194a
DB as a service
Fixes https://github.com/tendermint/tendermint/issues/1162

Databases as a service!

Can now access Databases as a remote service
via gRPC for performance and easy deployment.

The caveat is that each service is stateful in regards to
the DB i.e. each unique service uses only one unique DB
but nonetheless multiple clients can access it.

A full standalone example

```go
package main

import (
  "bytes"
  "context"
  "log"

  grpcdb "github.com/tendermint/tmlibs/grpcdb"
  protodb "github.com/tendermint/tmlibs/proto"
)

func main() {
  addr := ":8998"
  go func() {
    if err := grpcdb.BindRemoteDBServer(addr); err != nil {
      log.Fatalf("BindRemoteDBServer: %v", err)
    }
  }()

  client, err := grpcdb.NewClient(addr, false)
  if err != nil {
    log.Fatalf("Failed to create grpcDB client: %v", err)
  }

  ctx := context.Background()
  // 1. Initialize the DB
  in := &protodb.Init{
    Type: "leveldb",
    Name: "grpc-uno-test",
    Dir:  ".",
  }
  if _, err := client.Init(ctx, in); err != nil {
    log.Fatalf("Init error: %v", err)
  }

  // 2. Now it can be used!
  query1 := &protodb.Entity{Key: []byte("Project"), Value:
[]byte("Tmlibs-on-gRPC")}
  if _, err := client.SetSync(ctx, query1); err != nil {
    log.Fatalf("SetSync err: %v", err)
  }

  query2 := &protodb.Entity{Key: []byte("Project")}
  read, err := client.Get(ctx, query2)
  if err != nil {
    log.Fatalf("Get err: %v", err)
  }
  if g, w := read.Value, []byte("Tmlibs-on-gRPC"); !bytes.Equal(g, w) {
    log.Fatalf("got= (%q ==> % X)\nwant=(%q ==> % X)", g, g, w, w)
  }
}
```
2018-05-07 22:00:33 +02:00
Ethan Buchman
aefb6c58b6
Merge pull request #87 from tendermint/bucky/fix-ed-gen
fix ed25519 Generate
2018-05-07 10:52:46 -04:00
Ethan Buchman
ad837a8183 fix ed25519 Generate 2018-05-05 19:17:21 -04:00
Anton Kaliaev
ab9881471a
[tm-bench] give user ability to change rpc function (#91)
Closes #17
2018-05-04 16:35:39 +04:00
Anton Kaliaev
8b5c692a6a
different way to get stats (#90)
Refs #62
2018-05-04 16:13:42 +04:00
Greg Szabo
603d173b87 Changed tm-bench output to json (#83)
* Changed output to json

* Added -output-format parameter (issue #40)

* remove leftover debug message
2018-05-03 13:08:19 +04:00
Ethan Buchman
64408a4041
Merge pull request #1528 from tendermint/release/v0.19.2
Release/v0.19.2
v0.19.2
2018-04-30 18:28:38 -04:00
Ethan Buchman
cae31157b1 fix lint v0.19.2-rc0 2018-04-30 18:23:02 -04:00
Ethan Buchman
66c2b60324 version and changelog 2018-04-30 16:06:45 -04:00
Ethan Buchman
e2e2127365
Merge pull request #1519 from tendermint/bucky/p2p-cleanup
Cleanup P2P
2018-04-30 15:54:04 -04:00