dolthub / dolthub/dolt

dolt_rebase('--continue') error mentions dolt_conflicts_<table> even when no conflict rows persist after abort

Open
#10,951 1 comment 0 reactions 0 assignees View on GitHub
bad error message version control
Dominant language
Go
Stars
24.4k
Forks
873
Avg merge
1d 5h
Merged PRs (30d)
108

Description

## Problem

In an interactive rebase conflict flow, `dolt_rebase('--continue')` errors with guidance to resolve conflicts in `dolt_conflicts_` and then continue rebasing.

But in the tested scenario, the rebase aborts immediately and does not leave persisted conflict rows behind, so that guidance appears incorrect or at least misleading.

## Repro

```sql
CREATE TABLE t(id INT PRIMARY KEY, v INT);
INSERT INTO t VALUES(1, 10), (2, 20);
CALL dolt_add('-A');
CALL dolt_commit('-m', 'c1');

CALL dolt_checkout('-b', 'feature');
UPDATE t SET v=200 WHERE id=1;
UPDATE t SET v=201 WHERE id=2;
CALL dolt_add('-A');
CALL dolt_commit('-m', 'feat_update');

CALL dolt_checkout('main');
UPDATE t SET v=300 WHERE id=1;
UPDATE t SET v=301 WHERE id=2;
CALL dolt_add('-A');
CALL dolt_commit('-m', 'main_update');

CALL dolt_checkout('feature');
CALL dolt_rebase('-i', 'main');
CALL dolt_rebase('--continue');
```

## Actual behavior

`dolt_rebase('--continue')` errors with text like:

> data conflict detected while rebasing commit ...
> Resolve the conflicts and remove them from the dolt_conflicts_ tables, then continue the rebase by calling dolt_rebase('--continue')

But after the abort:

```sql
SELECT count(*) FROM dolt_conflicts;
```

returns `0`, and there is no persisted conflict-table state left to resolve.

## Expected behavior

Either:

1. preserve conflict rows so the user can actually resolve them and continue, or
2. change the error message to reflect that the rebase was aborted and there is no conflict-table state to resolve

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.