Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core/services: more parallel tests #15762

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from
Open

core/services: more parallel tests #15762

wants to merge 1 commit into from

Conversation

jmank88
Copy link
Contributor

@jmank88 jmank88 commented Dec 18, 2024

No description provided.

@jmank88 jmank88 marked this pull request as ready for review December 18, 2024 21:25
@jmank88 jmank88 requested review from a team as code owners December 18, 2024 21:25
@jmank88 jmank88 requested a review from george-dorin December 18, 2024 21:25
@jmank88 jmank88 enabled auto-merge December 18, 2024 21:25
Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and 5eee570 (tests-parallel).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
Test_EventHandlerStateSync 0.00% true true false 2 0 2 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_InitialStateSync 0.00% true true false 1 0 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
TestMercuryConfigPoller 66.67% true true false 3 2 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury true 315ms @smartcontractkit/data-streams-engineers, @smartcontractkit/core
TestORM 50.00% false false false 2 1 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury true 600ms @smartcontractkit/data-streams-engineers, @smartcontractkit/core

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Copy link
Contributor

github-actions bot commented Dec 18, 2024

AER Report: CI Core

aer_workflow , commit , Detect Changes , Scheduled Run Frequency , Clean Go Tidy & Generate , Flakeguard Root Project / Get Tests To Run , GolangCI Lint (.) , Core Tests (go_core_tests) , Core Tests (go_core_tests_integration) , test-scripts , Core Tests (go_core_ccip_deployment_tests) , Flakeguard Deployment Project , Core Tests (go_core_fuzz) , Core Tests (go_core_race_tests) , Flakeguard Root Project / Run Tests (github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/llo, ubuntu-latest) , Flakeguard Root Project / Run Tests (github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/ocr2keeper, ubuntu... , Flakeguard Root Project / Run Tests (github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflow... , Flakeguard Root Project / Run Tests (github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/functions, ubuntu-lat... , Flakeguard Root Project / Run Tests (github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury, ubuntu-latest) , lint , SonarQube Scan , Flakey Test Detection , Flakeguard Root Project / Report

1. Database connection error:go_core_tests

Source of Error:
Run tests	2024-12-19T19:11:34.6143709Z database/sql.(*DB).execDC.func2()
Run tests	2024-12-19T19:11:34.6143980Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1705 +0x159
Run tests	2024-12-19T19:11:34.6144220Z database/sql.withLock({0x26cd2b0, 0xc000c36200}, 0xc000d92c88)
Run tests	2024-12-19T19:11:34.6144484Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:3566 +0x71
Run tests	2024-12-19T19:11:34.6144973Z database/sql.(*DB).execDC(0x1?, {0x26dcae0, 0xc000b821c0}, 0xc000c36200, 0x0?, {0x2246663, 0x174}, {0xc000c932c0, 0x5, 0x5})
Run tests	2024-12-19T19:11:34.6145237Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1700 +0x21e
Run tests	2024-12-19T19:11:34.6145670Z database/sql.(*DB).exec(0xc0006fc8f0, {0x26dcae0, 0xc000b821c0}, {0x2246663, 0x174}, {0xc000c932c0, 0x5, 0x5}, 0x0?)
Run tests	2024-12-19T19:11:34.6145932Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1685 +0xcf
Run tests	2024-12-19T19:11:34.6146109Z database/sql.(*DB).ExecContext.func1(0x58?)
Run tests	2024-12-19T19:11:34.6146369Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1664 +0x4f
Run tests	2024-12-19T19:11:34.6146542Z database/sql.(*DB).retry(0x0?, 0xc00085be78)
Run tests	2024-12-19T19:11:34.6146810Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1568 +0x42
Run tests	2024-12-19T19:11:34.6147274Z database/sql.(*DB).ExecContext(0x0?, {0x26dcae0?, 0xc000b821c0?}, {0x2246663?, 0x41111b?}, {0xc000c932c0?, 0x1d703a0?, 0x0?})
Run tests	2024-12-19T19:11:34.6147538Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1663 +0xc8
Run tests	2024-12-19T19:11:34.6148032Z github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury.(*orm).InsertTransmitRequest.func2()
Run tests	2024-12-19T19:11:34.6148391Z 	/home/runner/work/chainlink/chainlink/core/services/relay/evm/mercury/orm.go:90 +0x219
Run tests	2024-12-19T19:11:34.6148971Z created by github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury.(*orm).InsertTransmitRequest in goroutine 226
Run tests	2024-12-19T19:11:34.6149319Z 	/home/runner/work/chainlink/chainlink/core/services/relay/evm/mercury/orm.go:88 +0x38f

Why: The error indicates a failure in executing a database command within the InsertTransmitRequest function. This could be due to a missing or incorrect database connection.

Suggested fix: Ensure that the database connection is properly established before executing any commands. Verify the connection parameters and ensure the database server is running.

2. Database transaction await error:go_core_tests

Source of Error:
Run tests	2024-12-19T19:11:34.6167197Z database/sql.(*Tx).awaitDone(0xc000f58f00)
Run tests	2024-12-19T19:11:34.6167458Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:2204 +0x2b
Run tests	2024-12-19T19:11:34.6167673Z created by database/sql.(*DB).beginDC in goroutine 203
Run tests	2024-12-19T19:11:34.6167934Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/database/sql/sql.go:1917 +0x1ef

Why: This error suggests that a database transaction is awaiting completion but is stuck, possibly due to a deadlock or long-running transaction.

Suggested fix: Investigate the transaction logic to ensure it completes in a timely manner. Check for potential deadlocks or long-running operations that could be causing the delay.

3. Mutex lock error:go_core_tests

Source of Error:
Run tests	2024-12-19T19:11:34.6153786Z sync.runtime_SemacquireMutex(0x67?, 0x1?, 0xc000f69f80?)
Run tests	2024-12-19T19:11:34.6154033Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/runtime/sema.go:95 +0x25
Run tests	2024-12-19T19:11:34.6154182Z sync.(*Mutex).lockSlow(0xc0005cb4d0)
Run tests	2024-12-19T19:11:34.6154425Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/sync/mutex.go:173 +0x15d
Run tests	2024-12-19T19:11:34.6154542Z sync.(*Mutex).Lock(...)
Run tests	2024-12-19T19:11:34.6154752Z 	/opt/hostedtoolcache/go/1.23.4/x64/src/sync/mutex.go:92
Run tests	2024-12-19T19:11:34.6155234Z github.com/smartcontractkit/chainlink-common/pkg/sqlutil/pg.(*txDriver).Open(0xc0005cb4d0, {0xc000ca4090, 0x24})
Run tests	2024-12-19T19:11:34.6155797Z 	/home/runner/go/pkg/mod/github.com/smartcontractkit/chainlink-common@v0.4.1-0.20241217120918-bbe318cd0760/pkg/sqlutil/pg/txdb.go:95 +0x65

Why: The error indicates that a mutex lock is being acquired slowly, which could be due to contention or a deadlock situation.

Suggested fix: Review the code to ensure that mutexes are used efficiently and avoid long-held locks. Consider using more granular locking or other synchronization mechanisms to reduce contention.

4. Context watcher error:go_core_tests

Source of Error:
Run tests	2024-12-19T19:11:34.6152146Z github.com/jackc/pgconn/internal/ctxwatch.(*ContextWatcher).Watch.func1()
Run tests	2024-12-19T19:11:34.6152559Z 	/home/runner/go/pkg/mod/github.com/jackc/pgconn@v1.14.3/internal/ctxwatch/context_watcher.go:47 +0x66
Run tests	2024-12-19T19:11:34.6152962Z created by github.com/jackc/pgconn/internal/ctxwatch.(*ContextWatcher).Watch in goroutine 487
Run tests	2024-12-19T19:11:34.6153369Z 	/home/runner/go/pkg/mod/github.com/jackc/pgconn@v1.14.3/internal/ctxwatch/context_watcher.go:46 +0x112

Why: This error suggests that the context watcher is stuck in a select statement, possibly due to a context that is not being canceled properly.

Suggested fix: Ensure that contexts are properly managed and canceled when no longer needed. Review the context usage in the code to avoid leaks or improper handling.

5. Log poller lock error:go_core_tests

Source of Error:
Run tests	2024-12-19T19:11:34.6260706Z github.com/smartcontractkit/chainlink/v2/core/chains/evm/logpoller.(*logPoller).lockAndLoadFilters(0xc000d61980, {0x26dca70, 0xc000fdd630})
Run tests	2024-12-19T19:11:34.6261069Z 	/home/runner/work/chainlink/chainlink/core/chains/evm/logpoller/log_poller.go:580 +0x52
Run tests	2024-12-19T19:11:34.6261665Z github.com/smartcontractkit/chainlink/v2/core/chains/evm/logpoller.(*logPoller).loadFilters(0xc000d61980, {0x26dca70?, 0xc000fdd630?})
Run tests	2024-12-19T19:11:34.6262025Z 	/home/runner/work/chainlink/chainlink/core/chains/evm/logpoller/log_poller.go:562 +0x3a
Run tests	2024-12-19T19:11:34.6262454Z github.com/smartcontractkit/chainlink/v2/core/chains/evm/logpoller.(*logPoller).run(0xc000d61980)
Run tests	2024-12-19T19:11:34.6262818Z 	/home/runner/work/chainlink/chainlink/core/chains/evm/logpoller/log_poller.go:624 +0x2be
Run tests	2024-12-19T19:11:34.6263344Z created by github.com/smartcontractkit/chainlink/v2/core/chains/evm/logpoller.(*logPoller).Start.func1 in goroutine 200
Run tests	2024-12-19T19:11:34.6263693Z 	/home/runner/work/chainlink/chainlink/core/chains/evm/logpoller/log_poller.go:510 +0x6d

Why: The log poller is experiencing issues with acquiring a lock, which could be due to contention or a deadlock.

Suggested fix: Review the locking mechanism in the log poller to ensure it is efficient and does not lead to deadlocks. Consider using more granular locks or other synchronization techniques.

AER Report: Operator UI CI ran successfully ✅

aer_workflow , commit

@jmank88 jmank88 requested a review from erikburt December 18, 2024 21:53
Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and 5eee570 (tests-parallel).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
Test_EventHandlerStateSync 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_InitialStateSync 0.00% true true false 3 0 3 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_RegistrySyncer_WorkflowRegistered_InitiallyActivated N/A false false false 0 0 0 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_RegistrySyncer_WorkflowRegistered_InitiallyPaused N/A false false false 0 0 0 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_SecretsWorker N/A false false false 0 0 0 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
TestMercuryConfigPoller 83.33% true false false 6 5 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury false 304ms @smartcontractkit/data-streams-engineers, @smartcontractkit/core
TestORM 80.00% false false false 5 4 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/mercury false 270ms @smartcontractkit/data-streams-engineers, @smartcontractkit/core

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

@cl-sonarqube-production
Copy link

Copy link
Contributor

Flakeguard Summary

Ran new or updated tests between develop and ff6f150 (tests-parallel).

View Flaky Detector Details | Compare Changes

Found Flaky Tests ❌

Name Pass Ratio Panicked? Timed Out? Race? Runs Successes Failures Skips Package Package Panicked? Avg Duration Code Owners
Test_EventHandlerStateSync 0.00% true true false 2 0 2 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown
Test_InitialStateSync 0.00% true true false 1 0 1 0 github.com/smartcontractkit/chainlink/v2/core/services/relay/evm/capabilities/workflows/syncer true 0s Unknown

Artifacts

For detailed logs of the failed tests, please refer to the artifact failed-test-results-with-logs.json.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants