-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathknown_testfixture_divergences.txt
More file actions
5953 lines (5762 loc) · 410 KB
/
Copy pathknown_testfixture_divergences.txt
File metadata and controls
5953 lines (5762 loc) · 410 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Known divergences from upstream sqlite testfixture
#
# Format: <test_file> <test_name> [qualifiers...] # reason (optional)
# Qualifiers: @linux, @darwin, @windows, @coverage, @no-coverage
# A counted gate ending in .*{N} matches exactly N failures with that prefix.
# Index movement passes; adding or resolving a failure does not.
# `unstable` marks an assertion whose outcome varies between runs on the same
# commit: it stays gated when it fails and is not reported stale when it passes.
# It requires issue=<number> because it is enforced in neither direction, so
# only an open investigation keeps it from becoming a permanent blind spot.
# Prefer it to crash-listing the whole file, which drops every other assertion.
#
# These tests fail when run by run_testfixture.sh against doltlite's
# testfixture build, but the failures are not bugs — they're cases
# where upstream sqlite tests assume rowid-based semantics that
# doltlite intentionally cannot match.
#
# Background: doltlite keys user-table rows in its prolly tree by the
# user's primary key columns rather than by sqlite's auto-allocated
# rowid (since #358, tracked as #1840), because rowid is allocation-order-
# dependent and therefore history-dependent — a hard incompatibility with
# the Dolt model where two branches that independently insert identical rows
# must produce identical row identities. Tests that rely on rowid
# behavior in any of these forms produce different (but correct under
# doltlite's model) results:
#
# * `WHERE rowid = N` against tables that doltlite auto-converts
# to WITHOUT ROWID, where rowid no longer exists as an
# addressable column
# * Unordered SELECT relying on insertion order (sqlite returns
# rowid order, doltlite returns user-PK order)
# * `pragma table_info` reporting non-PK columns differently for
# auto-converted WITHOUT-ROWID tables
# * AUTOINCREMENT / sqlite_sequence behavior tied to rowid
# allocation
# * Foreign key SET NULL / SET DEFAULT actions whose triggering
# DELETE addresses parent rows by rowid
# * Collation tests that exercise the rowid column itself
# * `pragma integrity_check` tests that inject corruption via
# test_control hooks that don't reach prolly storage
#
# The runner (test/run_testfixture.sh) enforces strict equality:
# every entry here MUST still actually fail, and any actual failure
# NOT listed here is a regression. If you fix one of these, remove
# the entry -- its disposition is on the same line, so there is nothing
# else to delete.
#
# Each entry is: <suite> <assertion> [@qualifier ...] class=<category>
# [issue=<number>] [# rationale]. Categories are intentional, unsupported,
# harness and engine-gap; unsupported and engine-gap must cite an issue.
# check_testfixture_exception_inventory.sh validates the fields and totals the
# categories; the totals are ratcheted by
# known_testfixture_exception_ratchet.txt.
#
# Many entries below are downstream of PRAGMAs that DoltLite accepts and then
# ignores -- journal_mode, auto_vacuum, secure_delete, journal_size_limit,
# mmap_size, writable_schema -- plus the synthetic page_count/freelist_count/
# schema_version values. That whole class is described once in #1846 rather than
# restated per suite; gates naming one of those PRAGMAs cite it.
# ── storage corruption probes ──
# Stock hexio byte-flips assume a contiguous SQLite page file (btree cells,
# freelist, headers). On a chunk-store repo the same offsets hit CTLD
# manifest/hash/journal bytes. Architectural — not a missing integrity
# detector, and not message-parity work if the store reports differently.
corrupt corrupt-3.3 @linux unstable class=harness issue=1963 # outcome varies run to run on identical commits (4 of 6 observed runs passed); fixture is deterministic, cause unknown
corrupt corrupt-3.4 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
corrupt corrupt-3.5 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
corrupt corrupt-3.6 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
corrupt corrupt-5.2 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
corrupt corrupt-8.1 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
corrupt corrupt-8.2 class=intentional # hexio lands on CTLD bytes, not btree cells (architectural)
# ── canonical adoption (per-entry class) ──
altercol altercol-1.13.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-1.17.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-1.5.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-1.6.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-11.1 class=engine-gap issue=1200 # canonical adoption: sqlite_master row order after schema commit
altercol altercol-2.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-22.0 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-4.1 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercol altercol-4.4 class=engine-gap issue=1200 # canonical adoption: row order and canonicalized SQL text after schema commit
altercons2 altercons2-1.2.3 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-1.4.3 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-12.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-12.5 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-4.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-6.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altercons2 altercons2-9.1 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
alterqf alterqf-2.1 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-1.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-17.0 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-18.1.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-18.2.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-19.100 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-23.3 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-23.4 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab altertab-24.2.1 class=engine-gap issue=1200 # canonical adoption: reparse order changes which malformed object reports the missing-table error
altertab altertab-30.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-2.1 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-2.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-2.3 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-3.1.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-3.2.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-3.3.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
altertab2 altertab2-3.4.2 class=engine-gap issue=1200 # canonical adoption: canonicalized SQL text after schema commit
check check-4.6 class=engine-gap issue=1200 # canonical adoption: sqlite_master row order after schema commit
check check-4.9 class=engine-gap issue=1200 # canonical adoption: sqlite_master row order after schema commit
fkey6 fkey6-6.3 class=intentional issue=1852 # writable_schema fake-row injection (bogus rootpage) mispairs catalog rows; doltlite reports corruption instead of silently tolerating the orphan row
fts3fault2 fts3fault2-8.0 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
fts3matchinfo fts3matchinfo-1.0 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
fts4langid fts4langid-1.2 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
insert insert-5.4 class=intentional # test asserts literal rootpage numbers; doltlite raw format differs
istrue istrue-841 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
select1 select1-2.23 class=intentional # NULL into non-integer PRIMARY KEY (WITHOUT ROWID clustering key) rejected
# ── where ──
# where-5.* tests use count{} which asserts an exact number of internal
# btree seeks. PR #999 ("Optimize rowid IN integer literal lookups")
# replaces N per-literal seeks with a single range scan, so the operation
# count drops below the upstream-expected value. The returned rows still
# match — only the seek-count assertion diverges. Six tests below; rows
# all correct, counts all lower than the upstream expectation.
selectH selectH-4.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
table table-1.1 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
table table-3.1 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
table table-8.1.1 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
table table-8.10 class=intentional issue=1852 # canonical adoption: canonicalized SQL text after schema commit
tkt3810 tkt3810-3 class=intentional # isolation model: peer connection's committed DROP is visible immediately; no orphaned trigger survives
tkt3810 tkt3810-4 class=intentional # isolation model: peer connection's committed DROP is visible immediately; no orphaned trigger survives
trigger1 trigger1-6.1 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
trigger1 trigger1-6.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
trigger1 trigger1-6.5 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
trigger1 trigger1-6.6 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.10.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.11.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.12.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.13.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.14.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.15.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.16.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.17.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.18.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.19.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.2.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.20.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.3.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.4.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.5.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.6.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.7.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.8.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabC vtabC-1.9.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
vtabH vtabH-1.1 class=intentional # adoption schema reset triggers vtab xConnect; extra xConnect in echo trace
where where-5.1 class=intentional issue=1840 # rowid IN literal: optimized to 1 seek vs upstream 4
where where-5.5 class=intentional issue=1840 # rowid IN (subquery of rowid IN literals): fewer seeks
where where-5.6 class=intentional issue=1840 # rowid+0 IN (same subquery): fewer seeks
where where-5.7 class=intentional issue=1840 # w IN (same subquery): fewer seeks
where where-5.8 class=intentional issue=1840 # w+0 IN (same subquery): fewer seeks
# ── index ──
index index-7.3 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-11.1 class=intentional # sqlite_search_count instrumentation not reproduced (value correct)
index index-13.2 class=intentional issue=1840 # PK auto-index not listed in sqlite_master (2 auto-indexes vs 3)
index index-16.1 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-16.2 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-16.3 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-16.4 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-16.5 class=intentional issue=1840 # PK auto-index not listed in sqlite_master
index index-17.1 class=intentional issue=1840 # PK auto-index not listed in sqlite_master (2 auto-index names vs 3)
# ── bestindex4 ──
bestindex4 bestindex4-2.1 class=intentional # EQP names the table PRIMARY KEY instead of sqlite_autoindex_t1_1
# ── alter ──
alter alter-1.2 class=intentional issue=1840 # PK auto-index row absent from sqlite_master on PK-clustered tables
alter alter-1.5 class=intentional issue=1840 # PK auto-index row absent from sqlite_master on PK-clustered tables
alter alter-1.6 class=intentional issue=1840 # PK auto-index row absent from sqlite_master on PK-clustered tables
alter alter-1.7 class=intentional issue=1840 # PK auto-index row absent from sqlite_master on PK-clustered tables
alter alter-6.2 class=intentional issue=1852 # canonical adoption: test binds sqlite_master oids; canonical renumbering reassigns them after schema commit
alter alter-6.3 class=intentional issue=1852 # canonical adoption: test binds sqlite_master oids; canonical renumbering reassigns them after schema commit
alter alter-6.4 class=intentional issue=1852 # canonical adoption: test binds sqlite_master oids; canonical renumbering reassigns them after schema commit
alter alter-6.5 class=intentional issue=1852 # canonical adoption: test binds sqlite_master oids; canonical renumbering reassigns them after schema commit
alter alter-6.6 class=intentional issue=1852 # canonical adoption: test binds sqlite_master oids; canonical renumbering reassigns them after schema commit
# ── in ──
in in-19.40 class=intentional issue=1840 # IN clause path that hits NOT NULL via rowid lookup
in in-10.2 class=intentional issue=1840 # canonical adoption: canonicalized SQL text after schema commit
# ── in3 ──
in3 in3-1.2 class=intentional issue=1840 # IN clause variant using rowid
in3 in3-1.4 class=intentional issue=1840 # IN clause variant using rowid
in3 in3-1.6 class=intentional issue=1840 # IN clause variant using rowid
in3 in3-1.16 class=intentional issue=1840 # IN clause variant using rowid
in3 in3-1.17 class=intentional issue=1840 # IN clause variant using rowid
# ── intpkey ──
intpkey intpkey-1.1 class=intentional # "int PRIMARY KEY" is PK-clustered: no sqlite_autoindex_t1_1 row in sqlite_master
# ── collate1 ──
collate1 collate1-6.7 class=intentional # cascade: p1 never created (6.5's PRIMARY KEY COLLATE '"""' rejected)
# ── collate4 ──
collate4 collate4-1.1.7 class=intentional # b UNIQUE COLLATE TEXT now rejected at CREATE (was NULL-PK rejection)
collate4 collate4-1.1.8 class=intentional
collate4 collate4-1.1.9 class=intentional
collate4 collate4-1.1.10 class=intentional
collate4 collate4-1.1.11 class=intentional
collate4 collate4-1.1.12 class=intentional
collate4 collate4-1.1.13 class=intentional
collate4 collate4-1.1.14 class=intentional
collate4 collate4-1.1.15 class=intentional
collate4 collate4-1.1.16 class=intentional
collate4 collate4-1.1.17 class=intentional
collate4 collate4-1.1.18 class=intentional
collate4 collate4-1.1.19 class=intentional
collate4 collate4-1.1.20 class=intentional
collate4 collate4-1.2.7 class=intentional
collate4 collate4-1.2.8 class=intentional
collate4 collate4-1.2.9 class=intentional
collate4 collate4-1.2.10 class=intentional
collate4 collate4-1.2.11 class=intentional
collate4 collate4-1.2.12 class=intentional
collate4 collate4-1.2.13 class=intentional
# ── fkey1 ──
fkey1 fkey1-4.2 class=intentional # table_info notnull=1 on the TEXT PK column (PK-clustered; matches stock WITHOUT ROWID), not FK-related
# ── fkey2 ──
fkey2 fkey2-5.2 class=intentional issue=1840 # FK + rowid interaction
fkey2 fkey2-5.3 class=intentional issue=1840
fkey2 fkey2-5.4 class=intentional issue=1840
fkey2 fkey2-13.1.2.1 class=intentional issue=1840
fkey2 fkey2-13.1.2.3 class=intentional issue=1840
fkey2 fkey2-13.1.3 class=intentional issue=1840
fkey2 fkey2-13.1.4 class=intentional issue=1840
fkey2 fkey2-14.2.2.2 class=intentional issue=1840 # canonical adoption: sqlite_master row order after schema commit
# ── triggerC ──
triggerC triggerC-2.1.1 class=intentional issue=1840 # trigger flow control with rowid access
triggerC triggerC-2.1.2 class=intentional issue=1840
triggerC triggerC-2.1.3 class=intentional issue=1840
triggerC triggerC-2.1.4 class=intentional issue=1840
triggerC triggerC-2.1.6 class=intentional issue=1840
# ── window1 ──
window1 window1-10.7 class=intentional issue=1840 # rowid-order vs PK-order on unordered SELECT
window1 window1-10.8 class=intentional issue=1840 # rowid-order vs PK-order on unordered SELECT
# ── e_createtable ──
e_createtable e_createtable-4.4.1 class=intentional issue=1840 # NULL into PK rejected: NOT NULL (PK-clustered; stock rowid-table quirk allows it)
e_createtable e_createtable-4.4.2 class=intentional issue=1840
e_createtable e_createtable-4.4.3 class=intentional issue=1840
e_createtable e_createtable-4.4.4 class=intentional issue=1840
e_createtable e_createtable-4.4.5 class=intentional issue=1840
e_createtable e_createtable-4.4.6 class=intentional issue=1840
e_createtable e_createtable-4.4.7 class=intentional issue=1840
e_createtable e_createtable-4.4.8 class=intentional issue=1840
e_createtable e_createtable-4.4.9 class=intentional issue=1840
e_createtable e_createtable-4.4.10 class=intentional issue=1840
e_createtable e_createtable-4.4.11 class=intentional issue=1840
e_createtable e_createtable-4.4.12 class=intentional issue=1840
e_createtable e_createtable-4.4.13 class=intentional issue=1840
e_createtable e_createtable-4.4.14 class=intentional issue=1840
e_createtable e_createtable-4.5.1.1 class=intentional issue=1840
e_createtable e_createtable-4.5.1.2 class=intentional issue=1840
e_createtable e_createtable-4.5.1.3 class=intentional issue=1840
e_createtable e_createtable-4.5.1.4 class=intentional issue=1840
e_createtable e_createtable-4.9.1 class=intentional issue=1840
e_createtable e_createtable-2.3.1.1 class=intentional issue=1840 # newest-row probe via ORDER BY rowid DESC; doltlite rowid assignment differs
e_createtable e_createtable-2.3.1.2 class=intentional issue=1840 # newest-row probe via ORDER BY rowid DESC; doltlite rowid assignment differs
e_createtable e_createtable-2.3.1.3 class=intentional issue=1840 # newest-row probe via ORDER BY rowid DESC; doltlite rowid assignment differs
e_createtable e_createtable-2.3.1.4 class=intentional issue=1840 # newest-row probe via ORDER BY rowid DESC; doltlite rowid assignment differs
e_createtable e_createtable-3.11.2 class=intentional issue=1840 # adoption reparse under runtime-lowered SQLITE_LIMIT_COLUMN re-parses a legal 501-column table into a malformed-schema error; stock only reparses on rarer triggers
e_createtable e_createtable-4.10.1 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-4.15.5.4 class=intentional issue=1840 # canonical adoption: sqlite_master row order after schema commit
e_createtable e_createtable-4.9.4 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-4.9.5 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.3.4 class=intentional issue=1840 # cascade: erroring rowid-probe helper leaves a stale t5 row (no-rowid storage class)
e_createtable e_createtable-5.3.5 class=intentional issue=1840 # cascade: erroring rowid-probe helper leaves a stale t5 row (no-rowid storage class)
e_createtable e_createtable-5.3.6 class=intentional issue=1840 # cascade: erroring rowid-probe helper leaves a stale t5 row (no-rowid storage class)
e_createtable e_createtable-5.3.7 class=intentional issue=1840 # cascade: erroring rowid-probe helper leaves a stale t5 row (no-rowid storage class)
e_createtable e_createtable-5.4.2.1 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.4.2.2 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.4.2.3 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.4.2.4 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.4.3 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
e_createtable e_createtable-5.6.1 class=intentional issue=1840 # no-rowid storage: test probes rowid/PK-autoindex internals
# ── e_select ──
e_select e_select-4.9.4 class=intentional issue=1840 # rowid-order vs PK-order on unordered SELECT
# ── e_fkey ──
e_fkey e_fkey-16.4 class=intentional issue=1840 # explicit rowid reference (no such column: rowid)
e_fkey e_fkey-17.4 class=intentional issue=1840 # explicit rowid reference
e_fkey e_fkey-44.2 class=intentional issue=1840 # ON DELETE SET NULL via rowid lookup
e_fkey e_fkey-44.3 class=intentional issue=1840
e_fkey e_fkey-44.4 class=intentional issue=1840
e_fkey e_fkey-44.5 class=intentional issue=1840
e_fkey e_fkey-45.1 class=intentional issue=1840 # ON DELETE SET DEFAULT via rowid lookup
e_fkey e_fkey-45.2 class=intentional issue=1840
e_fkey e_fkey-45.3 class=intentional issue=1840
e_fkey e_fkey-45.4 class=intentional issue=1840
e_fkey e_fkey-45.5 class=intentional issue=1840
e_fkey e_fkey-51.2 class=intentional issue=1840
e_fkey e_fkey-51.3 class=intentional issue=1840
e_fkey e_fkey-52.6 class=intentional issue=1840
e_fkey e_fkey-57.7 class=intentional issue=1840
e_fkey e_fkey-58.3 class=intentional issue=1840
e_fkey e_fkey-56.4 class=intentional issue=1840 # canonical adoption: sqlite_master row order after schema commit
# ── pragma ── (completes now that attached-db writes work; PRAGMA output / attached-db / integrity divergences)
pragma pragma-1.10 class=intentional
pragma pragma-1.11.1 class=intentional
pragma pragma-1.11.2 class=intentional
pragma pragma-1.12 class=intentional
pragma pragma-1.15.4 class=intentional
pragma pragma-1.9.1 class=intentional
pragma pragma-1.9.2 class=intentional
pragma pragma-14.1 class=intentional
pragma pragma-14.2 class=intentional
pragma pragma-14.2uc class=intentional
# pragma-3.*: integrity_check via hexio pokes into stock page/index layout.
# On DoltLite the same writes damage chunk-store WAL/manifest bytes, so
# integrity reports repository/chunk-graph failure (often generic) rather
# than stock btree page/index diagnostics ("Tree N page M ..."). Stock
# Tree/page/cell text is page-format-only — not a small message-parity fix.
# Later cases cascade from the poisoned attached-db state.
pragma pragma-3.10 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.11 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.12 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.13 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.14 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.15 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.16 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.17 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.18 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.2 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.3 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.4 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.5 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.6b class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.6c class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.7 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.8 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.8.1 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.8.2 class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.9a class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.9b class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-3.9c class=intentional # hexio integrity poke → chunk-store failure text, not Tree/page (architectural)
pragma pragma-4.6 class=intentional
pragma pragma-6.2.2 class=intentional
pragma pragma-6.8 class=intentional
pragma pragma-8.1.10 class=intentional
pragma pragma-8.1.16 class=intentional
pragma pragma-8.1.17 class=intentional
pragma pragma-8.1.9 class=intentional
pragma pragma-8.2.4.1 class=intentional
pragma pragma-8.2.4.3 class=intentional
pragma pragma-14.3 class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-14.3uc class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-14.4 class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-14.5 class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-14.6 class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-14.6uc class=intentional issue=1846 # page_count/freelist pragmas: no page-based storage
pragma pragma-17.1.1 class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-17.1.2 class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-17.1.FULL class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-17.1.INCREMENTAL class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-17.1.full class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-17.1.incremental class=intentional issue=1846 # auto_vacuum is a no-op echo in doltlite
pragma pragma-22.2 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-22.3.1 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-22.3.3 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-22.4.1 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-22.4.2 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-22.4.3 class=intentional # raw file corruption pokes byte offsets; doltlite format differs
pragma pragma-23.1 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
pragma pragma-23.3 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
pragma pragma-24.2 class=intentional # pragma error report shape differs (no page storage)
# ── shared ──
# Connections to the same file don't share a pager cache: each gets its own
# file descriptor, so sqlite_open_file_count and sqlite3_shared_cache_report
# don't match the shared-cache expectations.
shared shared-1.1.1 class=unsupported issue=1837
shared shared-1.2.1 class=unsupported issue=1837
shared shared-1.4.1.1 class=intentional # retained graph-lock handle raises the instrumented open-file count
shared shared-1.4.1.2 class=unsupported issue=1837
shared shared-1.4.1.3 class=unsupported issue=1837
shared shared-1.11.9 class=unsupported issue=1837
shared shared-2.1.1 class=unsupported issue=1837
shared shared-2.2.1 class=unsupported issue=1837
shared shared-2.4.1.1 class=unsupported issue=1837
shared shared-2.4.1.2 class=unsupported issue=1837
shared shared-2.4.1.3 class=unsupported issue=1837
shared shared-2.11.9 class=unsupported issue=1837
# Shared-cache table/schema locks are not raised: snapshot reads and writes
# proceed where stock expects "database table is locked" / "database schema
# is locked", and later assertions cascade off that (extra tables created,
# transactions committing earlier than stock).
shared shared-1.1.4 class=unsupported issue=1837
shared shared-1.1.5 class=unsupported issue=1837
shared shared-1.1.6 class=unsupported issue=1837
shared shared-1.1.7 class=unsupported issue=1837
shared shared-1.2.2 class=unsupported issue=1837
shared shared-1.2.3 class=unsupported issue=1837
shared shared-1.2.4 class=unsupported issue=1837
shared shared-1.4.3.2 class=unsupported issue=1837
shared shared-1.4.3.3 class=unsupported issue=1837
shared shared-1.4.4.1.2 class=unsupported issue=1837
shared shared-1.4.4.2 class=unsupported issue=1837
shared shared-1.4.4.3 class=unsupported issue=1837
shared shared-1.4.4.4 class=unsupported issue=1837
shared shared-1.4.4.5 class=unsupported issue=1837
shared shared-1.6.1.3 class=unsupported issue=1837
shared shared-1.6.1.4 class=unsupported issue=1837
shared shared-1.10.6 class=unsupported issue=1837
shared shared-1.10.9 class=unsupported issue=1837
shared shared-1.11.2 class=unsupported issue=1837
shared shared-1.11.5 class=unsupported issue=1837
shared shared-2.1.4 class=unsupported issue=1837
shared shared-2.1.5 class=unsupported issue=1837
shared shared-2.1.6 class=unsupported issue=1837
shared shared-2.1.7 class=unsupported issue=1837
shared shared-2.2.2 class=unsupported issue=1837
shared shared-2.2.3 class=unsupported issue=1837
shared shared-2.2.4 class=unsupported issue=1837
shared shared-2.4.3.2 class=unsupported issue=1837
shared shared-2.4.3.3 class=unsupported issue=1837
shared shared-2.4.4.1.2 class=unsupported issue=1837
shared shared-2.4.4.2 class=unsupported issue=1837
shared shared-2.4.4.3 class=unsupported issue=1837
shared shared-2.4.4.4 class=unsupported issue=1837
shared shared-2.4.4.5 class=unsupported issue=1837
shared shared-2.6.1.3 class=unsupported issue=1837
shared shared-2.6.1.4 class=unsupported issue=1837
shared shared-2.10.6 class=unsupported issue=1837
shared shared-2.10.9 class=unsupported issue=1837
shared shared-2.11.2 class=unsupported issue=1837
shared shared-2.11.5 class=unsupported issue=1837
# PRAGMA read_uncommitted has no effect: cursors read a snapshot, so another
# connection's uncommitted rows never appear mid-scan.
shared shared-1.3.1.1 class=unsupported issue=1837
shared shared-1.3.1.2 class=unsupported issue=1837
shared shared-1.11.8 class=unsupported issue=1837
shared shared-2.3.1.1 class=unsupported issue=1837
shared shared-2.3.1.2 class=unsupported issue=1837
shared shared-2.11.8 class=unsupported issue=1837
shared shared-1.7.2 class=unsupported issue=1837 # shared-cache + rowid-order assumption
shared shared-1.10.5 class=unsupported issue=1837 # rowid-order on unordered SELECT
shared shared-1.10.7 class=unsupported issue=1837
shared shared-1.14.1 class=unsupported issue=1837
shared shared-1.14.2 class=unsupported issue=1837
shared shared-2.7.2 class=unsupported issue=1837
shared shared-2.10.5 class=unsupported issue=1837
shared shared-2.10.7 class=unsupported issue=1837
shared shared-2.14.1 class=unsupported issue=1837
shared shared-2.14.2 class=unsupported issue=1837
# doltlite-format ignores non-UTF-8 database encodings
shared shared-1.8.1.2 class=unsupported issue=1837
shared shared-1.8.2.2 class=unsupported issue=1837
shared shared-2.8.1.2 class=unsupported issue=1837
shared shared-2.8.2.2 class=unsupported issue=1837
# In-memory databases are per-connection: cache=shared / mode=memory URIs do
# not share one store, so a second handle never sees the first one's tables.
shared shared-1-16.1 class=unsupported issue=1837
shared shared-1-16.2 class=unsupported issue=1837
shared shared-1-16.4 class=unsupported issue=1837
shared shared-1-16.5 class=unsupported issue=1837
shared shared-1-16.8.1 class=unsupported issue=1837
shared shared-2-16.1 class=unsupported issue=1837
shared shared-2-16.2 class=unsupported issue=1837
shared shared-2-16.4 class=unsupported issue=1837
shared shared-2-16.5 class=unsupported issue=1837
shared shared-2-16.8.1 class=unsupported issue=1837
shared shared-2.1.0 class=unsupported issue=1837 # auto_vacuum rejected on doltlite-format databases
# ── shared2 ──
shared2 shared2-1.1 class=unsupported issue=1837 # shared-cache rowid-order assumption
shared2 shared2-1.2 class=unsupported issue=1837
shared2 shared2-1.3 class=unsupported issue=1837
# ── crash7 ──
# crash7 verifies crash recovery during VACUUM. Since VACUUM is a no-op
# for doltlite (#322), the simulated crashes that the test framework
# triggers don't fire (the child process exits cleanly because there's
# no VACUUM work to crash inside of). The test file has 294 cases:
# 148 pass (the non-VACUUM-specific setup/teardown paths) and 146
# fail. The 146 are listed below.
crash7 crash7-1.1.crash class=intentional
crash7 crash7-1.2.crash class=intentional
crash7 crash7-1.3.crash class=intentional
crash7 crash7-1.4.crash class=intentional
crash7 crash7-1.5.crash class=intentional
crash7 crash7-1.6.crash class=intentional
crash7 crash7-1.7.crash class=intentional
crash7 crash7-1.8.crash class=intentional
crash7 crash7-1.9.crash class=intentional
crash7 crash7-1.10.crash class=intentional
crash7 crash7-1.11.crash class=intentional
crash7 crash7-1.12.crash class=intentional
crash7 crash7-1.13.crash class=intentional
crash7 crash7-1.14.crash class=intentional
crash7 crash7-1.15.crash class=intentional
crash7 crash7-1.16.crash class=intentional
crash7 crash7-1.17.crash class=intentional
crash7 crash7-1.18.crash class=intentional
crash7 crash7-1.19.crash class=intentional
crash7 crash7-1.20.crash class=intentional
crash7 crash7-1.21.crash class=intentional
crash7 crash7-1.22.crash class=intentional
crash7 crash7-1.23.crash class=intentional
crash7 crash7-1.24.crash class=intentional
crash7 crash7-1.25.crash class=intentional
crash7 crash7-1.26.crash class=intentional
crash7 crash7-1.27.crash class=intentional
crash7 crash7-1.28.crash class=intentional
crash7 crash7-1.29.crash class=intentional
crash7 crash7-1.30.crash class=intentional
crash7 crash7-1.31.crash class=intentional
crash7 crash7-1.32.crash class=intentional
crash7 crash7-1.33.crash class=intentional
crash7 crash7-1.34.crash class=intentional
crash7 crash7-1.35.crash class=intentional
crash7 crash7-1.36.crash class=intentional
crash7 crash7-1.37.crash class=intentional
crash7 crash7-1.38.crash class=intentional
crash7 crash7-1.39.crash class=intentional
crash7 crash7-1.40.crash class=intentional
crash7 crash7-1.41.crash class=intentional
crash7 crash7-1.42.crash class=intentional
crash7 crash7-1.43.crash class=intentional
crash7 crash7-1.44.crash class=intentional
crash7 crash7-1.45.crash class=intentional
crash7 crash7-1.46.crash class=intentional
crash7 crash7-1.47.crash class=intentional
crash7 crash7-1.48.crash class=intentional
crash7 crash7-1.49.crash class=intentional
crash7 crash7-1.50.crash class=intentional
crash7 crash7-1.51.crash class=intentional
crash7 crash7-1.52.crash class=intentional
crash7 crash7-1.53.crash class=intentional
crash7 crash7-1.54.crash class=intentional
crash7 crash7-1.55.crash class=intentional
crash7 crash7-1.56.crash class=intentional
crash7 crash7-1.57.crash class=intentional
crash7 crash7-1.58.crash class=intentional
crash7 crash7-1.59.crash class=intentional
crash7 crash7-1.60.crash class=intentional
crash7 crash7-1.61.crash class=intentional
crash7 crash7-1.62.crash class=intentional
crash7 crash7-1.63.crash class=intentional
crash7 crash7-2.1.1 class=intentional
crash7 crash7-2.2.1 class=intentional
crash7 crash7-2.3.1 class=intentional
crash7 crash7-2.4.1 class=intentional
crash7 crash7-2.5.1 class=intentional
crash7 crash7-2.6.1 class=intentional
crash7 crash7-2.7.1 class=intentional
crash7 crash7-2.8.1 class=intentional
crash7 crash7-2.9.1 class=intentional
crash7 crash7-2.10.1 class=intentional
crash7 crash7-2.11.1 class=intentional
crash7 crash7-2.12.1 class=intentional
crash7 crash7-2.13.1 class=intentional
crash7 crash7-2.14.1 class=intentional
crash7 crash7-2.15.1 class=intentional
crash7 crash7-2.16.1 class=intentional
crash7 crash7-2.17.1 class=intentional
crash7 crash7-2.18.1 class=intentional
crash7 crash7-2.19.1 class=intentional
crash7 crash7-2.20.1 class=intentional
# Custom collation indexes rejected: doltlite's prolly-tree sort keys
# only support BINARY, NOCASE, and RTRIM. CREATE INDEX with a custom
# collation now errors rather than silently producing wrong results.
enc enc-11.1 class=unsupported issue=1838
collate3 collate3-1.6.1 class=intentional
collate3 collate3-1.6.3 class=intentional
collate3 collate3-1.6.4 class=intentional
collate3 collate3-1.7.1 class=intentional
collate3 collate3-1.7.3 class=intentional
collate3 collate3-1.7.4 class=intentional
collate3 collate3-3.0 class=intentional
collate3 collate3-3.1 class=intentional
collate3 collate3-3.2 class=intentional
collate3 collate3-3.4 class=intentional
collate3 collate3-3.5 class=intentional
collate3 collate3-3.8 class=intentional
collate3 collate3-3.10 class=intentional
collate3 collate3-3.11 class=intentional
collate3 collate3-3.12 class=intentional
collate3 collate3-3.13 class=intentional
collate3 collate3-3.14 class=intentional
collate3 collate3-4.6 class=intentional
# collate4 defines a custom TEXT collation. DoltLite rejects indexes that
# depend on custom collations because persisted prolly sort keys can only
# support built-in BINARY, NOCASE, and RTRIM comparisons. These failures are
# either direct rejection of those indexes or downstream plan/search-count
# checks that assume the rejected index exists.
collate4 collate4-1.1.0 class=intentional
collate4 collate4-1.1.4 class=intentional
collate4 collate4-1.1.5 class=intentional
collate4 collate4-1.1.21 class=intentional
collate4 collate4-1.1.24 class=intentional
collate4 collate4-1.1.27 class=intentional
collate4 collate4-1.1.30 class=intentional
collate4 collate4-1.2.0 class=intentional
collate4 collate4-1.2.1 class=intentional
collate4 collate4-1.2.2 class=intentional
collate4 collate4-1.2.4 class=intentional
collate4 collate4-1.2.6 class=intentional
collate4 collate4-1.2.14 class=intentional
collate4 collate4-1.2.17 class=intentional
collate4 collate4-1.2.19 class=intentional
collate4 collate4-1.2.21 class=intentional
collate4 collate4-1.2.24 class=intentional
collate4 collate4-1.2.25 class=intentional
collate4 collate4-2.1.4 class=intentional
collate4 collate4-2.1.5 class=intentional
collate4 collate4-2.1.7 class=intentional
collate4 collate4-2.1.8 class=intentional
collate4 collate4-2.1.9 class=intentional
collate4 collate4-2.2.1b class=intentional
collate4 collate4-2.2.2 class=intentional
collate4 collate4-4.3 class=intentional
collate4 collate4-4.4 class=intentional
collate4 collate4-4.5 class=intentional
select9 select9-2.1.1 class=intentional # CREATE INDEX with COLLATE REVERSE
select9 select9-2.X class=intentional
select9 select9-3.1 class=intentional # depends on index dropped in select9-2.X
select9 select9-4.1 class=intentional
# Column-level "<col> PRIMARY KEY/UNIQUE COLLATE <custom>" used to bypass the
# custom-collation index rejection because sqlite3AddCollateType retrofitted
# the collation onto the already-created autoindex. The rejection now
# fires there too, so CREATE TABLEs that upstream expects to succeed error
# with "doltlite does not support indexes with custom collation", and their
# downstream assertions fail on the missing table.
collate1 collate1-6.5 class=intentional # CREATE TABLE p1(a PRIMARY KEY COLLATE '"""') rejected
collate1 collate1-6.6 class=intentional # depends on p1/c1 from 6.5
collate1 collate1-6.8 class=intentional # depends on p1/c1 from 6.5
without_rowid3 without_rowid3-14.2.2.1 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
without_rowid3 without_rowid3-14.2.2.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
without_rowid7 without_rowid7-3.0 class=intentional # PRIMARY KEY COLLATE mysort rejected
without_rowid7 without_rowid7-3.1.1 class=intentional # depends on t1 from 3.0
without_rowid7 without_rowid7-3.1.2 class=intentional
without_rowid7 without_rowid7-3.2.1 class=intentional
without_rowid7 without_rowid7-3.2.2 class=intentional
without_rowid7 without_rowid7-3.3.1 class=intentional
without_rowid7 without_rowid7-3.3.2 class=intentional
without_rowid7 without_rowid7-3.4.1 class=intentional
without_rowid7 without_rowid7-3.4.2 class=intentional
without_rowid7 without_rowid7-3.5.1 class=intentional
without_rowid7 without_rowid7-3.5.2 class=intentional
without_rowid7 without_rowid7-3.6 class=intentional
# ---------------------------------------------------------------------------
# Real-doltlite divergences surfaced when the amalgamation became genuine
# doltlite (PR #1116). Until then testfixture was built from the stock
# amalgamation, so these were never exercised in CI. They are doltlite's
# documented incompatibilities: raw on-disk-format pokes (hexio_write/page
# layout — doltlite uses the prolly format, not sqlite pages), and rowid/PK
# identity semantics. Captured from CI run 26832495839. Tracked for granular
# review in https://github.com/dolthub/doltlite/issues/1119
# ---------------------------------------------------------------------------
attach attach-10.2 class=intentional
attach attach-8.3 class=intentional
attach attach-8.4 class=intentional
attach attach-2.10 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
attach attach-2.15 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
attach attach-2.16 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
capi2 capi2-6.5 class=intentional # 2nd-connection write expects "database is locked"; doltlite has no pager write-lock
# lock4: only 1.1 remains ungated (the cross-process journal-poll block is
# ifcapable-gated); it asserts raw page-file sizes.
lock4 lock4-1.1 class=intentional # raw file-size metric: chunk files are not 2048-byte page files
# misc7 (14.x plan-shape block ifcapable-gated; 6.1 exhausts fds quickly on
# CI's default nofile limit -- high-fd machines need `ulimit -n 256` locally).
misc7 misc7-5 class=intentional issue=1840 # journal path is a directory (mydir-journal/): stock fails CREATE; doltlite has no -journal sidecar
misc7 misc7-7.0 class=intentional issue=1840 # shared-cache read expects "database is locked"; MVCC snapshot read proceeds
misc7 misc7-10 class=intentional issue=1840 # echo vtab over a PK-clustered backing table; doltlite-correct behavior in doltlite_recover_misc7 1.x
misc7 misc7-11 class=intentional issue=1840 # same echo-on-clustered class
misc7 misc7-12.67.3 class=intentional issue=1840 # ioerr faultsim recovery check inside the echo-on-clustered class
misc7 misc7-13 class=intentional issue=1840 # same echo-on-clustered class (huge xBestIndex cost)
misc7 misc7-15.2 class=intentional issue=1840 # DELETE ... WHERE rowid on a PK-clustered table: no rowid column
misc7 misc7-22.3 class=intentional issue=1840 # read-only journal dir: stock cannot journal so the write fails; sidecar-free commit succeeds
misc7 misc7-22.4 class=intentional issue=1840 # same: SQLITE_OK, not SQLITE_READONLY_ROLLBACK
# CHECK-constraint error text echoes the schema expression. doltlite regenerates
# CREATE TABLE/INDEX SQL from its structural catalog on schema reload, collapsing
# the original whitespace, so the multi-line CHECK error diverges from stock's
# verbatim source. check-4.6 (same error string) passes because it runs before the
# reload that check-4.8's integrity_check/ignore_check_constraints forces. Rows and
# enforcement are correct; this is schema-text fidelity only. Tracked: #1200.
collate4 collate4-2.1.2 class=intentional # sqlite_search_count plan metric; rows match
enc enc-12.1 class=unsupported issue=1838 # doltlite-format ignores non-UTF-8 database encodings
enc enc-12.3 class=unsupported issue=1838 # doltlite-format ignores non-UTF-8 database encodings
enc enc-12.8 class=unsupported issue=1838 # doltlite-format ignores non-UTF-8 database encodings
intpkey intpkey-3.2 class=intentional # sqlite_search_count metric; row (5|hello|world) matches stock
intpkey intpkey-3.6 class=intentional # sqlite_search_count metric; row (5|hello|world) matches stock
# minmax/minmax2/minmax3: all assert sqlite_search_count (the internal btree
# seek counter) or, in minmax3, also poke the file format via hexio_write. The
# min()/max() query results match stock exactly; only the seek-count metric (and
# raw page bytes) differ — doltlite's prolly engine drives different VDBE probes.
minmax minmax-1.6 class=intentional
minmax2 minmax2-1.6 class=intentional
minmax3 minmax3-1.0 class=intentional
minmax3 minmax3-1.1.1 class=intentional
minmax3 minmax3-1.1.2 class=intentional
minmax3 minmax3-1.1.3 class=intentional
minmax3 minmax3-1.1.4 class=intentional
minmax3 minmax3-1.1.5 class=intentional
minmax3 minmax3-1.1.6 class=intentional
minmax3 minmax3-1.2.1 class=intentional
minmax3 minmax3-1.2.2 class=intentional
minmax3 minmax3-1.2.3 class=intentional
minmax3 minmax3-1.2.4 class=intentional
minmax3 minmax3-1.3.1 class=intentional
minmax3 minmax3-1.3.2 class=intentional
minmax3 minmax3-1.3.3 class=intentional
minmax3 minmax3-1.4.1 class=intentional
minmax3 minmax3-1.4.2 class=intentional
minmax3 minmax3-1.4.3 class=intentional
minmax3 minmax3-1.4.4 class=intentional
minmax3 minmax3-2.1 class=intentional
minmax3 minmax3-2.2 class=intentional
minmax3 minmax3-2.3 class=intentional
minmax3 minmax3-2.4 class=intentional
minmax3 minmax3-2.5 class=intentional
minmax3 minmax3-2.6 class=intentional
minmax3 minmax3-2.7 class=intentional
minmax3 minmax3-2.8 class=intentional
minmax3 minmax3-3.1 class=intentional
minmax3 minmax3-3.2 class=intentional
minmax3 minmax3-3.3 class=intentional
minmax3 minmax3-3.4 class=intentional
minmax3 minmax3-3.5 class=intentional
minmax3 minmax3-3.6 class=intentional
minmax3 minmax3-3.7 class=intentional
minmax3 minmax3-3.8 class=intentional
minmax3 minmax3-4.1 class=intentional
minmax3 minmax3-4.10 class=intentional
minmax3 minmax3-4.11 class=intentional
minmax3 minmax3-4.12 class=intentional
minmax3 minmax3-4.13 class=intentional
minmax3 minmax3-4.14 class=intentional
minmax3 minmax3-4.15 class=intentional
minmax3 minmax3-4.2 class=intentional
minmax3 minmax3-4.3 class=intentional
minmax3 minmax3-4.4 class=intentional
minmax3 minmax3-4.5 class=intentional
minmax3 minmax3-4.6 class=intentional
quote quote-2.5 class=intentional # regenerated schema-text whitespace only ("CHECK (" -> "CHECK(", trailing space); DQS handling matches stock
rowid rowid-4.5 class=intentional # sqlite_search_count metric; joined row result (4) matches stock
# Multi-client tests that assert stock rollback-journal lock failures.
# DoltLite lets the write/release complete, so the following rollback/transaction
# labels see different savepoint state.
select2 select2-3.3 class=intentional # sqlite_search_count metric; SELECT f1 WHERE f2==2000 returns 1000 on both
# trigger1-6.*: assert the unordered scan order of sqlite_master rows. After
# DROP TABLE t1 leaves a rowid gap, doltlite compacts schema rowids (t2,v1) while
# stock keeps original rowids (v1,t2), so the rows come back in a different order.
# Row contents and all trigger side-effects (RAISE(ABORT) blocks the delete, data
# intact) are identical to stock — rowid-order artifact only.
where where-1.1.1 class=intentional issue=1840 # sqlite_search_count metric; SELECT x,y,w WHERE w=10 returns 3|121|10 on both
# --- Large/Additional/Crash-recovery divergences (full local capture via the
# object testfixture; PR #1116 / issue #1119). Same classes: raw stock on-disk
# format (boundary*/hexio), rowid/PK identity, and unsupported PRAGMA/VACUUM. ---
# crash3 (re-triaged once canonical store names let crashsql actually
# crash-simulate the chunk store): the remaining entries are journal-sidecar
# divergences — crashsql -file test.db-journal never fires because doltlite
# writes no rollback journal, so the child completes instead of crashing and
# the test sees the committed state where stock expects a journal rollback
# (crash3-1.odd.3 post-commit signature). The test.db crash simulations
# themselves (crash3 even, crash4, crash6) pass clean. crash2 and savepoint4
# are quarantined whole (known_testfixture_crashes.txt, issue #2072): crash2
# adds the same journal-sidecar divergence across its 2.* block, and both
# suites carry an assertion that moves with the WAL layout because a crash
# torn during a commit's own sync may legitimately recover the committed
# state. #2072 tracks narrowing that to per-assertion gates.
crash3 crash3-1.41.3 class=intentional
crash3 crash3-1.43.3 class=intentional
crash3 crash3-1.45.3 class=intentional
crash3 crash3-1.47.3 class=intentional
crash3 crash3-1.49.3 class=intentional
e_expr e_expr-27.4.4 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-27.4.5 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-27.4.6 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-27.4.7 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-27.4.8 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-27.4.9 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-28.1.3 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-28.1.4 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-29.1.5 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-29.1.6 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-29.1.7 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-29.1.8 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-30.1.5 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-30.1.6 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-30.1.7 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-30.1.8 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-33.1.1 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-33.1.3 class=intentional # doltlite-format ignores non-UTF-8 database encodings
e_expr e_expr-33.1.4 class=intentional # doltlite-format ignores non-UTF-8 database encodings
enc4 enc4-2.1 class=unsupported issue=1838 # doltlite-format ignores non-UTF-8 database encodings
enc4 enc4-3.1 class=unsupported issue=1838 # doltlite-format ignores non-UTF-8 database encodings
# pragma2-*: assert pager-internal metrics — freelist_count, cache_spill,
# cache_size, lock_status. Prolly storage has no SQLite freelist pages or pager
# locks, so these read 0/empty/different. PRAGMA cache_size=N still echoes N; the
# underlying DROP/UPDATE row outcomes match stock.
pragma2 pragma2-1.3 class=intentional
pragma2 pragma2-1.4 class=intentional
pragma2 pragma2-2.4 class=intentional
pragma2 pragma2-2.5 class=intentional
pragma2 pragma2-3.1 class=intentional
pragma2 pragma2-3.2 class=intentional
pragma2 pragma2-3.3 class=intentional
pragma2 pragma2-4.1 class=intentional
pragma2 pragma2-4.4 class=intentional
pragma2 pragma2-4.5.1 class=intentional
pragma2 pragma2-4.5.2 class=intentional
pragma2 pragma2-4.5.3 class=intentional
pragma2 pragma2-4.5.4 class=intentional
pragma2 pragma2-4.6 class=intentional
pragma2 pragma2-4.8 class=intentional
pragma2 pragma2-5.1 class=intentional
pragma2 pragma2-5.3 class=intentional
shared2 shared2-3.2 class=unsupported issue=1837
# shared3-*: shared-cache cache_size cross-connection visibility (2.4), pager
# exclusive-lock "database is locked" on cache spill (2.8), and auto_vacuum=2 +
# incremental_vacuum which doltlite rejects (3.1/3.3). Row outcomes (DELETE counts,
# master visibility) match stock; divergences are pager-lock / shared-cache /
# auto_vacuum artifacts.
# tkt-2d1a5c67d-3.6: WAL-checkpoint/recovery test driven by ~99 open incrblob
# handles + raw test.db-wal file copy; computed value ('xyz') matches stock.
tkt-2d1a5c67d tkt-2d1a5c67d-3.6 class=intentional
# tkt-f3e5abed55-*: multi-database (ATTACH) commit / master-journal locking ticket.
# Every assertion needs two on-disk connections + a testvfs snapshot: 1.4/2.3 expect
# "database is locked" (doltlite has no pager write-lock), 1.5/2.4/2.5 ride on that
# locked state. The single-connection row data (1|2 3|4 1|2 3|4) matches stock.
altercol altercol-18.0 class=engine-gap issue=944
attach2 attach2-4.13 class=engine-gap issue=944
attach2 attach2-5.2 class=engine-gap issue=944
attach2 attach2-5.4 class=engine-gap issue=944
attach2 attach2-6.1 class=engine-gap issue=944
attach4 attach4-1.3 class=engine-gap issue=944
attach4 attach4-1.4 class=engine-gap issue=944
attach4 attach4-1.5 class=engine-gap issue=944
attach4 attach4-1.6 class=engine-gap issue=944
attach4 attach4-1.7 class=engine-gap issue=944
attach4 attach4-1.8 class=engine-gap issue=944
cacheflush cacheflush-2.1.5 class=engine-gap issue=944
cacheflush cacheflush-2.2.1 class=engine-gap issue=944
cacheflush cacheflush-2.2.2 class=engine-gap issue=944
cacheflush cacheflush-2.2.4 class=engine-gap issue=944
cacheflush cacheflush-2.2.7 class=engine-gap issue=944
e_delete e_delete-2.3.2 class=engine-gap issue=944
e_delete e_delete-2.3.3 class=engine-gap issue=944
jrnlmode jrnlmode-2.3 class=engine-gap issue=944
jrnlmode jrnlmode-2.5 class=engine-gap issue=944
jrnlmode jrnlmode-3.2 class=engine-gap issue=944
jrnlmode jrnlmode-6.9 class=engine-gap issue=944
ioerr ioerr-5.11.3 class=engine-gap issue=944
savepoint savepoint-10.2.9 class=engine-gap issue=944
savepoint savepoint-10.2.10 class=engine-gap issue=944
savepoint savepoint-10.2.11 class=engine-gap issue=944
savepoint savepoint-10.2.12 class=engine-gap issue=944
savepoint savepoint-10.2.13 class=engine-gap issue=944
sync sync-1.4 class=engine-gap issue=944
syscall syscall-4.2.wal.1 class=engine-gap issue=944
syscall syscall-4.2.wal.2 class=engine-gap issue=944
syscall syscall-4.2.wal.3 class=engine-gap issue=944
syscall syscall-4.2.wal.4 class=engine-gap issue=944
syscall syscall-4.2.wal.5 class=engine-gap issue=944
syscall syscall-4.2.wal.6 class=engine-gap issue=944
syscall syscall-4.2.wal.7 class=engine-gap issue=944
syscall syscall-4.2.wal.8 class=engine-gap issue=944
syscall syscall-4.2.wal.9 class=engine-gap issue=944
syscall syscall-4.2.wal.10 class=engine-gap issue=944
syscall syscall-4.2.wal.11 class=engine-gap issue=944
syscall syscall-4.2.wal.12 class=engine-gap issue=944
syscall syscall-4.2.wal.13 class=engine-gap issue=944
syscall syscall-4.2.wal.14 class=engine-gap issue=944
syscall syscall-4.2.wal.15 class=engine-gap issue=944
syscall syscall-4.2.wal.16 class=engine-gap issue=944
syscall syscall-4.2.wal.17 class=engine-gap issue=944
syscall syscall-4.2.wal.18 class=engine-gap issue=944
syscall syscall-4.2.wal.19 class=engine-gap issue=944
syscall syscall-4.2.delete.1 class=engine-gap issue=944
syscall syscall-4.2.delete.2 class=engine-gap issue=944
syscall syscall-4.2.delete.3 class=engine-gap issue=944
syscall syscall-4.2.delete.4 class=engine-gap issue=944
syscall syscall-4.2.delete.5 class=engine-gap issue=944
syscall syscall-4.2.delete.6 class=engine-gap issue=944
syscall syscall-4.2.delete.7 class=engine-gap issue=944
syscall syscall-4.2.delete.8 class=engine-gap issue=944
syscall syscall-4.2.delete.9 class=engine-gap issue=944
syscall syscall-4.2.delete.10 class=engine-gap issue=944
syscall syscall-4.2.delete.11 class=engine-gap issue=944
syscall syscall-4.2.delete.12 class=engine-gap issue=944
syscall syscall-4.2.delete.13 class=engine-gap issue=944
syscall syscall-4.2.delete.14 class=engine-gap issue=944
syscall syscall-4.2.delete.15 class=engine-gap issue=944
syscall syscall-4.2.delete.16 class=engine-gap issue=944
syscall syscall-4.2.delete.17 class=engine-gap issue=944
syscall syscall-4.2.delete.18 class=engine-gap issue=944
syscall syscall-4.2.delete.19 class=engine-gap issue=944
temptrigger temptrigger-7.1 class=engine-gap issue=944
temptrigger temptrigger-7.3.2 class=engine-gap issue=944
temptrigger temptrigger-8.1.2 class=engine-gap issue=944
temptrigger temptrigger-8.2.2 class=engine-gap issue=944
temptrigger temptrigger-8.3.2 class=engine-gap issue=944
trigger1 trigger1-10.3 class=engine-gap issue=944
trigger1 trigger1-10.4 class=engine-gap issue=944
trigger1 trigger1-10.6 class=engine-gap issue=944
trigger1 trigger1-10.7 class=engine-gap issue=944
trigger1 trigger1-10.8 class=engine-gap issue=944
trigger1 trigger1-10.10 class=engine-gap issue=944
trigger1 trigger1-10.11 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-2.2 class=engine-gap issue=944
vtab7 vtab7-3.1 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-1.4 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-1.5 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-2.3 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-2.4 class=engine-gap issue=944
tkt-f3e5abed55 tkt-f3e5abed55-2.5 class=engine-gap issue=944
# capi3 — C-API behaviors that diverge from stock sqlite at the error-code,
# open-timing, locking, and catalog level (not row data). Recovered into the
# gated suite after the capi3-7.x raw file-format block was gated out and the
# prollyBtreeRollback use-after-free was fixed.
capi3 capi3-8.3 class=intentional issue=1852 # writable_schema sqlite_master corruption undetected: prolly catalog isn't the raw sqlite_master row store
capi3 capi3-11.3.4 class=intentional issue=1846 # PRAGMA lock_status reports doltlite's locking model ("main unlocked" vs "main shared")
# capi3c is the sqlite3_prepare_v2 mirror of capi3; its raw file-format block
# (capi3c-7.x) is gated with ifcapable !doltlite like capi3's, which lets the
# remaining 294 tests run. Same divergence classes as capi3 plus the MVCC
# locking model.
capi3c capi3c-8.3 class=intentional issue=1852 # all-NULL sqlite_master row tolerated at schema load; stock refuses ("malformed database schema")
capi3c capi3-11.3.4 class=intentional issue=1846 # upstream misnamed test inside capi3c.test; PRAGMA lock_status reports doltlite's locking model
capi3c capi3c-18.3 class=intentional # BEGIN EXCLUSIVE on a 2nd connection does not block an MVCC snapshot reader (SQLITE_ROW vs SQLITE_BUSY)
capi3c capi3c-18.4 class=intentional # same: finalize returns SQLITE_OK, not the sticky BUSY
# capi3-11.4/11.5 (step/finalize after COMMIT-during-active-read) now pass: the
# scan survives the commit flush and re-seeks. capi3-11.10/11.11 (step after
# ROLLBACK-during-active-read) pass since the read cursor survives a writeOnly
# ROLLBACK.
# fordelete — doltlite doesn't materialize named sqlite_autoindex_* rows for
# WITHOUT-ROWID/implicit unique indexes, so PRAGMA index_list reports just the
# table; the FOR-DELETE behavior under test is otherwise correct. (Recovered
# into the gate once the node-buffer over-read crash was fixed.)
fordelete fordelete-1.1 class=intentional # sqlite_autoindex naming: "t1" vs "sqlite_autoindex_t1_1 t1"
fordelete fordelete-1.2 class=intentional # sqlite_autoindex naming
fordelete fordelete-1.3 class=intentional # sqlite_autoindex naming
fordelete fordelete-1.4 class=intentional # sqlite_autoindex naming
# fkey_malloc — DELETE ... WHERE rowid uses the rowid column, which doltlite's
# WITHOUT-ROWID tables don't expose, so these assertions diverge ("no such
# column: rowid" / different affected-row count). Recovered into the gate after
# the OOM crashes (#1212/#1216) were fixed; fault-iteration numbers are
# deterministic on the CI build.
# cffault — sqlite3_db_cacheflush fault tests scan updated rows without an
# ORDER BY. SQLite observes rowid/insertion order; DoltLite observes user-PK
# order from prolly storage, so the injected-fault iteration sees a different
# row order/visible row set. Recovered into the gate once #1223 stopped OOM
# payload reconstruction from returning a NULL payload pointer.
cffault cffault-2.1-cantopen-persistent.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-cantopen-transient.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-full.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-ioerr-persistent.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-ioerr-transient.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-oom-persistent.31 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-oom-transient.31 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-shmerr-persistent.1 class=intentional # cacheflush fault during unordered scan
cffault cffault-2.1-shmerr-transient.1 class=intentional # cacheflush fault during unordered scan
# vacuum5 — VACUUM file-size / page-count metrics; doltlite has no SQLite page
# format so the byte/page counts differ (the data is correct). Recovered into
# the gate once the cross-backend TransferRow SEGV was fixed.
vacuum5 vacuum5-1.3.2 class=intentional # VACUUM page-count/size metric
vacuum5 vacuum5-1.3.3 class=intentional # VACUUM size metric
vacuum5 vacuum5-3.2 class=intentional # VACUUM size metric
# autoinc — sqlite_master enumeration order differs. AUTOINCREMENT itself
# works, including writable_schema sqlite_sequence corruption tests.
autoinc autoinc-1.6 class=intentional # sqlite_master enumeration order (t1 vs sqlite_sequence)
autoinc autoinc-1.2 class=intentional issue=1852 # canonical adoption: sqlite_master row order after schema commit
# shared9 — shared-cache locking model differs (doltlite doesn't surface the
# "database is locked" shared-cache contention these assertions expect). Same
# intentional locking-model category as the other shared* entries. Recovered
# into the gate once the mutmap-source TransferRow SEGV was fixed.
shared9 shared9-2.1 class=unsupported issue=1837 # shared-cache locking-model divergence
shared9 shared9-3.4 class=unsupported issue=1837 # "database is locked" not surfaced (shared-cache model)
shared9 shared9-3.5 class=unsupported issue=1837 # shared-cache locking-model divergence
shared9 shared9-3.6 class=unsupported issue=1837 # shared-cache locking-model divergence
# interrupt2 — checkpoint and cursor-step interrupts are honored after #1228.