Update of /cvsroot/monetdb/sql/src/server
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv12591

Modified Files:
        sql_parser.mx sql_updates.mx 
Log Message:
The number of records should be type lng 
to allow the load of billions of records in a single copy command.



U sql_parser.mx
Index: sql_parser.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/sql_parser.mx,v
retrieving revision 1.291
retrieving revision 1.292
diff -u -d -r1.291 -r1.292
--- sql_parser.mx       9 Sep 2008 13:28:49 -0000       1.291
+++ sql_parser.mx       16 Sep 2008 14:55:41 -0000      1.292
@@ -583,6 +583,8 @@
 
 %type <l_val>
        opt_start
+       lngval
+       poslng
        opt_increment
        opt_min
        opt_max
@@ -2462,8 +2464,8 @@
 
 opt_nr:
     /* empty */                        { $$ = NULL; }
- |  posint RECORDS             { $$ = append_int(append_int(L(), $1), 0); }
- |  posint OFFSET posint RECORDS       { $$ = append_int(append_int(L(), $1), 
$3); }
+ |  poslng RECORDS             { $$ = append_lng(append_lng(L(), $1), 0); }
+ |  poslng OFFSET poslng RECORDS       { $$ = append_lng(append_lng(L(), $1), 
$3); }
  ;
 
 opt_null_string:
@@ -4118,6 +4120,17 @@
                }
        ;
 
+
+poslng:
+       lngval  { $$ = $1;
+                 if ($$ < 0) {
+                       $$ = -1;
+                       yyerror("Positive value expected");
+                       YYABORT;
+                 }
+               }
+       ;
+
 posint:
        intval  { $$ = $1;
                  if ($$ < 0) {
@@ -4394,6 +4407,10 @@
                        { $$ = append_string($1, $3); }
  ;
 
+lngval:
+       sqlINT  { $$ = strtoll($1,NULL,10); }
+;
+
 intval:
        sqlINT  { $$ = strtol($1,NULL,10); }
  |     IDENT   { mvc *m = (mvc*)parm;

U sql_updates.mx
Index: sql_updates.mx
===================================================================
RCS file: /cvsroot/monetdb/sql/src/server/sql_updates.mx,v
retrieving revision 1.145
retrieving revision 1.146
diff -u -d -r1.145 -r1.146
--- sql_updates.mx      7 Sep 2008 14:28:00 -0000       1.145
+++ sql_updates.mx      16 Sep 2008 14:55:42 -0000      1.146
@@ -1411,11 +1411,11 @@
        char *ssep = (seps->h->next->next)?seps->h->next->next->data.sval:"\"";
        char *ns = (null_string)?null_string:"null";
        list *slist;
-       int nr = (nr_offset)?nr_offset->h->data.i_val:-1;
-       int offset = (nr_offset)?nr_offset->h->next->data.i_val:0;
+       lng nr = (nr_offset)?nr_offset->h->data.i_val:-1;
+       lng offset = (nr_offset)?nr_offset->h->next->data.i_val:0;
 
-       assert(!nr_offset || nr_offset->h->type == type_int);
-       assert(!nr_offset || nr_offset->h->next->type == type_int);
+       assert(!nr_offset || nr_offset->h->type == type_lng);
+       assert(!nr_offset || nr_offset->h->next->type == type_lng);
        if (sname && !(s=mvc_bind_schema(sql, sname))) {
                (void) sql_error(sql, 02, "COPY INTO: no such schema '%s'", 
sname);
                return NULL;


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Monetdb-sql-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-sql-checkins

Reply via email to