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

Reply via email to