Skip to content

Commit acff2ca

Browse files
author
fuzzerofducks
committed
add fuzz reproductions for run 14414611535; csv_multi_param_fuzzer; duckdb ref: main;
1 parent 5096be9 commit acff2ca

26 files changed

+257
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
[
2+
{
3+
"file_name": "case_0.csv",
4+
"arguments": "auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0"
5+
},
6+
{
7+
"file_name": "case_1.csv",
8+
"arguments": "auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0"
9+
},
10+
{
11+
"file_name": "case_2.csv",
12+
"arguments": "auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0"
13+
},
14+
{
15+
"file_name": "case_3.csv",
16+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true"
17+
},
18+
{
19+
"file_name": "case_4.csv",
20+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=2459013921118911783, store_rejects=true"
21+
},
22+
{
23+
"file_name": "case_5.csv",
24+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true"
25+
},
26+
{
27+
"file_name": "case_6.csv",
28+
"arguments": "auto_detect=false, columns={'j': 'JSON'}, delim=''"
29+
},
30+
{
31+
"file_name": "case_7.csv",
32+
"arguments": "auto_detect=false, columns={'j': 'JSON'}, delim=''"
33+
},
34+
{
35+
"file_name": "case_8.csv",
36+
"arguments": "auto_detect=false, columns={'j': 'JSON'}, delim=''"
37+
},
38+
{
39+
"file_name": "case_9.csv",
40+
"arguments": "auto_detect=false, columns={'j': 'JSON'}, delim=''"
41+
},
42+
{
43+
"file_name": "case_10.csv",
44+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658651445503032615, store_rejects=true"
45+
},
46+
{
47+
"file_name": "case_11.csv",
48+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true"
49+
},
50+
{
51+
"file_name": "case_12.csv",
52+
"arguments": "auto_detect=false, buffer_size=1578, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true"
53+
},
54+
{
55+
"file_name": "case_13.csv",
56+
"arguments": "auto_detect=false, buffer_size=42, all_varchar=false, all_varchar=true, columns={'j': 'JSON'}, delim=''"
57+
},
58+
{
59+
"file_name": "case_14.csv",
60+
"arguments": "auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493960143872, store_rejects=true"
61+
}
62+
]
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
1,1
2+
1,1,1
3+
1,\n,1
4+
1,\n,1
5+
1,\n,1
6+
1,\n,1
7+
1,\n,1
8+
1,\n,1
9+
1,\n,1
10+
1,\n,1
11+
1,\n,1
12+
1,\n,1
13+
1,\n,1
14+
1,\n,1
15+
1,\n,1
16+
1,\n,1
17+
1,\n,1
18+
1,\n,1
19+
1,\n,1
20+
1,\n,1
21+
1,1,1
22+
1,1,1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
2+
1,\n,1
3+
1,\n,1
4+
1,\n,1
5+
1,\n,1
6+
1,\n,1
7+
1,\n,1
8+
1,\n,1
9+
1,\n,1
10+
1,\n,1
11+
1,\n,1
12+
1,\n,1
13+
1,\n,1
14+
1,\n,1
15+
1,\n,1
16+
1,\n,1
17+
1,\n,1
18+
1,\n,1
19+
1,1,1
20+
1,1,1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
1,\n,1
2+
1,\n,1
3+
1,\n,1
4+
1,\n,1
5+
1,\n,1
6+
1,1,1
7+
1,1,1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# name: test/fuzzer/afl/csv_multi_param_fuzzer-aadcb3d9adb561f25d85a447495ffdf6856d972e-hangs.test
2+
# description: fuzzer generated csv files - should not raise internal exception (by failed assertion).
3+
# group: [csv]
4+
5+
require json
6+
7+
statement ok
8+
PRAGMA enable_verification
9+
10+
query I
11+
select count(file) from glob('./data/csv/afl/14414611535_csv_fuzz_error_hangs/*');
12+
----
13+
7
14+
15+
statement maybe
16+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_0.csv', compression='gzip');
17+
----
18+
19+
statement maybe
20+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_1.csv', compression='gzip');
21+
----
22+
23+
statement maybe
24+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_2.csv', compression='gzip');
25+
----
26+
27+
statement maybe
28+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_3.csv', compression='gzip');
29+
----
30+
31+
statement maybe
32+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_4.csv', compression='gzip');
33+
----
34+
35+
statement maybe
36+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_5.csv', compression='gzip');
37+
----
38+
39+
statement maybe
40+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error_hangs/case_6.csv', compression='gzip');
41+
----
42+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# name: test/fuzzer/afl/csv_multi_param_fuzzer-aadcb3d9adb561f25d85a447495ffdf6856d972e.test
2+
# description: fuzzer generated csv files - should not raise internal exception (by failed assertion).
3+
# group: [csv]
4+
5+
require json
6+
7+
statement ok
8+
PRAGMA enable_verification
9+
10+
query I
11+
select count(file) from glob('./data/csv/afl/14414611535_csv_fuzz_error/*');
12+
----
13+
15
14+
15+
statement maybe
16+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_0.csv', auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0);
17+
----
18+
19+
statement maybe
20+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_1.csv', auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0);
21+
----
22+
23+
statement maybe
24+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_2.csv', auto_detect=false, buffer_size=8, columns={'a': 'integer','b': 'integer','c': 'integer'}, header=true, maximum_line_size=0);
25+
----
26+
27+
statement maybe
28+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_3.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true);
29+
----
30+
31+
statement maybe
32+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_4.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=2459013921118911783, store_rejects=true);
33+
----
34+
35+
statement maybe
36+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_5.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true);
37+
----
38+
39+
statement maybe
40+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_6.csv', auto_detect=false, columns={'j': 'JSON'}, delim='');
41+
----
42+
43+
statement maybe
44+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_7.csv', auto_detect=false, columns={'j': 'JSON'}, delim='');
45+
----
46+
47+
statement maybe
48+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_8.csv', auto_detect=false, columns={'j': 'JSON'}, delim='');
49+
----
50+
51+
statement maybe
52+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_9.csv', auto_detect=false, columns={'j': 'JSON'}, delim='');
53+
----
54+
55+
statement maybe
56+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_10.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658651445503032615, store_rejects=true);
57+
----
58+
59+
statement maybe
60+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_11.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true);
61+
----
62+
63+
statement maybe
64+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_12.csv', auto_detect=false, buffer_size=1578, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493994253607, store_rejects=true);
65+
----
66+
67+
statement maybe
68+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_13.csv', auto_detect=false, buffer_size=42, all_varchar=false, all_varchar=true, columns={'j': 'JSON'}, delim='');
69+
----
70+
71+
statement maybe
72+
FROM read_csv('data/csv/afl/14414611535_csv_fuzz_error/case_14.csv', auto_detect=false, buffer_size=42, columns={'json': 'JSON'}, delim=NULL, rejects_limit=658694493960143872, store_rejects=true);
73+
----
74+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
[
2+
{
3+
"file_name": "case_0.csv",
4+
"arguments": "compression='gzip'"
5+
},
6+
{
7+
"file_name": "case_1.csv",
8+
"arguments": "compression='gzip'"
9+
},
10+
{
11+
"file_name": "case_2.csv",
12+
"arguments": "compression='gzip'"
13+
},
14+
{
15+
"file_name": "case_3.csv",
16+
"arguments": "compression='gzip'"
17+
},
18+
{
19+
"file_name": "case_4.csv",
20+
"arguments": "compression='gzip'"
21+
},
22+
{
23+
"file_name": "case_5.csv",
24+
"arguments": "compression='gzip'"
25+
},
26+
{
27+
"file_name": "case_6.csv",
28+
"arguments": "compression='gzip'"
29+
}
30+
]

0 commit comments

Comments
 (0)