File: test_infinite_loop_escape.test

package info (click to toggle)
duckdb 1.5.1-3
  • links: PTS, VCS
  • area: main
  • in suites:
  • size: 299,196 kB
  • sloc: cpp: 865,414; ansic: 57,292; python: 18,871; sql: 12,663; lisp: 11,751; yacc: 7,412; lex: 1,682; sh: 747; makefile: 564
file content (18 lines) | stat: -rw-r--r-- 620 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# name: test/sql/copy/csv/test_infinite_loop_escape.test
# description: Test that CSV writer does not loop infinitely when ESCAPE is empty
# group: [csv]

statement ok
PRAGMA enable_verification

# Create a table with a value that needs escaping (a quote)
statement ok
CREATE TABLE trigger_loop (a VARCHAR);

statement ok
INSERT INTO trigger_loop VALUES ('"');

# This command used to trigger an infinite loop because it found the quote
# but added an empty escape character, finding the same quote again forever.
statement ok
COPY trigger_loop TO '__TEST_DIR__/infinite_loop_fix.csv' (FORMAT CSV, QUOTE '"', ESCAPE '');