Stefan Manegold wrote:
> On Tue, Sep 16, 2008 at 02:55:45PM +0000, Romulo Goncalves wrote:
>> 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
> ^^^
> shouldn't that be aligned with the BATcount, i.e., type BUN (if possible)
> or at least type wrd?
In the parser I do not see any type wrd. I can change the sql_update.mx
code to support wrd type. I will also update the sql_statement.mx to
accept type wrd in stmt_import
My question is: Can I do this where the value type coming from the
parser is a lng?
>> + wrd nr = (nr_offset)?nr_offset->h->data.i_val:-1;
>> + wrd offset = (nr_offset)?nr_offset->h->next->data.i_val:0;
>> + assert(!nr_offset || nr_offset->h->type == type_lng);
>> + assert(!nr_offset || nr_offset->h->next->type == type_lng);
Romulo
>
> Stefan
>
>> 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
>>
>
-------------------------------------------------------------------------
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-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-developers