SQLite Forum

(Deleted)
Login

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:

  1. a text report on a database file, in the form of an SQL comment, followed by
  2. the SQL used to generate that text

such that the whole can be fed into any SQL database for further processing.

Thanks.

Dan Shearer