15 Commits

Author SHA1 Message Date
Gaurav Ahuja
9d20768a5f Make MetricsCategory an interface and add default tags (#1088)
* Make MetricsCategory an interface and add default tags

* Make metric category non nullable

* Fix jacoco report failure

* fix spotless
2025-06-04 14:56:13 -04:00
kyzooghost
cce0126d90 [Feat] Upgrade Spotless from 6.16 to 6.25 (Breaking change) (#1068)
* remove 2nd subproject.spotless

* make linea-sequencer lint command, do lint command of child projects

* bump spotless to 6.25

* bump ktlint to 0.50.0

* run spotlessApply

* fix spotlessCheck for testing-tools:app

* spotless apply for many kt projects

* spotless apply for many kt projects

* set trailing comma to false in .editorconfig for kt files

* add more .editorconfig settings

* Revert "add more .editorconfig settings"

This reverts commit bd9f040f950930a662e8f815c5d504b3b4403703.

* Revert "set trailing comma to false in .editorconfig for kt files"

This reverts commit 4bcc08aa295c4da8d0bef2c75cf3fe621e0a00ae.

* empty
2025-06-03 00:02:21 +10:00
Pedro Novais
3c4f4c26db chore: improve package consistency jvm lib (#719)
* chore: improve package consistency jvm lib

* chore: improve package consistency jvm lib

* chore: improve package consistency domain models

* package rename improve consistency

* chore: fix docker config
2025-02-20 15:20:02 +00:00
Pedro Novais
bf8a00dfc6 update besu libs; improve gradle build; improve make file stack start up (#674) 2025-02-11 16:36:01 +00:00
Bradley Bown
734a2fdaa6 Extend MetricsFacade with createSimpleTimer() factory (#265)
* Extend MetricsFacade with createSimpleTimer() factory

* Rename Timer interface to TimerCapture

* Use createSimpleTimer to create SimpleTimerCaptures throughout codebase

* Fix test

* Pass metrics facade

* feat: add createDynamicTagTimer and update MetricsFacade codes

* feat: update test cases in MicrometerMetricsFacadeTest

* feat: update JsonRpcMessageProcessor to not for computing metrics parsing error

* feat: add timer metric for calculating shnarf

* feat: add metric for block compression ratio and blob utilization ratio

* feat: revert back to internal val goNativeBlobCompressor

* fix: spotless issue

* fix: JsonRpcMessageProcessor constructor call

* fix: VertxHttpJsonRpcClientFactory constructor call

* feat: added the option for ratio metric in createHistogram

* feat: remove no-daemon option in transaction-exclusion-api build

* feat: revised metrics handling in JsonRpcMessageProcessor

* feat: changed tag value on error

* feat: return error cases in handleMessage as succeededFuture instead of failedFuture

* fix: use MicrometerMetricsFacade in VertxHttpJsonRpcClientFactory

---------

Co-authored-by: jonesho <jones.ho@consensys.net>
2025-01-20 17:19:20 +08:00
Pedro Novais
829630b0a1 Coordinator: replace teku ExecutionPlayloadV1 by Domain Block class - fix block encoding (#406)
* coordinator: replace Teku ExecutionPayloadV1.kt by our own Domain Block
* update GHA runners and CI fixes
---------
Signed-off-by: Pedro Novais <1478752+jpnovais@users.noreply.github.com>
Co-authored-by: Roman Vaseev <4833306+Filter94@users.noreply.github.com>
2024-12-16 17:04:38 +00:00
Roman Vaseev
c356dc4016 Introduced spotless checks to gradle scripts. Added publishing logic … (#401)
* Introduced spotless checks to gradle scripts. Added publishing logic to all the generic jvm libs. Removed redundant useJUnitPlatform()

* Removed more useJUnitPlatform()

* feat: update copyShadowJarToLocalBesu in finalized-tag-updater gradle build file

* fix: geth traces-node running in start-all local stack

---------

Co-authored-by: jonesho <jones.ho@consensys.net>
2024-12-06 10:44:00 +01:00
Bradley Bown
bca27b112f Use multi-stage builds to unzip and copy jars (#118)
* Use multi-stage builds to unzip and copy jars

* Change base docker iamge

* Fix mkdir command

* Revert mkdir concat

* Remove apt-get calls

* Revert local COPY change

* Use apk to install packages

* Revert to debian based image

* Fix copy location

* Merge mkdir commands

* Amended directories

* Remove libs based on platform

* Use uname -m to get current architecture

* Switch if statement to case statement to uname call

* Fix zip copy

* Add WORKDIR to improve readability, move removal of darwin dir out of case switches

* feat: change builder image to a more secure one

* feat: change builder and final image to eclipse-temurin 21-alpine

* feat: removed unnecessary slash

* feat: update dockerfile to avoid hardcoded version for jar files

* feat: allow more flexible name matching for jar files

* feat: use installDist in GHA job to avoid unzip

* feat: use installDist in GHA job to avoid unzip in transaction-exclusion-api

* feat: update manual image build for coordinator and tx-exclusion-api

* feat: revert setting ssl and gssEncMode in tx-exclusion-api integration test

---------

Co-authored-by: jonesho <jones.ho@consensys.net>
Co-authored-by: jonesho <81145364+jonesho@users.noreply.github.com>
2024-12-03 02:43:24 +08:00
jonesho
7e6804e699 feat: delete duplicated HttpJsonRpcServer and use the one from jvm-libs (#340)
* feat: delete duplicated HttpJsonRpcServer and use the one from jvm-libs

* feat: update tx-exclusion-api image tag
2024-11-27 21:56:45 +08:00
jonesho
8749f920cb feat: improve tx-exclusion-api performance and increase size of reaso… (#327)
* feat: improve tx-exclusion-api performance and increase size of reason message column

* feat: set waitForTcpPorts as true for localStackPostgresDbOnly and update prover-v3 image tag in compose

* feat: update prover-v3 image tag to a more recent one

* feat: update coordinator image tag to a more recent one
2024-11-25 23:29:40 +08:00
jonesho
182c4de73a feat: increase max size of reasonMessage and allow sender addr… (#275)
* feat: increase max size of reasonMessage to 512 and allow sender address to be nullable in db and data structure

* feat: add public constant for max reason message size

* feat: add integration test and argument parser test

* feat: revised tests

* feat: removed reverted transaction in reason message from the tests

* feat: revise integration tests with concrete values for better readability
2024-11-04 23:36:19 +08:00
jonesho
5dc02f88d2 feat: separate tx exclusion api integration tests from coordinator (#263)
* feat: separate tx exclusion api integration tests from coordinator

* feat: add integrationTestAllNeeded task for coordinator:app and transaction-exclusion-api:app

* feat: integration test all needed gradle task description update
2024-10-31 02:29:20 +08:00
Pedro Novais
2f37b73ebe small improvements: error found by Kotlin 2 compiler (#250)
* small improvements: error found by Kotlin 2 compiler
* fix flacky test
2024-10-28 12:19:35 +00:00
jonesho
cd5891618e fix: revert the change and use GITHUB_SHA for commit tag (#220)
* fix: revert the change and use GITHUB_SHA for commit tag

* fix: accommodate recent besu lib version upgrade
2024-10-22 18:18:29 +08:00
jonesho
fad0db4fc6 3822 rejected transaction api service (#101)
* feat: first commit for transaction exclusion api service

* feat: removed debug logs and improved params error handling

* fix: jacocoRootReport error

* feat: improved json request param parsings

* feat: added docker container and github workflow pipeline for transaction exclusion api

* feat: added rejection stage in response and use txHash and rejectReason as primary key of tables

* feat: separate database into read and write config and each with dedicated connection

* fix: e2e testing error

* feat: removed redundant commands in Makefile

* feat: updated transaction exclusion api default image tag in compose file

* feat: added metric and change param name from reasonMessage to reason

* feat: added integration and unit tests and use reasonMessage for both request and response

* fix: transaction-exclusion-api unit test

* feat: added e2e tests and remove reasonMessage from get response and redundant codes

* feat: updated README.md and removed abi file

* feat: updated image version of transaction exclusion api service in compose file

* feat: updated README and added more test cases

* feat: updated transaction exclusion api default image tag in compose file

* feat: decoupled transaction exclusion api from coordinator package

* feat: removed unnecessary dependencies to prover client

* feat: moved persistence:db package to jvm-libs

* feat: removed migration file dir location config from transaction exclusion api

* fix: db migration location for fee history integration test

* changed db column name timestamp to reject_timestamp and add dto for ModuleOverflow to remove all jackson dependencies in core module

* feat: rejected transaction dao and config refactoring

* feat: removed repository service and using persistence retryer

* feat: updated transaction exclusion api default image tag in compose file

* feat: updated log and increase retry backoff delay to avoid repetitive error logs

* feat: added support of list request on save method and added dto for RejectedTransaction

* feat: revised gradle.build dependencies

* feat: switch from shadow jar to zipped jar

* feat: updated transaction exclusion api default image tag in compose file

* feat: updated sql and tables and changes for PR comments

* feat: improved log message for duplicate key error

* feat: updated transaction exclusion api default image tag in compose file

* feat: avoid redundant logs on periodic db cleanup

* feat: revised request handlers plus better test assertions on insertion

* fix: test case

* feat: parse save method json request with jackson

* feat: extracted db migrations from the coordinator and transaction-exclusion app

* feat: decoupled coordinator modules from jvm-libs persistence db test module

* feat: updated dockerfile of transaction-exclusion-api

* feat: removed the find check before metric increment on save rejected transaction

* feat: updated docker base image for tx-exclusion-api image buid and queryable window config

* feat: skip migration scripts on read db instance

* feat: updated more percise jvm-libs change filtering on transaction-exclusion-api

* feat: updated coordinator config for geth node l2 gas pricing recipients

* feat: update runners with specific version and removed the use of retry for transaction exclusion api testing

* feat: add integration test for transaction exclusion app

* feat: update local stack docker compose and workflow for transaction exclusion

* feat: add e2e test for transaction exclusion

* feat: skip the sequencer test in transaction exclusion e2e test

* feat: revert sequencer config poa-block-txs-selection-max-time

* feat: remove incorrect comment

* feat: added explicitly assertion if tx exclusion is not defined and simplify the localStackPostgresDbOnly in build.gradle

* feat: remove beforeAll in test suite with it.concurrent

* feat: set coordinator config blob-compressor-version as V1_0_1 explicitly for traces-v2

* feat: update coordinator config test

* feat: change default prefix not to be coordinator specific

* feat: place persistence:db under jvm-libs:generic and fixed conflicts from latest main

* fix: remove dependency to resolve circular dependency issue

* test: switch from localStackPostgresDbOnlyComposeUp to localStackComposeUp

* feat: replace GITHUB_SHA with github.event.pull_request.head.sha in computing commit tag

* feat: update filter change file lists for transaction exclusion api
2024-10-22 15:50:44 +08:00