> diff --git a/src/box/sql/CMakeLists.txt b/src/box/sql/CMakeLists.txt > index b9dbe141a..f988dc3e7 100644 > --- a/src/box/sql/CMakeLists.txt > +++ b/src/box/sql/CMakeLists.txt > @@ -10,9 +10,6 @@ set(SQL_BIN_DIR ${CMAKE_BINARY_DIR}/src/box/sql) > include_directories(${SQL_SRC_DIR}) > include_directories(${SQL_BIN_DIR}) > > -add_definitions(-DSQL_MAX_WORKER_THREADS=0) > -add_definitions(-DSQL_OMIT_AUTOMATIC_INDEX) Let’s keep routines connected with automatic indexes: we are going to re-enable it in scope of https://github.com/tarantool/tarantool/issues/2583 This code is a good point to start with reincarnation. > - > set(TEST_DEFINITIONS > SQL_NO_SYNC=1 > SQL_TEST=1 > > diff --git a/src/box/sql/sqlInt.h b/src/box/sql/sqlInt.h > index f019cd291..4bf94fad2 100644 > --- a/src/box/sql/sqlInt.h > +++ b/src/box/sql/sqlInt.h > > @@ -4858,13 +4846,6 @@ int sqlMemdebugNoType(void *, u8); > > -/* > - * Threading interface > - */ > -#if SQL_MAX_WORKER_THREADS>0 > -int sqlThreadCreate(sqlThread **, void *(*)(void *), void *); > -int sqlThreadJoin(sqlThread *, void **); > -#endif Now we can remove struct sqlThread. > diff --git a/src/box/sql/vdbesort.c b/src/box/sql/vdbesort.c > index ddea6752c..a37fbd911 100644 > --- a/src/box/sql/vdbesort.c > +++ b/src/box/sql/vdbesort.c > @@ -118,11 +118,6 @@ > * there are already N worker threads running, the main thread does the work > * itself. > * > - * The sorter is running in multi-threaded mode if (a) the library was built > - * with pre-processor symbol SQL_MAX_WORKER_THREADS set to a value greater > - * than zero, and (b) worker threads have been enabled at runtime by calling > - * "PRAGMA threads=N" with some value of N greater than 0. > - * > * When Rewind() is called, any data remaining in memory is flushed to a > * final PMA. So at this point the data is stored in some number of sorted > * PMAs within temporary files on disk. > @@ -159,15 +154,6 @@ > #include "sqlInt.h" > #include "vdbeInt.h" > > > /* > * Hard-coded maximum amount of data to accumulate in memory before flushing > * to a level 0 PMA. The purpose of this limit is to prevent various integer > @@ -297,18 +283,14 @@ struct MergeEngine { > * > * Before a background thread is launched, variable bDone is set to 0. Then, > * right before it exits, the thread itself sets bDone to 1. This is used for > - * two purposes: bDone member is unused now. > @@ -885,8 +848,8 @@ sqlVdbeSorterInit(sql * db, /* Database connection (for malloc()) */ > } else { > pSorter->key_def = pCsr->key_def; > pSorter->pgsz = pgsz = 1024; > - pSorter->nTask = nWorker + 1; > - pSorter->iPrev = (u8) (nWorker - 1); > + pSorter->nTask = 1; nTask now always equals to 1, you can refactor code using it. The same concerns member iPrev. > diff --git a/src/box/sql/wherecode.c b/src/box/sql/wherecode.c > index 4dedb38a7..01fa138f6 100644 > --- a/src/box/sql/wherecode.c > +++ b/src/box/sql/wherecode.c > @@ -253,14 +253,6 @@ sqlWhereExplainOneScan(Parse * pParse, /* Parse context */ > " USING INTEGER PRIMARY KEY (rowid%s?)", > zRangeOp); > } > -#ifdef SQL_EXPLAIN_ESTIMATED_ROWS > - if (pLoop->nOut >= 10) { > - sqlXPrintf(&str, " (~%llu rows)", > - sqlLogEstToInt(pLoop->nOut)); > - } else { > - sqlStrAccumAppend(&str, " (~1 row)", 9); > - } > -#endif We can enable this code, instead of removing it.