Changeset: 7c996e9de955 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7c996e9de955 Modified Files: geom/sql/pg_regression/Tests/binary.sql.in monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.sql monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows sql/backends/monet5/sql.c sql/benchmarks/tpcds/Tests/load.sql.in sql/test/BugTracker-2009/Tests/COPY_INTO_char_NULL.SF-2560780.sql.in sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.sql sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.err.Windows sql/test/BugTracker-2009/Tests/copy_multiple_files.SF-2902320.stable.out.Windows sql/test/BugTracker-2009/Tests/parallel_bulk-load.SF-2771052.test.sql.in sql/test/BugTracker-2009/Tests/union_leak.SF-2540169.1.sql.in sql/test/BugTracker-2009/Tests/updating_non-loaded_columns.SF-2864313_KO-1.sql.in sql/test/BugTracker-2009/Tests/updating_non-loaded_columns.SF-2864313_KO-2.sql.in sql/test/BugTracker-2009/Tests/updating_non-loaded_columns.SF-2864313_KO-3.sql.in sql/test/BugTracker-2009/Tests/updating_non-loaded_columns.SF-2864313_OK-0.sql.in sql/test/BugTracker-2009/Tests/updating_non-loaded_columns.SF-2864313_OK-4.sql.in sql/test/BugTracker-2013/Tests/copy-into-compressed-bz2.Bug-3351.sql.in sql/test/BugTracker-2013/Tests/copy-into-compressed-gz.Bug-3351.sql.in sql/test/BugTracker-2013/Tests/copy-into-compressed.Bug-3351.sql.in sql/test/BugTracker-2013/Tests/segfault_in_aggregation.Bug-3225.sql.in sql/test/BugTracker-2015/Tests/copy_into.Bug-3813.sql.in sql/test/BugTracker-2016/Tests/malformed-copy-int.Bug-3987.sql.in sql/test/BugTracker-2016/Tests/wrong-nonil-property-with-copy-binary-into.Bug-3937.sql.in sql/test/BugTracker-2017/Tests/heapextend.Bug-6134.sql.in sql/test/Tests/bincopycollist.sql.in sql/test/Tests/copy-from-compressed.sql.in sql/test/Tests/copy-into-fwf.sql.in sql/test/Tests/copy-into-lz4.sql.in sql/test/Tests/copy_into.sql.in sql/test/merge-partitions/Tests/mergepart28.sql.in sql/test/pg_regress/Tests/int8.stable.err sql/test/pg_regress/Tests/oid.stable.err testing/Mfilter.py Branch: default Log Message:
More E'...' strings and fixes for recent changes. diffs (truncated from 788 to 300 lines): diff --git a/geom/sql/pg_regression/Tests/binary.sql.in b/geom/sql/pg_regression/Tests/binary.sql.in --- a/geom/sql/pg_regression/Tests/binary.sql.in +++ b/geom/sql/pg_regression/Tests/binary.sql.in @@ -30,9 +30,9 @@ SELECT st_force4d(g) FROM tm.geoms WHERE INSERT INTO tm.geoms(g) SELECT st_setsrid(g,4326) FROM tm.geoms ORDER BY id; -COPY select * from tm.geoms INTO '$TSTSRCDIR/tmpfile_1'; +COPY select * from tm.geoms INTO E'$QTSTSRCDIR/tmpfile_1'; CREATE TABLE tm.geoms_in AS SELECT * FROM tm.geoms WITH NO DATA; -COPY INTO tm.geoms_in FROM '$TSTSRCDIR/tmpfile_1'; +COPY INTO tm.geoms_in FROM E'$QTSTSRCDIR/tmpfile_1'; SELECT 'geometry', count(*) FROM tm.geoms_in i, tm.geoms o WHERE i.id = o.id AND ST_OrderingEquals(i.g, o.g); @@ -44,9 +44,9 @@ WHERE geometrytype(g) NOT LIKE '%CURVE%' AND geometrytype(g) NOT LIKE 'TIN%' WITH DATA; -COPY select * from tm.geogs INTO '$TSTSRCDIR/tmpfile_2'; +COPY select * from tm.geogs INTO E'$QTSTSRCDIR/tmpfile_2'; CREATE TABLE tm.geogs_in AS SELECT * FROM tm.geogs WITH NO DATA; -COPY INTO tm.geogs_in FROM '$TSTSRCDIR/tmpfile_2'; +COPY INTO tm.geogs_in FROM E'$QTSTSRCDIR/tmpfile_2'; SELECT 'geometry', count(*) FROM tm.geogs_in i, tm.geogs o WHERE i.id = o.id AND ST_OrderingEquals(i.g, o.g); diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.sql b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.sql --- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.sql +++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.sql @@ -5,8 +5,8 @@ select optimizer; select def from optimizers() where name = optimizer; explain copy into ttt from '/tmp/xyz'; -explain copy into ttt from '\tmp/xyz'; -explain copy into ttt from 'a:\tmp/xyz'; +explain copy into ttt from E'\\tmp/xyz'; +explain copy into ttt from E'a:\\tmp/xyz'; declare opt_pipe_name string; set opt_pipe_name = ( select optimizer ); @@ -19,6 +19,6 @@ select optimizer; select def from optimizers() where name = optimizer; explain copy into ttt from '/tmp/xyz'; -explain copy into ttt from '\tmp/xyz'; +explain copy into ttt from E'\\tmp/xyz'; explain copy into ttt from 'Z:/tmp/xyz'; drop table ttt; diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows --- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows +++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.err.Windows @@ -32,19 +32,19 @@ stderr of test 'opt_sql_append` in direc MAPI = monetdb@LAB03:37903 QUERY = explain copy into ttt from '/tmp/xyz'; -ERROR = !COPY INTO: filename must have absolute path: /tmp/xyz +ERROR = !COPY INTO: filename must have absolute path: "/tmp/xyz" CODE = 42000 -MAPI = monetdb@LAB03:37903 -QUERY = explain copy into ttt from '\tmp/xyz'; -ERROR = !COPY INTO: filename must have absolute path: \tmp/xyz +MAPI = monetdb@WIN2K12R2:34268 +QUERY = explain copy into ttt from E'\\tmp/xyz'; +ERROR = !COPY INTO: filename must have absolute path: "\\tmp/xyz" CODE = 42000 MAPI = monetdb@LAB03:37903 QUERY = explain copy into ttt from '/tmp/xyz'; -ERROR = !COPY INTO: filename must have absolute path: /tmp/xyz +ERROR = !COPY INTO: filename must have absolute path: "/tmp/xyz" CODE = 42000 -MAPI = monetdb@LAB03:37903 -QUERY = explain copy into ttt from '\tmp/xyz'; -ERROR = !COPY INTO: filename must have absolute path: \tmp/xyz +MAPI = monetdb@WIN2K12R2:34268 +QUERY = explain copy into ttt from E'\\tmp/xyz'; +ERROR = !COPY INTO: filename must have absolute path: "\\tmp/xyz" CODE = 42000 # 22:58:58 > diff --git a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows --- a/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows +++ b/monetdb5/extras/mal_optimizer_template/Tests/opt_sql_append.stable.out.Windows @@ -71,11 +71,11 @@ Ready. % .explain # table_name % mal # name % clob # type -% 184 # length +% 183 # length function user.s10_1():void; - X_1:void := querylog.define("explain copy into ttt from \\'a:\\\\tmp/xyz\\';":str, "sequential_pipe":str, 22:int); + X_1:void := querylog.define("explain copy into ttt from E\\'a:\\\\\\\\tmp/xyz\\';":str, "sequential_pipe":str, 22:int); X_4:int := sql.mvc(); - (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) := sql.copy_from(nil:ptr, "|":str, "\\n":str, nil:str, "null":str, "a:\\tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int); + (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) := sql.copy_from(nil:ptr, "|":str, "\n":str, nil:str, "null":str, "a:\\tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int); X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str, X_26:bat[:int]); X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str, X_27:bat[:int]); X_38:int := sql.append(X_35:int, "sys":str, "ttt":str, "c":str, X_28:bat[:int]); @@ -126,11 +126,11 @@ end user.s10_1; % .explain # table_name % mal # name % clob # type -% 183 # length +% 182 # length function user.s26_1():void; X_1:void := querylog.define("explain copy into ttt from \\'Z:/tmp/xyz\\';":str, "user_1":str, 22:int); X_4:int := sql.mvc(); - (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) := sql.copy_from(nil:ptr, "|":str, "\\n":str, nil:str, "null":str, "Z:/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int); + (X_26:bat[:int], X_27:bat[:int], X_28:bat[:int]) := sql.copy_from(nil:ptr, "|":str, "\n":str, nil:str, "null":str, "Z:/tmp/xyz":str, -1:lng, 0:lng, 0:int, 0:int, nil:str, 0:int); X_30:int := sql.append(X_4:int, "sys":str, "ttt":str, "a":str, X_26:bat[:int]); X_35:int := sql.append(X_30:int, "sys":str, "ttt":str, "b":str, X_27:bat[:int]); X_40:lng := aggr.count(X_28:bat[:int]); diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c --- a/sql/backends/monet5/sql.c +++ b/sql/backends/monet5/sql.c @@ -2259,11 +2259,10 @@ mvc_export_row_wrap( Client cntxt, MalBl int *res_id= getArgReference_int(stk, pci,0); str filename = * getArgReference_str(stk,pci,1); const char *format = *getArgReference_str(stk,pci,2); - unsigned char *tsep = NULL, *rsep = NULL, *ssep = NULL, *ns = NULL; - unsigned char *T = (unsigned char *) *getArgReference_str(stk, pci, 3); - unsigned char *R = (unsigned char *) *getArgReference_str(stk, pci, 4); - unsigned char *S = (unsigned char *) *getArgReference_str(stk, pci, 5); - unsigned char *N = (unsigned char *) *getArgReference_str(stk, pci, 6); + const char *tsep = *getArgReference_str(stk, pci, 3); + const char *rsep = *getArgReference_str(stk, pci, 4); + const char *ssep = *getArgReference_str(stk, pci, 5); + const char *ns = *getArgReference_str(stk, pci, 6); int onclient = *getArgReference_int(stk, pci, 7); bat tblId= *getArgReference_bat(stk, pci,8); @@ -2272,7 +2271,6 @@ mvc_export_row_wrap( Client cntxt, MalBl bat lenId= *getArgReference_bat(stk, pci,11); bat scaleId= *getArgReference_bat(stk, pci,12); - size_t l; int i, res; stream *s; str tblname, colname, tpename, msg= MAL_SUCCEED; @@ -2305,47 +2303,10 @@ mvc_export_row_wrap( Client cntxt, MalBl goto wrapup_result_set; } - l = strlen((char *) T); - tsep = GDKmalloc(l + 1); - if(tsep == 0){ - msg = createException(SQL, "sql.resultSet", SQLSTATE(HY001) MAL_MALLOC_FAIL); - goto wrapup_result_set; - } - GDKstrFromStr(tsep, T, l); - l = 0; - l = strlen((char *) R); - rsep = GDKmalloc(l + 1); - if(rsep == 0){ - GDKfree(tsep); - msg = createException(SQL, "sql.resultSet", SQLSTATE(HY001) MAL_MALLOC_FAIL); - goto wrapup_result_set; - } - GDKstrFromStr(rsep, R, l); - l = 0; - l = strlen((char *) S); - ssep = GDKmalloc(l + 1); - if(ssep == 0){ - GDKfree(tsep); - GDKfree(rsep); - msg = createException(SQL, "sql.resultSet", SQLSTATE(HY001) MAL_MALLOC_FAIL); - goto wrapup_result_set; - } - GDKstrFromStr(ssep, S, l); - l = 0; - l = strlen((char *) N); - ns = GDKmalloc(l + 1); - if(ns == 0){ - GDKfree(tsep); - GDKfree(rsep); - GDKfree(ssep); - msg = createException(SQL, "sql.resultSet", SQLSTATE(HY001) MAL_MALLOC_FAIL); - goto wrapup_result_set; - } - GDKstrFromStr(ns, N, l); - t->tsep = (char *) tsep; - t->rsep = (char *) rsep; - t->ssep = (char *) ssep; - t->ns = (char *) ns; + t->tsep = tsep; + t->rsep = rsep; + t->ssep = ssep; + t->ns = ns; tbl = BATdescriptor(tblId); atr = BATdescriptor(atrId); @@ -2931,20 +2892,11 @@ mvc_bin_import_table_wrap(Client cntxt, } if (tpe <= TYPE_str || tpe == TYPE_date || tpe == TYPE_daytime || tpe == TYPE_timestamp) { - size_t flen = strlen(fname); - char *fn = GDKmalloc(flen + 1); - - if (fn == NULL) { - msg = createException(SQL, "sql.attach", SQLSTATE(HY001) MAL_MALLOC_FAIL); - goto bailout; - } - GDKstrFromStr((unsigned char *) fn, (const unsigned char *) fname, flen); if (onclient) { mnstr_write(be->mvc->scanner.ws, PROMPT3, sizeof(PROMPT3)-1, 1); - mnstr_printf(be->mvc->scanner.ws, "rb %s\n", fn); + mnstr_printf(be->mvc->scanner.ws, "rb %s\n", fname); msg = MAL_SUCCEED; mnstr_flush(be->mvc->scanner.ws); - GDKfree(fn); while (!be->mvc->scanner.rs->eof) bstream_next(be->mvc->scanner.rs); stream *ss = be->mvc->scanner.rs->s; @@ -2970,8 +2922,7 @@ mvc_bin_import_table_wrap(Client cntxt, } /* this code should be extended to * deal with larger text strings. */ - FILE *f = fopen(fn, "r"); - GDKfree(fn); + FILE *f = fopen(fname, "r"); if (f == NULL) { BBPreclaim(c); msg = createException(SQL, "sql", SQLSTATE(42000) "Failed to re-open file %s", fname); @@ -3001,8 +2952,7 @@ mvc_bin_import_table_wrap(Client cntxt, fclose(f); GDKfree(buf); } else { - c = BATattach(tpe, fn, TRANSIENT); - GDKfree(fn); + c = BATattach(tpe, fname, TRANSIENT); } if (c == NULL) { msg = createException(SQL, "sql", SQLSTATE(42000) "Failed to attach file %s", fname); diff --git a/sql/benchmarks/tpcds/Tests/load.sql.in b/sql/benchmarks/tpcds/Tests/load.sql.in --- a/sql/benchmarks/tpcds/Tests/load.sql.in +++ b/sql/benchmarks/tpcds/Tests/load.sql.in @@ -1,27 +1,27 @@ START TRANSACTION; -COPY 1 RECORDS INTO dbgen_version FROM '$TSTDATAPATH/tpcds/1/dbgen_version.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 20 RECORDS INTO income_band FROM '$TSTDATAPATH/tpcds/1/income_band.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 5 RECORDS INTO warehouse FROM '$TSTDATAPATH/tpcds/1/warehouse.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 20 RECORDS INTO ship_mode FROM '$TSTDATAPATH/tpcds/1/ship_mode.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 35 RECORDS INTO reason FROM '$TSTDATAPATH/tpcds/1/reason.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 6 RECORDS INTO call_center FROM '$TSTDATAPATH/tpcds/1/call_center.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 12 RECORDS INTO store FROM '$TSTDATAPATH/tpcds/1/store.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 60 RECORDS INTO web_page FROM '$TSTDATAPATH/tpcds/1/web_page.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 30 RECORDS INTO web_site FROM '$TSTDATAPATH/tpcds/1/web_site.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 300 RECORDS INTO promotion FROM '$TSTDATAPATH/tpcds/1/promotion.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 7200 RECORDS INTO household_demographics FROM '$TSTDATAPATH/tpcds/1/household_demographics.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 11718 RECORDS INTO catalog_page FROM '$TSTDATAPATH/tpcds/1/catalog_page.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 18000 RECORDS INTO item FROM '$TSTDATAPATH/tpcds/1/item.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 86400 RECORDS INTO time_dim FROM '$TSTDATAPATH/tpcds/1/time_dim.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 50000 RECORDS INTO customer_address FROM '$TSTDATAPATH/tpcds/1/customer_address.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 71763 RECORDS INTO web_returns FROM '$TSTDATAPATH/tpcds/1/web_returns.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 73049 RECORDS INTO date_dim FROM '$TSTDATAPATH/tpcds/1/date_dim.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 100000 RECORDS INTO customer FROM '$TSTDATAPATH/tpcds/1/customer.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 144067 RECORDS INTO catalog_returns FROM '$TSTDATAPATH/tpcds/1/catalog_returns.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 287514 RECORDS INTO store_returns FROM '$TSTDATAPATH/tpcds/1/store_returns.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 1920800 RECORDS INTO customer_demographics FROM '$TSTDATAPATH/tpcds/1/customer_demographics.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 719384 RECORDS INTO web_sales FROM '$TSTDATAPATH/tpcds/1/web_sales.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 11745000 RECORDS INTO inventory FROM '$TSTDATAPATH/tpcds/1/inventory.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 1441548 RECORDS INTO catalog_sales FROM '$TSTDATAPATH/tpcds/1/catalog_sales.dat' USING DELIMITERS '|', '|\n' NULL AS ''; -COPY 2880404 RECORDS INTO store_sales FROM '$TSTDATAPATH/tpcds/1/store_sales.dat' USING DELIMITERS '|', '|\n' NULL AS ''; +COPY 1 RECORDS INTO dbgen_version FROM E'$QTSTDATAPATH/tpcds/1/dbgen_version.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 20 RECORDS INTO income_band FROM E'$QTSTDATAPATH/tpcds/1/income_band.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 5 RECORDS INTO warehouse FROM E'$QTSTDATAPATH/tpcds/1/warehouse.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 20 RECORDS INTO ship_mode FROM E'$QTSTDATAPATH/tpcds/1/ship_mode.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 35 RECORDS INTO reason FROM E'$QTSTDATAPATH/tpcds/1/reason.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 6 RECORDS INTO call_center FROM E'$QTSTDATAPATH/tpcds/1/call_center.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 12 RECORDS INTO store FROM E'$QTSTDATAPATH/tpcds/1/store.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 60 RECORDS INTO web_page FROM E'$QTSTDATAPATH/tpcds/1/web_page.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 30 RECORDS INTO web_site FROM E'$QTSTDATAPATH/tpcds/1/web_site.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 300 RECORDS INTO promotion FROM E'$QTSTDATAPATH/tpcds/1/promotion.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 7200 RECORDS INTO household_demographics FROM E'$QTSTDATAPATH/tpcds/1/household_demographics.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 11718 RECORDS INTO catalog_page FROM E'$QTSTDATAPATH/tpcds/1/catalog_page.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 18000 RECORDS INTO item FROM E'$QTSTDATAPATH/tpcds/1/item.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 86400 RECORDS INTO time_dim FROM E'$QTSTDATAPATH/tpcds/1/time_dim.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 50000 RECORDS INTO customer_address FROM E'$QTSTDATAPATH/tpcds/1/customer_address.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 71763 RECORDS INTO web_returns FROM E'$QTSTDATAPATH/tpcds/1/web_returns.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 73049 RECORDS INTO date_dim FROM E'$QTSTDATAPATH/tpcds/1/date_dim.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 100000 RECORDS INTO customer FROM E'$QTSTDATAPATH/tpcds/1/customer.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 144067 RECORDS INTO catalog_returns FROM E'$QTSTDATAPATH/tpcds/1/catalog_returns.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 287514 RECORDS INTO store_returns FROM E'$QTSTDATAPATH/tpcds/1/store_returns.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 1920800 RECORDS INTO customer_demographics FROM E'$QTSTDATAPATH/tpcds/1/customer_demographics.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 719384 RECORDS INTO web_sales FROM E'$QTSTDATAPATH/tpcds/1/web_sales.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 11745000 RECORDS INTO inventory FROM E'$QTSTDATAPATH/tpcds/1/inventory.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 1441548 RECORDS INTO catalog_sales FROM E'$QTSTDATAPATH/tpcds/1/catalog_sales.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; +COPY 2880404 RECORDS INTO store_sales FROM E'$QTSTDATAPATH/tpcds/1/store_sales.dat' USING DELIMITERS '|', E'|\n' NULL AS ''; COMMIT; diff --git a/sql/test/BugTracker-2009/Tests/COPY_INTO_char_NULL.SF-2560780.sql.in b/sql/test/BugTracker-2009/Tests/COPY_INTO_char_NULL.SF-2560780.sql.in --- a/sql/test/BugTracker-2009/Tests/COPY_INTO_char_NULL.SF-2560780.sql.in +++ b/sql/test/BugTracker-2009/Tests/COPY_INTO_char_NULL.SF-2560780.sql.in @@ -3,11 +3,11 @@ b VARCHAR(50), c VARCHAR(50) ); -COPY 2 OFFSET 2 RECORDS INTO "a" FROM '$QTSTSRCDIR/COPY_INTO_char_NULL.SF-2560780.csv' USING DELIMITERS ',', '\n', '"'; +COPY 2 OFFSET 2 RECORDS INTO "a" FROM E'$QTSTSRCDIR/COPY_INTO_char_NULL.SF-2560780.csv' USING DELIMITERS ',', E'\n', '"'; SELECT * FROM a; _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list