Я компилирую sqlite.so для использования в приложении для Android.Я раньше использовал sqlite3.18
, теперь обновился до sqlite3.25
.Я заметил, что sqlite3.25
намного медленнее, чем sqlite3.18
.Тот же sql, такой как "select * form table order by ..."
sqlite3.25
, занял 1000 с, а sqlite3.18
- всего 100 мс.почему ???
Основной модифицированный код приведен ниже: изменить codecext.c rc = sqlite3BtreeBeginTrans(pbt, 1);
-> rc = sqlite3BtreeBeginTrans(pbt, 1,0);
rc = sqlite3PagerGet(pPager, n, &pPage);
-> rc = sqlite3PagerGet(pPager, n, &pPage,0);
sqlite3BtreeRollback(pbt,rc);
-> sqlite3BtreeRollback(pbt,rc,0);
jni / Android.mk
LOCAL_LDLIBS += -llog --> LOCAL_LDLIBS += -llog -fPIC