Rob Mulholand
3b531950f2
Merge pull request #93 from vulcanize/vdb-570-storage-duplicates
...
(VDB-570) Handle duplicate storage diffs
2019-05-02 13:40:44 -05:00
Rob Mulholand
36c4da372b
(VDB-570) Handle duplicate storage diffs
...
- If processing a new diff for a row that already exists in the DB,
ignore the error without logging or queueing
- If processing a queued diff for a row that already exists, remove
it from the queue
2019-05-02 11:39:16 -05:00
Elizabeth
77b7ee9e4c
Merge pull request #91 from vulcanize/vdb-558-remove-log-note-transformer
...
Remove LogNote Transformer and Converter
2019-05-02 11:26:10 -05:00
Rob Mulholand
b036053937
Queue storage diffs if transformer execution fails
...
- For any error, not just if key isn't recognized
- Means we don't lose track of diffs on random ephemeral errors
2019-05-01 12:32:39 -05:00
Rob Mulholand
76ab914bdc
Add license
2019-05-01 12:32:39 -05:00
Rob Mulholand
d77f3fe012
Don't pass empty row to channel on error
2019-05-01 12:30:37 -05:00
Rob Mulholand
6a86de87b4
(VDB-371) Recheck queued storage
...
- Iterate through queued storage at defined interval, popping rows
from the queue if successfully persisted
2019-05-01 12:30:37 -05:00
Rob Mulholand
bf4b1687a0
Add get/delete functions to storage queue
2019-05-01 12:30:37 -05:00
Rob Mulholand
2d684c5aec
Extract storage diff fetching behind an interface
...
- Replaces directly reading from a CSV
- Simplifies testing
- Should hopefully make it easier to plug in other sources for storage
diffs (e.g. differently formatted CSVs, JSON RPC, etc)
2019-05-01 12:30:36 -05:00
Gabe Laughlin
a344432156
(VDB-560) Rename lightSync to headerSync
2019-05-01 12:12:55 -05:00
Elizabeth Engelman
eb1a9cb381
Remove LogNote Transformer and Converter
2019-04-30 12:25:51 -05:00
Rob Mulholand
3fd6269b78
Don't lookup transactions if no log events
...
- Prevents EOF error on transactions lookup
2019-04-18 09:53:18 -05:00
Ian Norden
185f4c0e93
adjust block/uncle reward tests and add methods to pkg/geth blockchain and ethclient for direct fetching of eth balances
2019-04-02 10:10:17 -05:00
Rob Mulholand
39471e1d04
Remove links to Maker
2019-04-01 16:03:35 -05:00
Rob Mulholand
8b5b5b8f17
Remove links to 8th Light
2019-04-01 15:15:08 -05:00
Rob Mulholand
81dfd12665
Address PR comments
2019-03-28 14:31:17 -05:00
Rob Mulholand
54d46638a8
updates for light sync transactions
2019-03-28 14:31:17 -05:00
Elizabeth Engelman
a7022563ab
Update storage mapping indexes to hex values
2019-03-25 14:28:49 -05:00
Ian Norden
1aa849bcb4
PR fixes; remove all infura token references and setup travis to use encrypted env
...
variable; rest of the ethjson_rpc dependent tests extracted to integration_test
2019-03-21 18:36:51 -05:00
Ian Norden
37fc038605
fixes for review comments
2019-03-21 18:36:49 -05:00
Ian Norden
24879a85aa
mv pkg/omni pkg/contract_watcher
2019-03-21 18:33:56 -05:00
Ian Norden
073378de6d
update © to 2019
2019-03-21 18:33:56 -05:00
Ian Norden
e4e092f542
changes to plugin and commands to accomodate changes
2019-03-21 18:33:56 -05:00
Ian Norden
5101ed4369
generic transformer and watcher interfaces for plugging in transformers built from omni pkging
2019-03-21 18:30:48 -05:00
Ian Norden
ff55e3ba7a
TransformerInitializer => EventTransformerInitializer reorganization
2019-03-14 11:59:39 -05:00
Ian Norden
9f8c50e3ab
tests for migration path ordering and errors
2019-03-13 11:42:30 -05:00
Ian Norden
35c5808a07
readme fixes
2019-03-12 12:54:36 -05:00
Ian Norden
1d6219cc83
event transformers readme and update main readme to remove last links to
...
mcd_transformers
2019-03-12 12:45:29 -05:00
Rob Mulholand
89d152e987
Add unit48 to storage decoder
2019-03-08 11:12:02 -06:00
Rob Mulholand
cdcb90c170
Merge pull request #34 from vulcanize/redsquirrel-patch-3
...
Fixing some typos
2019-03-08 10:56:38 -06:00
Rob Mulholand
c5862299e6
Merge pull request #33 from vulcanize/redsquirrel-patch-2
...
Minor Solidity suggestion
2019-03-08 10:56:20 -06:00
Dave Hoover
f03329247d
Fixing some typos
2019-03-07 15:33:18 -06:00
Dave Hoover
789477bfbf
Minor Solidity suggestion
...
Just reading through this and figured I'd suggest a more concise snippet.
2019-03-07 15:18:27 -06:00
Rob Mulholand
5d0467f4b8
Add variables to clarify example contracts
2019-03-06 12:43:39 -06:00
Rob Mulholand
1414779d52
Use *sqlx.Tx instead of *sql.Tx
...
- requires using db.Beginx() instead of db.Begin()
- enables calling tx.Get()
2019-03-06 12:43:39 -06:00
Rob Mulholand
60d7b34471
address PR comments
2019-03-06 12:43:39 -06:00
Rob Mulholand
7ed4dcd1fa
Remove Tic logic
2019-03-06 12:43:39 -06:00
Rob Mulholand
310a52cb0c
test mappings helpers against static values
2019-03-06 12:43:39 -06:00
Rob Mulholand
b6bef49318
Add tests for plugin helpers
...
- Prevents code analysis from showing functions as unused
- Also address other code analysis issues
2019-03-06 12:43:39 -06:00
Ian Norden
708425c4d6
rebase; extract factories and the mocks they are dependent on to
...
libraries/shared; adjust omni test_helpers to drop and recreate
checked_headers table to avoid reaching 1600 column limit after repeated
tests (dropping columns doesn't actually remove them from contributing
to that limit)
2019-02-25 01:34:38 -06:00
Ian Norden
f2072561a7
removing mcd/maker references; delete test_data; update READMEs; use
...
logrus
2019-02-24 21:53:04 -06:00
Ian Norden
3d34a9e7c9
remove maker migrations and convert back to timestamps and fix bug in
...
composeAndExecute command
2019-02-24 21:52:23 -06:00
Ian Norden
b449193b16
addressing review comments; still need to reorg migrations and add helper tests
2019-02-24 21:38:48 -06:00
Ian Norden
90e67d6da9
move storage mappings pkg into shared
2019-02-24 21:38:48 -06:00
Ian Norden
decc2a3caf
remove pkg/transformers; extract shared files needed to
...
libraries/shared; work on automated db migration management
2019-02-24 21:38:47 -06:00
Ian Norden
6c2d895023
composeAndExecute command that loads and executes over arbitrary transformer set exported from a go plugin generated according to config file; test for plugin generation, loading, and execution; work on plugins README
2019-02-24 15:23:35 -06:00
Rob Mulholand
11dd641a84
(VDB-354) Queue unrecognized storage diffs
...
- If we recognize a storage diff as coming from a watched contract but
don't recognize the key, queue it for retrying later (after we've seen
an event that might help us recognize the key)
- Remove unused errs and args
- Panic on unrecognized types (should not happen)
2019-02-20 15:22:39 -06:00
Takayuki Goto
0a024d429d
* update transformer to able to recheck headers ( #4 )
...
* update transformer to able to recheck headers
* put cap on rechecking header
* integration test for recheck headers
* use enum for recheck headers param; make recheck cap configurable
* update integration tests with new test config
* update omni pkg with new recheck header column type
* update migration with new migration tool and final tweaks needed to accommodate changes in omni pkg
2019-02-08 10:35:46 -06:00
Rob Mulholand
867f92c431
(VDB-298) Consume Pit contract storage diffs
...
- Continuously parse storage diffs CSV data to read Pit contract state
- Convert ilks in database to raw bytes32 value for use in generating
storage keys dynamically
- Persist storage diffs with block number and hash for validation
2019-02-06 10:31:46 -06:00
Ian Norden
46b898f690
merge public vulcanizedb/master
2019-01-23 00:37:26 -06:00
Edvard Hübinette
909d23e176
VDB-284 Run watcher from earliest startingBlockNumber ( #136 )
...
* Watcher computes earliest starting block number
* Update tests for new watcher behaviour
* Fix error oopsie
* Extract conditional to helper and suppres tests logging
2019-01-15 11:09:13 +01:00
Edvard
50cc0c2459
Update tests for watcher and repository
2019-01-07 15:20:05 +01:00
Edvard
833dde62cf
Remove injection of fetcher and repository to watcher
2019-01-07 15:19:31 +01:00
Edvard
e5db740ae4
Move MockTransformer to test_data
2018-12-13 13:03:51 +01:00
Edvard
d30fcfed80
Use new config getter on shared.Transformer <3
2018-12-13 12:39:57 +01:00
Edvard
882a6dd7a2
Update tests with new adding of transformers
2018-12-12 15:41:44 +01:00
Edvard
dc43547612
Improve process of adding transformers
2018-12-12 15:41:29 +01:00
Edvard
4e089c363e
Fixes after merging staging
2018-12-11 15:19:27 +01:00
Edvard
9000c6e9f9
Add test for watcher log delegation
2018-12-11 15:02:32 +01:00
Edvard
5d4239de05
Finish watcher and watcher tests (+fmt)
2018-12-11 13:52:02 +01:00
Edvard
d93817f346
Interface-ify shared repository
2018-12-11 11:35:13 +01:00
Edvard
e03ccb094f
Add error propagation and test todos for watcher
2018-12-10 21:12:31 +01:00
Edvard
587d2219d8
Remove bc references and cleanup pointers
2018-12-10 16:50:13 +01:00
Edvard
637623b752
Fix test suites!
2018-12-10 15:40:45 +01:00
Edvard
e1ba7ac5b4
WIP update tests for aggregate fetching
2018-12-07 18:10:36 +01:00
Edvard
9789648cc2
Delegate log chunks to respective transformers
2018-12-04 17:40:39 +01:00
Edvard
8bebcdc064
Change transformer.Execute to single header
2018-12-04 17:05:34 +01:00
Edvard
38c745e8c3
Refactor fetching out from repositories to log_fetcher and watcher
2018-12-04 16:04:13 +01:00
Edvard
c26736dc9e
WIP continue on aggregate fetching architecture
2018-11-30 17:28:52 +01:00
Edvard
45a087f5d1
WIP: First steps in refactoring to aggregate fetching
2018-11-28 17:00:04 +01:00
Ian Norden
417b18ec6a
Edits to address PR issues; change license from apache to AGPL; and work
...
towards generic method polling and reposito;y; config settings to
filterevents/methods by account address; refactoring some stuff out of
repo and into converter; remove fetcher and instead call
blockchain's FetchContractData directly; finishing tests
2018-11-15 12:32:52 -06:00
Ian Norden
e9dbd771e5
tests and fixes for fetcher, parser, retriever, converter, and repository; update cmd and watcher
2018-11-04 01:49:11 -05:00
Ian Norden
57820ff473
change transformer interface and watcher so that contract config is now fed into AddTransformers such that a single watcher can be loaded with transformers that use different cofigs
2018-11-03 13:49:24 -05:00
Rob Mulholand
ba071ef13f
Consolidate test doubles
...
- Migrate various mocks of core namespaces to shared version in `fakes` pkg
- Err on the side of making test doubles less sophisticated
- Don't pull over mocks of namespaces that are only used in example code
2018-11-03 13:49:23 -05:00
Rob Mulholand
ac63e43543
Backfill Frob log events
2018-08-14 10:47:43 -05:00
Rob Mulholand
a683e45855
Consolidate test doubles
...
- Migrate various mocks of core namespaces to shared version in `fakes` pkg
- Err on the side of making test doubles less sophisticated
- Don't pull over mocks of namespaces that are only used in example code
2018-07-20 11:37:46 -05:00
Matt Krump
1b4e57a5b4
Rename node table and node column
2018-03-21 13:24:13 -05:00
Rob Mulholand
02b23ef748
Rename handlers to transformers
2018-03-16 15:07:19 -05:00
Matt Krump
a11fb709b2
Update watcher to use blockchain instead of contract data fetcher
2018-03-12 16:19:06 -05:00
Matt Krump
06f78e0083
Handle events
...
- Adds interfaces for developers to build handlers that update data in
response to log events
- Resolves #29
2018-03-05 10:01:50 -06:00