Changeset: 99ab6deb2bdd for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=99ab6deb2bdd Modified Files: NT/monetdb_config.h.in configure.ag gdk/gdk.h gdk/gdk_cbp.c gdk/gdk_colop.c gdk/gdk_heap.c gdk/gdk_private.h gdk/gdk_rangejoin.c gdk/gdk_storage.c gdk/gdk_system.c monetdb5/extras/compiler/mal_compiler.c monetdb5/extras/compiler/mal_compiler.h monetdb5/extras/crackers/crackers_joins.mx monetdb5/extras/crackers/crackers_sortmerge.mx monetdb5/extras/sphinx/sphinx.c monetdb5/mal/mal.c monetdb5/mal/mal_atom.c monetdb5/mal/mal_authorize.c monetdb5/mal/mal_box.c monetdb5/mal/mal_client.c monetdb5/mal/mal_debugger.c monetdb5/mal/mal_exception.c monetdb5/mal/mal_factory.c monetdb5/mal/mal_function.c monetdb5/mal/mal_import.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_interpreter.c monetdb5/mal/mal_module.c monetdb5/mal/mal_parser.c monetdb5/mal/mal_profiler.c monetdb5/mal/mal_recycle.c monetdb5/mal/mal_resolve.c monetdb5/mal/mal_scenario.c monetdb5/modules/atoms/blob.c monetdb5/modules/atoms/color.c monetdb5/modules/atoms/mtime.c monetdb5/modules/atoms/str.c monetdb5/modules/atoms/url.c monetdb5/modules/kernel/aggr_be_avg.mx monetdb5/modules/kernel/aggr_be_count.mx monetdb5/modules/kernel/aggr_be_minmax.mx monetdb5/modules/kernel/aggr_be_prod.mx monetdb5/modules/kernel/aggr_be_sum.mx monetdb5/modules/kernel/aggr_bge_avg.mx monetdb5/modules/kernel/aggr_bge_count.mx monetdb5/modules/kernel/aggr_bge_minmax.mx monetdb5/modules/kernel/aggr_bge_prod.mx monetdb5/modules/kernel/aggr_bge_sum.mx monetdb5/modules/kernel/alarm.c monetdb5/modules/kernel/algebra.c.mx monetdb5/modules/kernel/array.mx monetdb5/modules/kernel/calc.c.mx monetdb5/modules/kernel/colcast.c monetdb5/modules/kernel/column.c.mx monetdb5/modules/kernel/lock.c monetdb5/modules/kernel/microbenchmark.c monetdb5/modules/kernel/mmath.c.mx monetdb5/modules/kernel/sema.c monetdb5/modules/kernel/unix.c monetdb5/modules/mal/cbp.c monetdb5/modules/mal/clients.c monetdb5/modules/mal/groupby.c monetdb5/modules/mal/groupby.h monetdb5/modules/mal/mat.c monetdb5/modules/mal/mdb.c monetdb5/modules/mal/mkey.c monetdb5/modules/mal/pcrelib.c monetdb5/modules/mal/pqueue.mx monetdb5/modules/mal/recycle.c monetdb5/modules/mal/tablet.c monetdb5/modules/mal/tokenizer.c monetdb5/modules/mal/trader.c monetdb5/modules/mal/trader.h monetdb5/optimizer/Tests/All monetdb5/optimizer/Tests/dataflow.mal monetdb5/optimizer/Tests/dataflow4.mal monetdb5/optimizer/opt_dictionary.c monetdb5/optimizer/opt_emptySet.c monetdb5/optimizer/opt_inline.c monetdb5/optimizer/opt_joinpath.c monetdb5/optimizer/opt_mergetable.c monetdb5/optimizer/opt_octopus.c monetdb5/optimizer/opt_pipes.c monetdb5/optimizer/opt_pipes.h monetdb5/optimizer/opt_qep.c monetdb5/optimizer/opt_support.c monetdb5/scheduler/run_octopus.c monetdb5/scheduler/run_pipeline.mx sql/backends/monet5/Makefile.ag sql/backends/monet5/sql.mx sql/backends/monet5/sql_bpm.c sql/backends/monet5/sql_bpm.h sql/backends/monet5/sql_bpm.mal sql/backends/monet5/sql_gencode.c sql/backends/monet5/sql_optimizer.c sql/backends/monet5/sql_result.mx sql/backends/monet5/sql_scenario.c sql/backends/monet5/sql_user.c sql/backends/monet5/vaults/mseed.c sql/storage/bat/bat_storage.c sql/storage/bat/bat_table.c sql/storage/bat/res_table.c sql/storage/bpm/Makefile.ag sql/storage/bpm/bpm_distribution.c sql/storage/bpm/bpm_distribution.h sql/storage/bpm/bpm_logger.c sql/storage/bpm/bpm_logger.h sql/storage/bpm/bpm_storage.c sql/storage/bpm/bpm_storage.h sql/storage/bpm/bpm_table.c sql/storage/bpm/bpm_table.h sql/storage/m4/Makefile.ag sql/storage/m4/bpm.c sql/storage/m4/bpm.h Branch: headless Log Message:
Merge with default branch. diffs (truncated from 7970 to 300 lines): diff --git a/.hgtags b/.hgtags --- a/.hgtags +++ b/.hgtags @@ -446,3 +446,6 @@ b540445f1e7aa333708963a7afb46acd1914fdb3 Aug2011_root dbf80a87be87b463e6603221e0ed6e31d85d94c3 Apr2011_5 bb8536db427b60b0226bbdec8dbfddfa7a26f37f Apr2011_SP2_release +0fd8df3e7fc2f320fe7638af8e4883bf433ef61b Apr2011_7 +bb8536db427b60b0226bbdec8dbfddfa7a26f37f Apr2011_SP2_release +a155d5445790c798ddf7a3e1b54094c13e1b3eaa Apr2011_SP2_release diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -585,6 +585,9 @@ rm -fr $RPM_BUILD_ROOT %changelog +* Tue Jul 26 2011 Sjoerd Mullender <[email protected]> - 11.3.7-20110726 +- Rebuilt. + * Wed Jul 20 2011 Sjoerd Mullender <[email protected]> - 11.3.5-20110720 - Rebuilt. diff --git a/buildtools/Mx/Code.c b/buildtools/Mx/Code.c --- a/buildtools/Mx/Code.c +++ b/buildtools/Mx/Code.c @@ -46,7 +46,7 @@ if (isspace((int) (*s))) *s = 0; if (s == fname) { - Error("File name missing. %s", d->d_line); + Error("File name missing. %d", d->d_line); } } break; diff --git a/buildtools/Mx/Io.c b/buildtools/Mx/Io.c --- a/buildtools/Mx/Io.c +++ b/buildtools/Mx/Io.c @@ -270,40 +270,6 @@ } void -KillLines(FILE *fp, char *pattern, int killprev) -{ - long lastpos = 0, curpos = 0; - size_t patlen = strlen(pattern); - char line[8192]; - - fflush(fp); - fseek(fp, 0, SEEK_SET); - while (fgets(line, 8192, fp)) { - long newpos = ftell(fp); - - if (strlen(line) == 0) - continue; - if (strncmp(line, pattern, patlen) == 0) { - long killpos = curpos; - long killen = newpos - curpos; - - if (killprev && lastpos) { - killpos = lastpos; - killen += curpos - lastpos; - } - fseek(fp, killpos, SEEK_SET); - while (killen--) - fputc(' ', fp); - fflush(fp); - fseek(fp, newpos, SEEK_SET); - } - lastpos = curpos; - curpos = ftell(fp); - } - fseek(fp, 0, SEEK_END); -} - -void UpdateFiles(void) { File *f; diff --git a/buildtools/Mx/MxFcnDef.h b/buildtools/Mx/MxFcnDef.h --- a/buildtools/Mx/MxFcnDef.h +++ b/buildtools/Mx/MxFcnDef.h @@ -147,10 +147,14 @@ extern char *StrDup(const char *); extern char *Strndup(const char *, size_t); -extern void ofile_printf(char *, ...); -extern void Fatal(char *, char *, ...); -extern void Error(char *, ...); -extern void Message(char *, ...); +extern void ofile_printf(_In_z_ _Printf_format_string_ const char *, ...) + __attribute__((__format__(__printf__, 1, 2))); +extern void Fatal(const char *, _In_z_ _Printf_format_string_ const char *, ...) + __attribute__((__format__(__printf__, 2, 3))); +extern void Error(_In_z_ _Printf_format_string_ const char *, ...) + __attribute__((__format__(__printf__, 1, 2))); +extern void Message(_In_z_ _Printf_format_string_ const char *, ...) + __attribute__((__format__(__printf__, 1, 2))); /* Tok.c */ diff --git a/buildtools/Mx/Print.c b/buildtools/Mx/Print.c --- a/buildtools/Mx/Print.c +++ b/buildtools/Mx/Print.c @@ -253,7 +253,7 @@ extern char *defHideText; if (pr_hide == opt_hide && !pr_hide_text && defHideText != 0) - ofile_printf(defHideText); + ofile_printf("%s", defHideText); pr_hide--; pr_hide_text = 0; } diff --git a/buildtools/Mx/Sys.c b/buildtools/Mx/Sys.c --- a/buildtools/Mx/Sys.c +++ b/buildtools/Mx/Sys.c @@ -32,7 +32,7 @@ /* VARARGS */ void -ofile_printf(char *format, ...) +ofile_printf(const char *format, ...) { va_list ap; @@ -70,7 +70,7 @@ void -Fatal(char *fcn, char *format, ...) +Fatal(const char *fcn, const char *format, ...) { va_list ap; @@ -115,7 +115,7 @@ } /*VARGARGS*/ void -Error(char *format, ...) +Error(const char *format, ...) { va_list ap; @@ -132,7 +132,7 @@ /*VARGARGS1*/ void -Message(char *format, ...) +Message(const char *format, ...) { va_list ap; diff --git a/clients/mapilib/mapi.c b/clients/mapilib/mapi.c --- a/clients/mapilib/mapi.c +++ b/clients/mapilib/mapi.c @@ -1273,7 +1273,7 @@ return mid->auto_commit; } -long +static long usec() { #ifdef HAVE_GETTIMEOFDAY @@ -1292,7 +1292,7 @@ } -void +static void mapi_log_header(Mapi mid, char *mark) { static long firstcall = 0; @@ -1307,7 +1307,7 @@ mnstr_flush(mid->tracelog); } -void +static void mapi_log_record(Mapi mid, const char *msg) { mapi_log_header(mid, "W"); @@ -4257,9 +4257,9 @@ printf("mapi_query_part:" SZFMT ":%.*s\n", size, (int) size, query); } hdl->needmore = 0; - mnstr_write(mid->to, (char *) query, 1, size); + mnstr_write(mid->to, query, 1, size); if (mid->tracelog) { - mnstr_write(mid->tracelog, (char *) query, 1, size); + mnstr_write(mid->tracelog, query, 1, size); mnstr_flush(mid->tracelog); } check_stream(mid, mid->to, "write error on stream", "mapi_query_part", mid->error); diff --git a/clients/odbc/driver/ODBCGlobal.h b/clients/odbc/driver/ODBCGlobal.h --- a/clients/odbc/driver/ODBCGlobal.h +++ b/clients/odbc/driver/ODBCGlobal.h @@ -130,7 +130,8 @@ } \ } while (0) #else -extern void ODBCLOG(const char *fmt, ...); +extern void ODBCLOG(_In_z_ _Printf_format_string_ const char *fmt, ...) + __attribute__((__format__(__printf__, 1, 2))); #endif #endif diff --git a/clients/odbc/driver/ODBCUtil.c b/clients/odbc/driver/ODBCUtil.c --- a/clients/odbc/driver/ODBCUtil.c +++ b/clients/odbc/driver/ODBCUtil.c @@ -73,7 +73,7 @@ char *tmp = (char *) malloc((length + 1) * sizeof(char)); assert(tmp); - strncpy(tmp, (char *) inStr, length); + strncpy(tmp, (const char *) inStr, length); tmp[length] = '\0'; /* make it null terminated */ return tmp; } diff --git a/clients/odbc/driver/ODBCUtil.h b/clients/odbc/driver/ODBCUtil.h --- a/clients/odbc/driver/ODBCUtil.h +++ b/clients/odbc/driver/ODBCUtil.h @@ -99,7 +99,7 @@ } \ _l = (str) ? (lent) (strlen) : 0; \ if (buf) \ - strncpy((char *) (buf), (str) ? (char *) (str) : "", (len)); \ + strncpy((char *) (buf), (str) ? (const char *) (str) : "", (len)); \ if (lenp) \ *(lenp) = _l; \ if ((buf) == NULL || _l >= (len)) \ diff --git a/clients/perl/Mapi.pm b/clients/perl/Mapi.pm --- a/clients/perl/Mapi.pm +++ b/clients/perl/Mapi.pm @@ -197,8 +197,8 @@ sub doRequest { my($self,$cmd) = @_; - $cmd =~ s/\n/ /g; # remove newlines ??? $cmd = "S" . $cmd if $self->{lang} eq 'sql'; + $cmd = $cmd . ";\n" unless $cmd =~ m/;\n$/; print "doRequest:$cmd\n" if ($self->{trace}); $self->putblock($cmd); # TODO handle exceptions || die "!ERROR can't send $cmd: $!"; $self->resetState(); @@ -242,29 +242,34 @@ if (@chars[0] eq '!') { $self->error($row); - my $i = 1; - while ($self->{lines}[$i] =~ '!') { + my $i = 1; + while ($self->{lines}[$i] =~ '!') { $self->error($self->{lines}[$i]); $i++; - } + } $self->{active} = 0; return -1 } elsif (@chars[0] eq '&') { # not expected } elsif (@chars[0] eq '%') { - # header line + # header line } elsif (@chars[0] eq '[') { - # row result + # row result $self->{row} = $row; + if ($self->{nrcols} < 0) { + $self->{nrcols} = () = $row =~ /,\t/g; + $self->{nrcols}++; + } $self->{active} = 1; } elsif (@chars[0] eq '=') { - # xml result line + # xml result line $self->{row} = substr($row, 1); # skip = $self->{active} = 1; } elsif (@chars[0] eq '^') { - # ^ redirect, ie use different server + # ^ redirect, ie use different server } elsif (@chars[0] eq '#') { - # warnings etc + # warnings etc, skip, and return what follows + return $self->getRow; } return $self->{active}; } @@ -278,9 +283,9 @@ my $header = $self->{lines}[0]; my @chars = split(//, $header); - $self->{id} = -1; + $self->{id} = -1; $self->{count} = scalar(@{$self->{lines}}); - $self->{nrcols} = 1; + $self->{nrcols} = -1; $self->{replysize} = $self->{count}; $self->{active} = 0; $self->{skip} = 0; # next+skip is current result row @@ -289,56 +294,56 @@ _______________________________________________ Checkin-list mailing list [email protected] http://mail.monetdb.org/mailman/listinfo/checkin-list
