Repository navigation
[auto-bump] [no-release-notes] Dolt dependency - #3587
coffeegoddd wants to merge 1 commit into
Conversation
|
|
SummaryCoverage spans backend data-management behavior, including branch and merge workflows, commit history, concurrent updates, rollback recovery, and preservation of committed records, along with dependency integrity and repository build validation. It focuses on happy paths and failure-recovery scenarios rather than user-interface behavior. Merge with caution — the application builds and the exercised data workflows remain healthy, but the dependency update leaves the full test suite unable to compile because a required test harness capability is missing. This is a medium-risk merge blocker for repository verification, though it does not indicate a direct customer-facing runtime failure. Tests run by ItoTip Reply with @itoqa to send us feedback on this test run. |
| github.com/cockroachdb/apd/v3 v3.2.3 | ||
| github.com/cockroachdb/errors v1.7.5 | ||
| github.com/dolthub/dolt/go v0.40.5-0.20261013010211-55970d4e13a0 | ||
| github.com/dolthub/dolt/go v0.40.5-0.20261013070258-eaa9030af908 |
There was a problem hiding this comment.
Go tests fail after dependency update
What failed: The full Go test suite stops before running testing/go/enginetest because DoltgresHarness no longer satisfies the interfaces supplied by the updated dependencies.
Impact · Steps · Stub / mock · Analysis · Why this is likely a bug
- Severity: Medium
- Impact: Developers cannot verify the repository after the dependency update because the engine-test package no longer satisfies the required interfaces. The application build still succeeds, and no customer data or live user workflow is affected.
- Steps to Reproduce:
- Use the repository with the dependency versions in go.mod.
- Run
go build ./...from the repository root and confirm it succeeds. - Run
go test ./...from the repository root. - Observe compilation errors in testing/go/enginetest stating that DoltgresHarness is missing SupportsValueRow.
- Stub / mock content: No stubs, mocks, or bypasses were applied for this test in the recorded run.
- Code Analysis: The PR diff updates github.com/dolthub/dolt/go from v0.40.5-0.20261013010211-55970d4e13a0 to v0.40.5-0.20261013070258-eaa9030af908 and github.com/dolthub/go-mysql-server from v0.20.1-0.20261010002103-d67b540b0e5e to v0.20.1-0.20261013010327-d5acf30e8519 in go.mod, with matching go.sum entries. In testing/go/enginetest/doltgres_harness_test.go, lines 65-68 assign *DoltgresHarness to the DoltEnginetestHarness, SkippingHarness, ResultEvaluationHarness, and DialectHarness interfaces. The compiler reports for each relevant interface that SupportsValueRow is missing. The harness defines capability methods such as SupportsNativeIndexCreation, SupportsForeignKeys, and SupportsKeylessTables at lines 334-344, but no SupportsValueRow method exists anywhere in this type. Because go build ./... succeeds while package compilation during go test ./... fails, this is a test-package interface incompatibility rather than a general production build failure. Implementing the newly required method on DoltgresHarness is a targeted repair; alternatively, reverting or pinning the two dependency updates would avoid the new interface requirement but would not address compatibility with the intended versions.
- Why this is likely a bug: A dependency-only PR is expected to leave the repository buildable and testable, and baseline correctness requires that ordinary package tests do not fail at compilation. The failure is deterministic and localized: the updated external interfaces demand SupportsValueRow, while the repository's harness lacks it. It blocks the entire engine-test package and therefore prevents the stated full-suite check. The PR's changed module versions are the direct trigger, not a runner mock or setup problem. The practical fix is limited to adding the missing capability method with the correct behavior for Doltgres, or reverting the specific incompatible version bump until that method is added.
Relevant code
go.mod:11-14
github.com/dolthub/dolt/go v0.40.5-0.20261013070258-eaa9030af908
github.com/dolthub/go-mysql-server v0.20.1-0.20261013010327-d5acf30e8519testing/go/enginetest/doltgres_harness_test.go:54-68
type DoltgresHarness struct {
t *testing.T
// ... harness state ...
}
var _ denginetest.DoltEnginetestHarness = &DoltgresHarness{}
var _ enginetest.SkippingHarness = &DoltgresHarness{}
var _ enginetest.ResultEvaluationHarness = &DoltgresHarness{}
var _ enginetest.DialectHarness = &DoltgresHarness{}testing/go/enginetest/doltgres_harness_test.go:334-344
func (d *DoltgresHarness) SupportsNativeIndexCreation() bool {
return true
}
func (d *DoltgresHarness) SupportsForeignKeys() bool {
return true
}
func (d *DoltgresHarness) SupportsKeylessTables() bool {
return true
}Evidence Package
Copy prompt for an agent
Ito QA identified the following failure during automated PR testing. Please investigate and propose a fix.
**Medium severity — Go tests fail after dependency update**
**What failed:** The full Go test suite stops before running testing/go/enginetest because DoltgresHarness no longer satisfies the interfaces supplied by the updated dependencies.
- **Impact:** Developers cannot verify the repository after the dependency update because the engine-test package no longer satisfies the required interfaces. The application build still succeeds, and no customer data or live user workflow is affected.
- **Steps to reproduce:**
1. Use the repository with the dependency versions in go.mod.
2. Run `go build ./...` from the repository root and confirm it succeeds.
3. Run `go test ./...` from the repository root.
4. Observe compilation errors in testing/go/enginetest stating that DoltgresHarness is missing SupportsValueRow.
- **Stub / mock content:** No stubs, mocks, or bypasses were applied for this test in the recorded run.
- **Code analysis:** The PR diff updates github.com/dolthub/dolt/go from v0.40.5-0.20261013010211-55970d4e13a0 to v0.40.5-0.20261013070258-eaa9030af908 and github.com/dolthub/go-mysql-server from v0.20.1-0.20261010002103-d67b540b0e5e to v0.20.1-0.20261013010327-d5acf30e8519 in go.mod, with matching go.sum entries. In testing/go/enginetest/doltgres_harness_test.go, lines 65-68 assign *DoltgresHarness to the DoltEnginetestHarness, SkippingHarness, ResultEvaluationHarness, and DialectHarness interfaces. The compiler reports for each relevant interface that SupportsValueRow is missing. The harness defines capability methods such as SupportsNativeIndexCreation, SupportsForeignKeys, and SupportsKeylessTables at lines 334-344, but no SupportsValueRow method exists anywhere in this type. Because go build ./... succeeds while package compilation during go test ./... fails, this is a test-package interface incompatibility rather than a general production build failure. Implementing the newly required method on DoltgresHarness is a targeted repair; alternatively, reverting or pinning the two dependency updates would avoid the new interface requirement but would not address compatibility with the intended versions.
- **Why this is likely a bug:** A dependency-only PR is expected to leave the repository buildable and testable, and baseline correctness requires that ordinary package tests do not fail at compilation. The failure is deterministic and localized: the updated external interfaces demand SupportsValueRow, while the repository's harness lacks it. It blocks the entire engine-test package and therefore prevents the stated full-suite check. The PR's changed module versions are the direct trigger, not a runner mock or setup problem. The practical fix is limited to adding the missing capability method with the correct behavior for Doltgres, or reverting the specific incompatible version bump until that method is added.
**Relevant code:**
`go.mod:11-14`
~~~go
github.com/dolthub/dolt/go v0.40.5-0.20261013070258-eaa9030af908
github.com/dolthub/go-mysql-server v0.20.1-0.20261013010327-d5acf30e8519
~~~
`testing/go/enginetest/doltgres_harness_test.go:54-68`
~~~go
type DoltgresHarness struct {
t *testing.T
// ... harness state ...
}
var _ denginetest.DoltEnginetestHarness = &DoltgresHarness{}
var _ enginetest.SkippingHarness = &DoltgresHarness{}
var _ enginetest.ResultEvaluationHarness = &DoltgresHarness{}
var _ enginetest.DialectHarness = &DoltgresHarness{}
~~~
`testing/go/enginetest/doltgres_harness_test.go:334-344`
~~~go
func (d *DoltgresHarness) SupportsNativeIndexCreation() bool {
return true
}
func (d *DoltgresHarness) SupportsForeignKeys() bool {
return true
}
func (d *DoltgresHarness) SupportsKeylessTables() bool {
return true
}
~~~|
@coffeegoddd DOLT
|

☕ An Automated Dependency Version Bump PR 👑
Initial Changes
The changes contained in this PR were produced by `go get`ing the dependency.
```bash
go get github.com/dolthub/[dependency]/go@[commit]
```