Skip to content

Potential race on disableTiming boolean #4808

@e-gineer

Description

@e-gineer

Description

The disableTiming boolean flag is read and written from multiple goroutines without synchronization. While boolean reads/writes are atomic on most architectures, Go's memory model doesn't guarantee visibility without synchronization.

Severity

LOW - Potential stale reads

Test Reference

Test: TestDbClient_DisableTimingFlag in pkg/db/db_client/db_client_session_test.go:214 (skipped)

Suggested Fix

Use atomic.Bool:

type DbClient struct {
    ...
    disableTiming atomic.Bool
    ...
}

Related Code

  • pkg/db/db_client/db_client.go:59
  • pkg/db/db_client/db_client_execute.go:190

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions