Ensure that sqlite_stat1 and sqlite_stat4 are ordinary tables (not views or
virtual tables) before trying to load them
(dbsqlfuzz
bc02a0cde82dee801a8d6f653d2831680f87dca1). This prevents
sqlite3_declare_vtab() from running with db->init.busy turned on. Even so,
enhance sqlite3_declare_vtab() to be able to deal with db->init.busy being on,
in case there are undiscovered paths to that state.
Each of these two changes are independently sufficient to prevent the problem
fixed by the previous check-in [
c7560c1329965ab5] but there
is no harm in keeping that third layer of protection in place.
FossilOrigin-Name:
eb94f4a8174436b1f0deed0a43618a20018387bb815be658314ca6b454c446fb