sqlanalyze utility doesn't compile in SQLite trunk
(1.1) By Dan Shearer (danshearer) on 2022-03-12 09:51:53 edited from 1.0 [link] [source]
The sqlanalyze utility doesn't compile in SQLite trunk:
./configure
make sqlite3_analyze
[...]
tsrc/btree.h:250:1: error: version control conflict marker in file
250 | <<<<<<< BEGIN MERGE CONFLICT: local copy shown first <<<<<<<<<<<< (line 250)
[...]
After some tracing I tried ./configure amalgamation_line_macros=yes
but that failed in the same way. I noticed some background comments by Larry about line macros, I get the same error after fossil update version-3.37.0
and fossil update version-3.36.0
.
Am I missing something obvious? Should make sqlite3_analyze
be in a pre-release checklist or test suite?
Dan Shearer
(2) By curmudgeon on 2022-03-12 09:58:25 in reply to 1.1 [link] [source]
In my bash script for updating the trunk it's sqlite3_analyzer (r at end) Dan. Is that the problem?
(3) By Dan Shearer (danshearer) on 2022-03-12 10:01:11 in reply to 2 [link] [source]
Unfortunately not. You are correct, my copy/paste was messed up, but:
$ make sqlite3_analyze
make: *** No rule to make target 'sqlite3_analyze'. Stop.
and I see all my testing was with the 'r'.
Dan Shearer
(4) By Stephan Beal (stephan) on 2022-03-12 10:05:49 in reply to 1.1 [link] [source]
tsrc/btree.h:250:1: error: version control conflict marker in file 250 | <<<<<<< BEGIN MERGE CONFLICT: local copy shown first <<<<<<<<<<<< (line 250)
indicates that you somehow managed to get a merge conflict when updating, which means you had local changes which got merged in. The trunk version does not have that merge conflict marker, nor does version-3.37.0
. Fossil won't let a checkin be made with those markers i a file without an explicit flag permitting them.
Try, from the top of the checkout:
fossil revert .
and you should be good to go (noting that your local changes will be lost).
(5) By Dan Shearer (danshearer) on 2022-03-12 10:39:15 in reply to 4 [source]
Stephan Beal (stephan) on 2022-03-12 10:05:49:
indicates that you somehow managed to get a merge conflict when updating, which means you had local changes which got merged in.
You are completely correct. This is a part of Fossil workflow I find unintuitive, perhaps because I almost never hit it. Thanks Stephan.
I like the recursive nature of the output of sqlite3_analyzer
, which it outputs both:
- a text report on a database file, in the form of an SQL comment, followed by
- the SQL used to generate that text
such that the whole can be fed into any SQL database for further processing.
Thanks.
Dan Shearer