## Summary
<!--Explain briefly what goes wrong and explain why you believe this is a bug and not the intended behavior of SQLite (if it is not a crash).-->**No review yet**

## Minimized query

```sql
PRAGMA fullsync = FALSE;
.separator >_<
PRAGMA fullfsync;
PRAGMA wal_autocheckpoint;
PRAGMA cache_spill;
.timer on
CREATE TABLE T (
  a INTEGER,
  b REAL,
  c REAL
);
INSERT INTO T VALUES (sqrt(1),2.0,10.5), (1,-3.5,20.25), (2,9e999,-1.0);
WITH d AS (SELECT a,SUM(b*c) AS e FROM T GROUP BY a) SELECT * FROM d;
CREATE  INDEX IF NOT EXISTS idx_T_9600 ON T(lower(b)) WHERE b > 0;
ALTER TABLE T DROP COLUMN c;
PRAGMA analysis_limit;
SELECT * FROM T AS a FULL OUTER JOIN T AS b ON a.rowid = b.rowid;
ALTER TABLE T ADD COLUMN extra_747 INT COLLATE NOCASE;
```

## Actual output

```sql
0
1000
483
Run Time: real 0.000 user 0.000161 sys 0.000000
Run Time: real 0.000 user 0.000026 sys 0.000000
1>_<-49.875
2>_<-Inf
Run Time: real 0.000 user 0.000042 sys 0.000000
Run Time: real 0.000 user 0.000055 sys 0.000000
Run Time: real 0.001 user 0.000339 sys 0.000000
0
Run Time: real 0.000 user 0.000003 sys 0.000000
1>_<2.0>_<1>_<2.0
1>_<-3.5>_<1>_<-3.5
2>_<Inf>_<2>_<Inf
Run Time: real 0.000 user 0.000039 sys 0.000000
Run Time: real 0.000 user 0.000077 sys 0.000000
```

## Expectation

```sql
0
1000
483
Run Time: real 0.000100 user 0.000108 sys 0.000000
Run Time: real 0.000023 user 0.000023 sys 0.000000
1>_<-49.875
2>_<-Inf
Run Time: real 0.000034 user 0.000034 sys 0.000000
Run Time: real 0.000036 user 0.000036 sys 0.000000
Run Time: real 0.000221 user 0.000222 sys 0.000000
0
Run Time: real 0.000003 user 0.000003 sys 0.000000
1>_<2.0>_<1>_<2.0
1>_<-3.5>_<1>_<-3.5
2>_<Inf>_<2>_<Inf
Run Time: real 0.000027 user 0.000027 sys 0.000000
Run Time: real 0.000045 user 0.000045 sys 0.000000
```

## Flag

```
-vfs unix-excl
```

