Rename eea_getTransactionCount to priv_getEeaTransactionCount
Signed-off-by: Stefan Pingel <stefan.pingel@consensys.net>
Signed-off-by: Jason Frame <jasonwframe@gmail.com>
Use the bloombits for logs queries, so we only have to walk headers
and not every receipt on a large query.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
An error was detected (PAN-3248) whereby if "Null" appeared in a Log
Topic filter, it and all subsequent filters were lost (and thus
were not used to filter responses) - thus Besu would return too many
results (as the filters were less restrictive than requested).
This was determined to be an issue in the TopicParameterDeserialiser
which is resolved in this commit.
Signed-off-by: Trent Mohay <37158202+rain-on@users.noreply.github.com>
-- Use (PicoCLI) custom factory to construct version provider which can return optional plugin versions
-- Use plugin's jar manifest implementation and version to build plugin version during plugin registration
Signed-off-by: Usman Saleem <usman@usmans.info>
The old governance doc does not apply to the Hyperledger project, so it
is deleted.
Added a note that there is also a HLP code of conduct that also applies.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
Enforce that plugin variable names are either `--plugin-<namespace>-`
or `--Xplugin-<namespace>-` when registered with the
PicoCLIOptionsService. If the names don't match a RuntimeException is
thrown, and unless that exception is caught the plugin will not have
start or stop lifecycle messages called.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
Upgrade dependencies except rocksdb (needs burn in testing),
picocli (reorders options), gradle (causes build server breakage), and
web3j (test failures).
* Awaitality removed a Duration object and instead uses java.time
* jackson stopped throwing a checked exception for one API
* spotless now enforces gradle formatting checks (yea!)
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
We had two mostly idenitcal classes used for GraphQL and JsonRPC/WS.
This PR merges that to one class.
* Move from org.hyperledger.besu.ethereum.api.json.internal.queries to
org.hyperledger.besu.ethereum.api.query
* Add one method from the GraphQL version
(generateLogWithMetadataForTransaction)
* Remove graphql version and point graphql to the shared version.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
* Add totalDiffculty to BlockPropagated events.
The chain head block can be contentious with many fork blocks (ommers) propagating on the network. We should add a totalDifficulty to make it easier to see which block is most likely the current head.
- added `BlockPropagated` interface in `plugin-api`.
- updated `BesuEvents.onBlockPropagated` method to take a `BlockPropagated` instead of a `BlockHeader`.
- created `BlockPropagatedSubscriber` in `BlockBroadcaster`.
- changed type of `BlockBroadcaster.blockPropagatedSubscribers` from `Consumer<Block>` to `BlockPropagatedSubscriber`.
- updated unit tests accordingly to all changes.
- updated known hash in `build.gradle` file of `plugin-api`: new value is `4SAeaZIJMsDvUK5Wp2RzU8TlHacslALnM/4yvVhsMtY=`
Signed-off-by: Abdelhamid Bakhta <abdelhamid.bakhta@consensys.net>
Previously you could set an expectation for a balance with a decimal
string value, but not a hex string value. This was an error-prone
approach.
Signed-off-by: Meredith Baxter <meredith.baxter@consensys.net>
Marking can take longer than the time it takes to accumulate the blocks to satisfy these options. We make no guarantees that exactly the number of blocks in the options will be awaited/kept.
Signed-off-by: Ratan Rai Sur <ratan.r.sur@gmail.com>
Fixes race condition between attaching the NodeAddedListener and some state from post marked block being persisted. We now prepare and cleanup the listener only once each, on start and stop respectively.
Other changes:
Start the Pruner before FullSyncDownloader. Luckily the downloader took enough time to start downloading that this wasn't an issue but it's safer this way.
Signed-off-by: Ratan Rai Sur <ratan.r.sur@gmail.com>
Add a new CLI flag `--required-block` that takes a block number and a
block hash. Before using a peer for syncing we validate that the block
exists with the spcified hash at the peer.
For example `--required-block=6485846=0x43f0cd1e5b1f9c4d5cda26c240b59ee4f1b510d0a185aa8fd476d091b0097a80`
deals with the current Istanbul Ropsten chainsplit.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
Add an openjdk case to platform detector, changes client info from
`besu/v1.2.4/linux-x86_64/-ubuntu-openjdk64bitservervm-java-11`
to
`besu/v1.2.4/linux-x86_64/openjdk-java-11`
while preserving adoptopenjdk and oracle_openjdk cases.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
Add a build task that will enumerate all the maven publications and fail
the build if it detects that a duplicate maven coordinate would be used.
Signed-off-by: Danno Ferrin <danno.ferrin@gmail.com>
Signed-off-by: Lucas Saldanha <lucas.saldanha@consensys.net>