You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I've encounter following issue using select * from dolt_diff_summary(...) because in some cases it's returning records with both data_change and schema_change set to false. For example:
And dolt diff return nothing for specified table, either on main branch activated or new branch.
SELECT * FROM DOLT_DIFF('5ps4828ppa912injf4vj89h9meaarepu', '76q0rsmorlg35o64uf87d37n2hbiae43', 'extras_configcontext_clusters')
select * from dolt_diff_extras_configcontext_clusters
I've found out that this is happening especially when comparing commit hashes from two different branches. In above case, 5ps commit is the last commit on main branch and 76q is the first and only commit on newly created branch out of main. When I'm comparing two commits from the same branch results are correct.
Expected results: all of the results from calling dolt_diff_summary should be with either data_change or schema_change flag set to true or not shown at all.
The text was updated successfully, but these errors were encountered:
Interesting. This means the actual hash of the table is different but Dolt can't display the change. There are some "hidden" elements in table schema called tags.
I agree this is confusing, and we should figure out what's happening.
I have a theory what might be causing this. Does your extras_configcontext_clusters table use an auto-incrementing primary key? Tables in Dolt store the highest auto-incrementing primary key they've generated, in order to guarantee that it doesn't generate the same primary key twice even if the original row gets deleted. This stored value affects the table's hash despite not being part of either the schema or the data. If this value and only this value were to change (for instance, by inserting a new row and then immediately deleting it), it would cause the table to report as modified despite there being no schema change and no data change.
Dolt version: v1.47.1
I've encounter following issue using
select * from dolt_diff_summary(...)
because in some cases it's returning records with bothdata_change
andschema_change
set tofalse
. For example:But other methods return "proper" data:
And dolt diff return nothing for specified table, either on main branch activated or new branch.
I've found out that this is happening especially when comparing commit hashes from two different branches. In above case,
5ps
commit is the last commit onmain
branch and76q
is the first and only commit on newly created branch out ofmain
. When I'm comparing two commits from the same branch results are correct.Expected results: all of the results from calling
dolt_diff_summary
should be with eitherdata_change
orschema_change
flag set to true or not shown at all.The text was updated successfully, but these errors were encountered: