Previously it was possible for a transaction to be "missed" by this call if it was added to a block between when we checked the blockchain and when we checked the pending transaction pool.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Don't create a new SecureRandom instance every time a filter ID is generated.
Fix intermittency in FilterIdGeneratorTest - quantity values omit leading 0s.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Connection ID is now tracked as a property of the subscription rather than as a separate map, so we can use a single concurrent map to track all details of subscriptions.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Prevents intermittent `eth_getFilterLogs` failure when the `filterId`
began with a hex 0. Previously leading 0's were not trimmed so depending
on the randomly generated value, a filter could appear to not exist in
the `FilterRegistry`
* standardize Quantity.format to Quantity.create
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
The following PIE-1598 subtasks are fixed:
fixes PIE-1600 remove entrypoint script
fixes PIE-1601 investigate Dockerfile best practices including :
- naming
- multi step build
- comments
- labels
- build args
- entrypoint
- minimalism
fixes PIE-1604 rewrite Dockerfile according to best practices
provide a sample build command that can be used as-is or as an example.
Added contents to .dockerignore to make the intermediate build image smaller.
Remove .env file that was supposed to be used long ago for a docker quickstart
and that we forgot to remove ans is useless today.
add jenkins pipeline to test the docker image build
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
- update node scripts to be able to include them from real source that we will
be able to test (next step to do).
- new scripts are more user friendly.
- add package.json for npm management of dependencies
- update doc page
- update mkdocs guide for potential issue on pip version with Python3
- update mkdocs-material theme (only bug fixes)
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Previously was only set after callbacks were invoked, allowing additional messages to be sent while parts of the supporting infrastructure for the peer was being torn down.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Use the external jars to provide the plugin libraries.
* Add mavenLocal to local repositories to aid development
* Remove the :plugins project
* Move the PantheonPluginContextImpl into :pantheon
* rename a few files
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* GraphQL library upgrade changes.
one more NPE path for GraphQL sniffed out. With more tests.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
Adds metrics to expose:
* height of best known block
* synchronizer in sync flag
* max peers
* Timestamp of current chain head
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
* Most libraries with newer stable versions were upgraded to their
newest stable version
* One exception is RocksDB, where a previous update caused a performance
regression. the 6.0.1 update will be tested in another PR
* GraphQL got stingier about null variable maps, so empty maps were passed instead
* errorprone plugin got stricter with it's variable access
* There was a license that was slightly different, creating 2 MIT licenses in the license report.
* Gradle wanted a new almost identical wrapper jar.
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>
When looking for a specific block and failing we should explain why
in the error message.
Also, clean up test names and grouping
Signed-off-by: Adrian Sutton <adrian.sutton@consensys.net>