MonetDB: Jan2014 - add not true/not false parsing (solving bug 3...
Changeset: be17bc388a09 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=be17bc388a09 Modified Files: sql/server/sql_parser.y Branch: Jan2014 Log Message: add not true/not false parsing (solving bug 3505) diffs (22 lines): diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y --- a/sql/server/sql_parser.y +++ b/sql/server/sql_parser.y @@ -4272,10 +4272,18 @@ literal: { sql_subtype t; sql_find_subtype(t, boolean, 0, 0 ); $$ = _newAtomNode( atom_bool(SA, t, FALSE)); } + | NOT BOOL_FALSE + { sql_subtype t; + sql_find_subtype(t, boolean, 0, 0 ); + $$ = _newAtomNode( atom_bool(SA, t, TRUE)); } | BOOL_TRUE { sql_subtype t; sql_find_subtype(t, boolean, 0, 0 ); $$ = _newAtomNode( atom_bool(SA, t, TRUE)); } + | NOT BOOL_TRUE + { sql_subtype t; + sql_find_subtype(t, boolean, 0, 0 ); + $$ = _newAtomNode( atom_bool(SA, t, FALSE)); } ; interval_expression: ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - don't assert but return error on atom_cast (f...
Changeset: 17cd8c14c3b4 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=17cd8c14c3b4 Modified Files: sql/server/sql_atom.c Branch: Jan2014 Log Message: don't assert but return error on atom_cast (fix bug 3506) diffs (83 lines): diff --git a/sql/server/sql_atom.c b/sql/server/sql_atom.c --- a/sql/server/sql_atom.c +++ b/sql/server/sql_atom.c @@ -657,21 +657,24 @@ atom_cast(atom *a, sql_subtype *tp) else a-data.val.lval *= mul; } else if (a-data.vtype == TYPE_int) { - assert(div || ((lng) GDK_int_min = (lng) a-data.val.ival * mul (lng) a-data.val.ival * mul = (lng) GDK_int_max)); + if (!div ((lng) GDK_int_min (lng) a-data.val.ival * mul || (lng) a-data.val.ival * mul (lng) GDK_int_max)) + return 0; a-data.val.ival += (int)rnd; if (div) a-data.val.ival /= (int) mul; else a-data.val.ival *= (int) mul; } else if (a-data.vtype == TYPE_sht) { - assert(div || ((lng) GDK_sht_min = (lng) a-data.val.shval * mul (lng) a-data.val.shval * mul = (lng) GDK_sht_max)); + if (!div ((lng) GDK_sht_min (lng) a-data.val.shval * mul || (lng) a-data.val.shval * mul (lng) GDK_sht_max)) + return 0; a-data.val.shval += (sht)rnd; if (div) a-data.val.shval /= (sht) mul; else a-data.val.shval *= (sht) mul; } else if (a-data.vtype == TYPE_bte) { - assert(div || ((lng) GDK_bte_min = (lng) a-data.val.btval * mul (lng) a-data.val.btval * mul = (lng) GDK_bte_max)); + if (!div ((lng) GDK_bte_min (lng) a-data.val.btval * mul || (lng) a-data.val.btval * mul (lng) GDK_bte_max)) + return 0; a-data.val.btval += (bte)rnd; if (div) a-data.val.btval /= (bte) mul; @@ -711,13 +714,16 @@ atom_cast(atom *a, sql_subtype *tp) if (a-data.vtype == TYPE_lng) { a-data.val.lval = (int) val; } else if (a-data.vtype == TYPE_int) { - assert( ((lng) GDK_int_min = val val = (lng) GDK_int_max)); + if ( ((lng) GDK_int_min val || val (lng) GDK_int_max)) + return 0; a-data.val.ival = (int) val; } else if (a-data.vtype == TYPE_sht) { - assert( ((lng) GDK_sht_min = val val = (lng) GDK_sht_max)); + if ( ((lng) GDK_sht_min val || val (lng) GDK_sht_max)) + return 0; a-data.val.shval = (int) val; } else if (a-data.vtype == TYPE_bte) { - assert( ((lng) GDK_bte_min = val val = (lng) GDK_bte_max)); + if ( ((lng) GDK_bte_min val || val (lng) GDK_bte_max)) + return 0; a-data.val.btval = (int) val; } return 1; @@ -779,15 +785,18 @@ atom_cast(atom *a, sql_subtype *tp) if (a-data.vtype == TYPE_lng) a-data.val.lval *= mul; else if (a-data.vtype == TYPE_int) { - assert((lng) GDK_int_min = (lng) a-data.val.ival * mul (lng) a-data.val.ival * mul = (lng) GDK_int_max); + if ((lng) GDK_int_min (lng) a-data.val.ival * mul || (lng) a-data.val.ival * mul (lng) GDK_int_max) + return 0; a-data.val.ival *= (int) mul; } else if (a-data.vtype == TYPE_sht) { - assert((lng) GDK_sht_min = (lng) a-data.val.shval * mul (lng) a-data.val.shval * mul = (lng) GDK_sht_max); + if ((lng) GDK_sht_min (lng) a-data.val.shval * mul || (lng) a-data.val.shval * mul (lng) GDK_sht_max) + return 0; a-data.val.shval *= (sht) mul; } else if (a-data.vtype == TYPE_bte) { -
MonetDB: Jan2014 - Use ID field in /etc/os-release instead of NA...
Changeset: f7dcfc1e4035 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f7dcfc1e4035 Modified Files: configure.ag Branch: Jan2014 Log Message: Use ID field in /etc/os-release instead of NAME field. The NAME field may contain spaces, which causes make rpm to fail. diffs (12 lines): diff --git a/configure.ag b/configure.ag --- a/configure.ag +++ b/configure.ag @@ -486,7 +486,7 @@ case $host_os in if test -s /etc/os-release; then # this is the new way of getting release information # works for Fedora = 17, Ubuntu = 12.04 (Precise Pangolin) - LINUX_DIST=`source /etc/os-release; echo ${NAME}:${VERSION_ID}` + LINUX_DIST=`source /etc/os-release; echo ${ID}:${VERSION_ID}` elif test -s /etc/fedora-release ; then LINUX_DIST=`cat /etc/fedora-release | head -n1 \ | sed 's|^.*\(Fedora\).* release \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\2|'` ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - Updated for RHEL 7, fixed dependency for syst...
Changeset: 88364dd0303b for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=88364dd0303b Modified Files: MonetDB.spec Branch: Jan2014 Log Message: Updated for RHEL 7, fixed dependency for systemd-tmpfiles. RHEL 7 has systemd-tmpfiles, unlike older RHEL versions, so we use that there. diffs (40 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -589,9 +589,9 @@ used from the MAL level. Summary: MonetDB5 SQL server modules Group: Applications/Databases Requires: MonetDB5-server = %{version}-%{release} -%if %{?rhel:0}%{!?rhel:1} -# for systemd-tmpfiles -Requires: systemd-units +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora +Requires: %{_bindir}/systemd-tmpfiles %endif Obsoletes: MonetDB-SQL-devel Obsoletes: %{name}-SQL @@ -605,7 +605,7 @@ accelerators. It also has an SQL fronte This package contains the SQL frontend for MonetDB. If you want to use SQL with MonetDB, you will need to install this package. -%if %{?rhel:0}%{!?rhel:1} +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 %post SQL-server5 systemd-tmpfiles --create %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif @@ -615,11 +615,11 @@ systemd-tmpfiles --create %{_sysconfdir} %{_bindir}/monetdb %{_bindir}/monetdbd %dir %attr(775,monetdb,monetdb) %{_localstatedir}/log/monetdb -%if %{?rhel:0}%{!?rhel:1} -# Fedora 15 and newer +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora %{_sysconfdir}/tmpfiles.d/monetdbd.conf %else -# RedHat Enterprise Linux +# RedHat Enterprise Linux 7 %dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: default - Merge with Jan2014 branch.
Changeset: 6a7075430925 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=6a7075430925 Modified Files: MonetDB.spec configure.ag sql/server/sql_atom.c sql/server/sql_parser.y Branch: default Log Message: Merge with Jan2014 branch. diffs (157 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -562,9 +562,9 @@ used from the MAL level. Summary: MonetDB5 SQL server modules Group: Applications/Databases Requires: MonetDB5-server = %{version}-%{release} -%if %{?rhel:0}%{!?rhel:1} -# for systemd-tmpfiles -Requires: systemd-units +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora +Requires: %{_bindir}/systemd-tmpfiles %endif Obsoletes: MonetDB-SQL-devel Obsoletes: %{name}-SQL @@ -578,7 +578,7 @@ accelerators. It also has an SQL fronte This package contains the SQL frontend for MonetDB. If you want to use SQL with MonetDB, you will need to install this package. -%if %{?rhel:0}%{!?rhel:1} +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 %post SQL-server5 systemd-tmpfiles --create %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif @@ -588,11 +588,11 @@ systemd-tmpfiles --create %{_sysconfdir} %{_bindir}/monetdb %{_bindir}/monetdbd %dir %attr(775,monetdb,monetdb) %{_localstatedir}/log/monetdb -%if %{?rhel:0}%{!?rhel:1} -# Fedora 15 and newer +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora %{_sysconfdir}/tmpfiles.d/monetdbd.conf %else -# RedHat Enterprise Linux +# RedHat Enterprise Linux 7 %dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif diff --git a/configure.ag b/configure.ag --- a/configure.ag +++ b/configure.ag @@ -477,7 +477,7 @@ case $host_os in if test -s /etc/os-release; then # this is the new way of getting release information # works for Fedora = 17, Ubuntu = 12.04 (Precise Pangolin) - LINUX_DIST=`source /etc/os-release; echo ${NAME}:${VERSION_ID}` + LINUX_DIST=`source /etc/os-release; echo ${ID}:${VERSION_ID}` elif test -s /etc/fedora-release ; then LINUX_DIST=`cat /etc/fedora-release | head -n1 \ | sed 's|^.*\(Fedora\).* release \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\2|'` diff --git a/sql/server/sql_atom.c b/sql/server/sql_atom.c --- a/sql/server/sql_atom.c +++ b/sql/server/sql_atom.c @@ -657,21 +657,24 @@ atom_cast(atom *a, sql_subtype *tp) else a-data.val.lval *= mul; } else if (a-data.vtype == TYPE_int) { - assert(div || ((lng) GDK_int_min = (lng) a-data.val.ival * mul (lng) a-data.val.ival * mul = (lng) GDK_int_max)); + if (!div ((lng) GDK_int_min (lng) a-data.val.ival * mul || (lng) a-data.val.ival * mul (lng) GDK_int_max)) + return 0; a-data.val.ival += (int)rnd; if (div) a-data.val.ival /= (int) mul; else a-data.val.ival *= (int) mul; } else if (a-data.vtype == TYPE_sht) { - assert(div || ((lng) GDK_sht_min = (lng) a-data.val.shval * mul (lng) a-data.val.shval * mul = (lng) GDK_sht_max)); + if (!div ((lng) GDK_sht_min (lng) a-data.val.shval * mul || (lng) a-data.val.shval * mul (lng) GDK_sht_max)) + return 0; a-data.val.shval += (sht)rnd; if (div) a-data.val.shval /= (sht) mul; else a-data.val.shval *= (sht) mul; } else if (a-data.vtype == TYPE_bte) { - assert(div || ((lng) GDK_bte_min = (lng) a-data.val.btval * mul (lng) a-data.val.btval * mul = (lng) GDK_bte_max)); + if (!div ((lng) GDK_bte_min (lng) a-data.val.btval * mul || (lng) a-data.val.btval * mul (lng) GDK_bte_max)) + return 0; a-data.val.btval += (bte)rnd; if (div) a-data.val.btval /= (bte) mul; @@ -711,13 +714,16 @@ atom_cast(atom *a, sql_subtype *tp) if (a-data.vtype == TYPE_lng) { a-data.val.lval = (int) val; } else if (a-data.vtype == TYPE_int) { - assert( ((lng) GDK_int_min = val val = (lng) GDK_int_max)); + if ( ((lng) GDK_int_min val || val (lng)
MonetDB: Jan2014 - added limit without records in copy into. Bew...
Changeset: 08f2048691fb for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=08f2048691fb Modified Files: sql/server/sql_parser.y Branch: Jan2014 Log Message: added limit without records in copy into. Beware this can only work with file based input (not with streaming!) Fixes bug 3504 diffs (16 lines): diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y --- a/sql/server/sql_parser.y +++ b/sql/server/sql_parser.y @@ -2528,7 +2528,11 @@ opt_using: opt_nr: /* empty */{ $$ = NULL; } | poslng RECORDS { $$ = append_lng(append_lng(L(), $1), 0); } - | poslng OFFSET poslng RECORDS { $$ = append_lng(append_lng(L(), $1), $3); } + | OFFSET poslng { $$ = append_lng(append_lng(L(), -1), $2); } + | poslng OFFSET poslng RECORDS + { $$ = append_lng(append_lng(L(), $1), $3); } + | poslng RECORDS OFFSET poslng + { $$ = append_lng(append_lng(L(), $1), $4); } ; opt_null_string: ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - fixed bug 3498, make sure we have a table (no...
Changeset: d3a1eddca24b for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d3a1eddca24b Modified Files: sql/backends/monet5/rel_bin.c Branch: Jan2014 Log Message: fixed bug 3498, make sure we have a table (not a single row) before we do the topn. fixed bug 3489, distinct with order by, use the proper extend directly for the possible order by columns (which are not part of the output) diffs (74 lines): diff --git a/sql/backends/monet5/rel_bin.c b/sql/backends/monet5/rel_bin.c --- a/sql/backends/monet5/rel_bin.c +++ b/sql/backends/monet5/rel_bin.c @@ -1768,7 +1768,7 @@ rel2bin_semijoin( mvc *sql, sql_rel *rel } static stmt * -rel2bin_distinct(mvc *sql, stmt *s) +rel2bin_distinct(mvc *sql, stmt *s, stmt **distinct) { node *n; stmt *g = NULL, *grp = NULL, *ext = NULL, *cnt = NULL; @@ -1808,6 +1808,8 @@ rel2bin_distinct(mvc *sql, stmt *s) list_append(rl, stmt_project(sql-sa, ext, t)); } + if (distinct) + *distinct = ext; s = stmt_list(sql-sa, rl); return s; } @@ -1869,7 +1871,7 @@ rel2bin_union( mvc *sql, sql_rel *rel, l } if (need_distinct(rel)) - sub = rel2bin_distinct(sql, sub); + sub = rel2bin_distinct(sql, sub, NULL); return sub; } @@ -2008,7 +2010,7 @@ rel2bin_except( mvc *sql, sql_rel *rel, } if (need_distinct(rel)) - sub = rel2bin_distinct(sql, sub); + sub = rel2bin_distinct(sql, sub, NULL); return sub; } @@ -2134,7 +2136,7 @@ rel2bin_inter( mvc *sql, sql_rel *rel, l } if (need_distinct(rel)) - sub = rel2bin_distinct(sql, sub); + sub = rel2bin_distinct(sql, sub, NULL); return sub; } @@ -2232,7 +2234,10 @@ rel2bin_project( mvc *sql, sql_rel *rel, assert(0); return NULL; } - if (sub sub-nrcols = 1 s-nrcols == 0) + /* single value with limit */ + if (topn rel-r sub sub-nrcols == 0) + s = const_column(sql-sa, s); + else if (sub sub-nrcols = 1 s-nrcols == 0) s = stmt_const(sql-sa, bin_first_column(sql-sa, sub), s); s = stmt_rename(sql, rel, exp, s); @@ -2288,11 +2293,11 @@ rel2bin_project( mvc *sql, sql_rel *rel, sub = stmt_list(sql-sa, npl); } if (need_distinct(rel)) { - psub = rel2bin_distinct(sql, psub); + stmt *distinct = NULL; + psub = rel2bin_distinct(sql, psub, distinct); /* also rebuild sub as multiple orderby expressions may use the sub table (ie aren't part of the result columns) */ if (sub) { list *npl = sa_list(sql-sa); - stmt *distinct = stmt_mirror(sql-sa, psub-op4.lval-h-data); pl = sub-op4.lval; for ( n=pl-h ; n; n = n-next) ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - fixed bug 3491, ie not need for a crossproduc...
Changeset: d207b2b7ece5 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=d207b2b7ece5 Modified Files: sql/server/rel_select.c Branch: Jan2014 Log Message: fixed bug 3491, ie not need for a crossproduct if both left and right are only expressions, not relations. diffs (12 lines): diff --git a/sql/server/rel_select.c b/sql/server/rel_select.c --- a/sql/server/rel_select.c +++ b/sql/server/rel_select.c @@ -3019,7 +3019,7 @@ rel_logical_exp(mvc *sql, sql_rel *rel, e = exp_compare(sql-sa, e, r, cmp_equal); rel = rel_select(sql-sa, rel, e); } - if (l_is_value) + if (l_is_value outer) rel = rel_crossproduct(sql-sa, outer, rel, op_join); rel = rel_project(sql-sa, rel, rel_projections(sql, outer, NULL, 1, 1)); set_processed(rel); ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - on windows convert \r\n substrings in seperat...
Changeset: 1f4ed128ee53 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1f4ed128ee53 Modified Files: sql/backends/monet5/sql.c Branch: Jan2014 Log Message: on windows convert \r\n substrings in seperators into \n. diffs (37 lines): 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 @@ -2654,6 +2654,21 @@ bat2return(MalStkPtr stk, InstrPtr pci, } } +#ifdef WIN32 +static void +fix_windows_newline(unsigned char *s) +{ + char *p = NULL; + int c = '\r'; + + if (s (p=strchr((char*)s, c)) != NULL p[1] == '\n') { + for(; p[1]; p++) + p[0] = p[1]; + p[0] = 0; + } +} +#endif + /* str mvc_import_table_wrap(int *res, str *sname, str *tname, unsigned char* *T, unsigned char* *R, unsigned char* *S, unsigned char* *N, str *fname, lng *sz, lng *offset); */ str mvc_import_table_wrap(Client cntxt, MalBlkPtr mb, MalStkPtr stk, InstrPtr pci) @@ -2710,6 +2725,11 @@ mvc_import_table_wrap(Client cntxt, MalB #else s = bstream_create(ss, 0x200); #endif +#ifdef WIN32 + fix_windows_newline(tsep); + fix_windows_newline(rsep); + fix_windows_newline(ssep); +#endif if (s != NULL) { b = mvc_import_table(cntxt, be-mvc, s, *sname, *tname, (char *) tsep, (char *) rsep, (char *) ssep, (char *) ns, *sz, *offset, *locked); bstream_destroy(s); ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jan2014 - merging
Changeset: 63f90cc76c10 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=63f90cc76c10 Modified Files: MonetDB.spec configure.ag Branch: Jan2014 Log Message: merging diffs (52 lines): diff --git a/MonetDB.spec b/MonetDB.spec --- a/MonetDB.spec +++ b/MonetDB.spec @@ -589,9 +589,9 @@ used from the MAL level. Summary: MonetDB5 SQL server modules Group: Applications/Databases Requires: MonetDB5-server = %{version}-%{release} -%if %{?rhel:0}%{!?rhel:1} -# for systemd-tmpfiles -Requires: systemd-units +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora +Requires: %{_bindir}/systemd-tmpfiles %endif Obsoletes: MonetDB-SQL-devel Obsoletes: %{name}-SQL @@ -605,7 +605,7 @@ accelerators. It also has an SQL fronte This package contains the SQL frontend for MonetDB. If you want to use SQL with MonetDB, you will need to install this package. -%if %{?rhel:0}%{!?rhel:1} +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 %post SQL-server5 systemd-tmpfiles --create %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif @@ -615,11 +615,11 @@ systemd-tmpfiles --create %{_sysconfdir} %{_bindir}/monetdb %{_bindir}/monetdbd %dir %attr(775,monetdb,monetdb) %{_localstatedir}/log/monetdb -%if %{?rhel:0}%{!?rhel:1} -# Fedora 15 and newer +%if %{?rhel:0}%{!?rhel:1} || 0%{?rhel} = 7 +# RHEL = 7, and all current Fedora %{_sysconfdir}/tmpfiles.d/monetdbd.conf %else -# RedHat Enterprise Linux +# RedHat Enterprise Linux 7 %dir %attr(775,monetdb,monetdb) %{_localstatedir}/run/monetdb %exclude %{_sysconfdir}/tmpfiles.d/monetdbd.conf %endif diff --git a/configure.ag b/configure.ag --- a/configure.ag +++ b/configure.ag @@ -486,7 +486,7 @@ case $host_os in if test -s /etc/os-release; then # this is the new way of getting release information # works for Fedora = 17, Ubuntu = 12.04 (Precise Pangolin) - LINUX_DIST=`source /etc/os-release; echo ${NAME}:${VERSION_ID}` + LINUX_DIST=`source /etc/os-release; echo ${ID}:${VERSION_ID}` elif test -s /etc/fedora-release ; then LINUX_DIST=`cat /etc/fedora-release | head -n1 \ | sed 's|^.*\(Fedora\).* release \([[0-9]][[^ \n]]*\)\( .*\)*$|\1:\2|'` ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: geo - ST_Length2D added
Changeset: 3f383ee48c92 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=3f383ee48c92 Modified Files: geom/monetdb5/geom.c geom/sql/40_geom.sql Branch: geo Log Message: ST_Length2D added diffs (24 lines): diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -1178,8 +1178,6 @@ str wkbGeometryType(char** out, wkb** ge } /* returns the number of dimensions of the geometry */ -/* geos does not know the number of dimensions as long as a wkb has been created - * more precisely it descards all dimensions but x and y*/ str wkbCoordDim(int *out, wkb **geom) { return wkbBasicInt(out, *geom, GEOSGeom_getCoordinateDimension, geom.CoordDim); } diff --git a/geom/sql/40_geom.sql b/geom/sql/40_geom.sql --- a/geom/sql/40_geom.sql +++ b/geom/sql/40_geom.sql @@ -331,7 +331,7 @@ CREATE FUNCTION ST_Intersects(geom1 Geom --CREATE FUNCTION ST_Intersects(geog1 Geography, geog2 Geography) RETURNS boolean EXTERNAL NAME geom.Intersects; CREATE FUNCTION ST_Length(geom Geometry) RETURNS double EXTERNAL NAME geom.Length; --CREATE FUNCTION ST_Length(geog Geography, use_spheroid boolean) RETURNS double EXTERNAL NAME geom.Length; ---CREATE FUNCTION ST_Length2D RETURNS EXTERNAL NAME +CREATE FUNCTION ST_Length2D(geom Geometry) RETURNS double EXTERNAL NAME geom.Length; --CREATE FUNCTION ST_3DLength RETURNS EXTERNAL NAME --CREATE FUNCTION ST_Length_Spheroid RETURNS EXTERNAL NAME --CREATE FUNCTION ST_Length2D_Spheroid RETURNS EXTERNAL NAME ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: geo - implemented functions for testing the relative po...
Changeset: 945d4284f09b for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=945d4284f09b Modified Files: geom/monetdb5/geom.c Branch: geo Log Message: implemented functions for testing the relative positions of mbrs + function for returing the distance of the centroids of two mbrs diffs (158 lines): diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -170,7 +170,19 @@ geom_export str wkbTransform(wkb**, wkb* geom_export str geom_2_geom(wkb** resWKB, wkb **valueWKB, int* columnType, int* columnSRID); geom_export str wkbMBR(mbr **res, wkb **geom); +geom_export str mbrAbove(bit *out, mbr **b1, mbr **b2); +geom_export str mbrBelow(bit *out, mbr **b1, mbr **b2); +geom_export str mbrContained(bit *out, mbr **b1, mbr **b2); +geom_export str mbrContains(bit *out, mbr **b1, mbr **b2); +geom_export str mbrDistance(double *out, mbr **b1, mbr **b2); +geom_export str mbrEqual(bit *out, mbr **b1, mbr **b2); +geom_export str mbrLeft(bit *out, mbr **b1, mbr **b2); +geom_export str mbrOverlapOrAbove(bit *out, mbr **b1, mbr **b2); +geom_export str mbrOverlapOrBelow(bit *out, mbr **b1, mbr **b2); +geom_export str mbrOverlapOrLeft(bit *out, mbr **b1, mbr **b2); +geom_export str mbrOverlapOrRight(bit *out, mbr **b1, mbr **b2); geom_export str mbrOverlaps(bit *out, mbr **b1, mbr **b2); +geom_export str mbrRight(bit *out, mbr **b1, mbr **b2); geom_export str wkbCoordinateFromWKB(dbl*, wkb**, int*); geom_export str wkbCoordinateFromMBR(dbl*, mbr**, int*); @@ -2117,15 +2129,132 @@ str wkbMBR(mbr **geomMBR, wkb **geomWKB) return MAL_SUCCEED; } -/*checks whether two mbrs overlap */ +/* returns true if b1 is above b2 */ +str mbrAbove(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ((*b1)-ymin (*b2)-ymax); + return MAL_SUCCEED; +} + +/* returns true if b1 is below b2 */ +str mbrBelow(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ( (*b1)-ymax (*b2)-ymin); + return MAL_SUCCEED; +} + +/* returns true if box1 is left of box2 */ +str mbrLeft(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ( (*b1)-xmax (*b2)-xmin ); + return MAL_SUCCEED; +} + +/* returns true if box1 is right of box2 */ +str mbrRight(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ( (*b1)-xmin (*b2)-xmax ); + return MAL_SUCCEED; +} + +/* returns true if b1 is contained in b2 */ +str mbrContained(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ( ((*b1)-xmin (*b2)-xmin) ((*b1)-xmax (*b2)-xmax) ((*b1)-ymin (*b2)-ymin) ((*b1)-ymax (*b2)-ymax)); + return MAL_SUCCEED; +} + +/*returns true if b1 contains b2 */ +str mbrContains(bit *out, mbr **b1, mbr **b2) { + return mbrContained(out, b2, b1); +} + +/* returns the Euclidean distance of the centroids of the boxes */ +str mbrDistance(double *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) { + *out = 0; + return MAL_SUCCEED; + } + + //compute the centroids of the two polygons + double b1_Cx = ((*b1)-xmin+(*b1)-xmax)/2.0; + double b1_Cy = ((*b1)-ymin+(*b1)-ymax)/2.0; + double b2_Cx = ((*b2)-xmin+(*b2)-xmax)/2.0; + double b2_Cy = ((*b2)-ymin+(*b2)-ymax)/2.0; + + //compute the euclidean distance + *out = sqrt( pow(b1_Cx*b2_Cx, 2.0) + pow(b1_Cy*b2_Cy, 2.0)); + + return MAL_SUCCEED; +} + +/* returns true if the boxes are the same */ +str mbrEqual(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) mbr_isnil(*b2)) + *out = 1; + else if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ( ((*b1)-xmin == (*b2)-xmin) ((*b1)-xmax == (*b2)-xmax) ((*b1)-ymin == (*b2)-ymin) ((*b1)-ymax == (*b2)-ymax)); + return MAL_SUCCEED; +} + +/*returns true if the two mbrs overlap */ str mbrOverlaps(bit *out, mbr **b1, mbr **b2) { if (mbr_isnil(*b1) || mbr_isnil(*b2)) *out = 0; - else + else //they cannot overlap if b2 is left, right, above or below b1 *out = !((*b2)-ymax (*b1)-ymin || (*b2)-ymin (*b1)-ymax || (*b2)-xmax (*b1)-xmin || (*b2)-xmin (*b1)-xmax); return MAL_SUCCEED; } +/* returns true if box1 overlaps or is above box2 when only the Y coordinate is considered*/ +str mbrOverlapOrAbove(bit *out, mbr **b1, mbr **b2) { + if (mbr_isnil(*b1) || mbr_isnil(*b2)) + *out = 0; + else + *out = ((*b1)-ymin = (*b2)-ymin); + return
MonetDB: geo - mbr functions added in 40_geom.sql and geom.mal
Changeset: 597c7a9fe762 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=597c7a9fe762 Modified Files: geom/monetdb5/geom.mal geom/sql/40_geom.sql Branch: geo Log Message: mbr functions added in 40_geom.sql and geom.mal diffs (62 lines): diff --git a/geom/monetdb5/geom.mal b/geom/monetdb5/geom.mal --- a/geom/monetdb5/geom.mal +++ b/geom/monetdb5/geom.mal @@ -262,8 +262,32 @@ comment Transforms a geometry from one command mbr(:wkb) :mbr address wkbMBR comment Creates the mbr for the given wkb.; -command mbrOverlaps(a:mbr, b:mbr) :bit address mbrOverlaps -comment Returns true if the two mbrs overlap; +command mbrOverlaps(box1:mbr, box2:mbr) :bit address mbrOverlaps +comment Returns true if box1 overlaps box2; +command mbrOverlapOrLeft(box1:mbr, box2:mbr) :bit address mbrOverlapOrLeft +comment Returns true if box1 overlaps or is to the left of box2; +command mbrOverlapOrBelow(box1:mbr, box2:mbr) :bit address mbrOverlapOrBelow +comment Returns true if box1 overlaps or is below box2; +command mbrOverlapOrRight(box1:mbr, box2:mbr) :bit address mbrOverlapOrRight +comment Returns true if box1 overlalps or is right of box2; +command mbrLeft(box1:mbr, box2:mbr) :bit address mbrLeft +comment Returns true if box1 is left of box2; +command mbrBelow(box1:mbr, box2:mbr) :bit address mbrBelow +comment Returns true if box1 is below box2; +command mbrEqual(box1:mbr, box2:mbr) :bit address mbrEqual +comment Returns true if box1 is the same as box2; +command mbrRight(box1:mbr, box2:mbr) :bit address mbrRight +comment Returns true if box1 is right of box2; +command mbrContained(box1:mbr, box2:mbr) :bit address mbrContained +comment Returns true if box1 is contained by box2; +command mbrOverlapOrAbove(box1:mbr, box2:mbr) :bit address mbrOverlapOrAbove +comment Returns true if box1 overlaps or is above box2; +command mbrAbove(box1:mbr, box2:mbr) :bit address mbrAbove +comment Returns true if box1 is above box2; +command mbrContains(box1:mbr, box2:mbr) :bit address mbrContains +comment Returns true if box1 contains box2; +command mbrDistance(box1:mbr, box2:mbr) :dbl address mbrDistance +comment Returns the distance of the centroids of the two boxes; command coordinateFromWKB(:wkb, :int) :dbl address wkbCoordinateFromWKB comment returns xmin (=1), ymin (=2), xmax (=3) or ymax(=4) of the provided geometry; command coordinateFromMBR(:mbr, :int) :dbl address wkbCoordinateFromMBR diff --git a/geom/sql/40_geom.sql b/geom/sql/40_geom.sql --- a/geom/sql/40_geom.sql +++ b/geom/sql/40_geom.sql @@ -64,7 +64,19 @@ CREATE TYPE mbr EXTERNAL NAME mbr; -- as that returns Geometry objects, and we prefer the explicit mbr's -- minimum bounding rectangle (mbr) CREATE FUNCTION mbr(geom Geometry) RETURNS mbr external name geom.mbr; -CREATE FUNCTION mbrOverlaps(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlaps; +CREATE FUNCTION mbrOverlap(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlap; +CREATE FUNCTION mbrOverlapOrLeft(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlapOrLeft; +CREATE FUNCTION mbrOverlapOrBelow(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlapOrBelow; +CREATE FUNCTION mbrOverlapOrRight(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlapOrRight; +CREATE FUNCTION mbrLeft(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrLeft; +CREATE FUNCTION mbrBelow(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrBelow; +CREATE FUNCTION mbrEqual(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrEqual; +CREATE FUNCTION mbrRight(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrRight; +CREATE FUNCTION mbrContained(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrContained; +CREATE FUNCTION mbrOverlapOrAbove(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlapOrAbove; +CREATE FUNCTION mbrAbove(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrAbove; +CREATE FUNCTION mbrContains(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrContains; +CREATE FUNCTION mbrDistance(box1 mbr, box2 mbr) RETURNS double external name geom.mbrDistance; - ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: geo - minor changes on the names format
Changeset: 1ffb2f22f668 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1ffb2f22f668 Modified Files: geom/monetdb5/geom.c geom/monetdb5/geom.mal geom/sql/40_geom.sql Branch: geo Log Message: minor changes on the names format diffs (48 lines): diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -170,7 +170,7 @@ geom_export str wkbTransform(wkb**, wkb* geom_export str geom_2_geom(wkb** resWKB, wkb **valueWKB, int* columnType, int* columnSRID); geom_export str wkbMBR(mbr **res, wkb **geom); -geom_export str mbroverlaps(bit *out, mbr **b1, mbr **b2); +geom_export str mbrOverlaps(bit *out, mbr **b1, mbr **b2); geom_export str wkbCoordinateFromWKB(dbl*, wkb**, int*); geom_export str wkbCoordinateFromMBR(dbl*, mbr**, int*); @@ -2118,7 +2118,7 @@ str wkbMBR(mbr **geomMBR, wkb **geomWKB) } /*checks whether two mbrs overlap */ -str mbroverlaps(bit *out, mbr **b1, mbr **b2) { +str mbrOverlaps(bit *out, mbr **b1, mbr **b2) { if (mbr_isnil(*b1) || mbr_isnil(*b2)) *out = 0; else diff --git a/geom/monetdb5/geom.mal b/geom/monetdb5/geom.mal --- a/geom/monetdb5/geom.mal +++ b/geom/monetdb5/geom.mal @@ -262,7 +262,7 @@ comment Transforms a geometry from one command mbr(:wkb) :mbr address wkbMBR comment Creates the mbr for the given wkb.; -command mbroverlaps(a:mbr, b:mbr) :bit address mbroverlaps +command mbrOverlaps(a:mbr, b:mbr) :bit address mbrOverlaps comment Returns true if the two mbrs overlap; command coordinateFromWKB(:wkb, :int) :dbl address wkbCoordinateFromWKB comment returns xmin (=1), ymin (=2), xmax (=3) or ymax(=4) of the provided geometry; diff --git a/geom/sql/40_geom.sql b/geom/sql/40_geom.sql --- a/geom/sql/40_geom.sql +++ b/geom/sql/40_geom.sql @@ -63,9 +63,8 @@ CREATE TYPE mbr EXTERNAL NAME mbr; -- Envelope():Geometry -- as that returns Geometry objects, and we prefer the explicit mbr's -- minimum bounding rectangle (mbr) -CREATE FUNCTION mbr (g Geometry) RETURNS mbr external name geom.mbr; -CREATE FUNCTION mbroverlaps(a mbr, b mbr) RETURNS BOOLEAN external name geom.mbroverlaps; - +CREATE FUNCTION mbr(geom Geometry) RETURNS mbr external name geom.mbr; +CREATE FUNCTION mbrOverlaps(box1 mbr, box2 mbr) RETURNS boolean external name geom.mbrOverlaps; - ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: geo - tests for null arguments added in MakePoint funct...
Changeset: 02c6eb845839 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=02c6eb845839 Modified Files: geom/monetdb5/geom.c geom/monetdb5/geom.mal Branch: geo Log Message: tests for null arguments added in MakePoint functions geosGeometry is now destroyed before returning diffs (246 lines): diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -1068,15 +1068,23 @@ static str geomMakePoint(wkb **geomWKB, *geomWKB = wkb_nil; throw(MAL, geomMakePoint, Failed to crete WKB from GEOSGeometry); } + return MAL_SUCCEED; } /* creates a point using the x, y coordinates */ str geomMakePoint2D(wkb** out, double* x, double* y) { GEOSGeom geosGeometry = NULL; + str ret = MAL_SUCCEED; + GEOSCoordSequence *seq = NULL; + + if (*x == dbl_nil || *y == dbl_nil) { + *out = wkb_nil; + return MAL_SUCCEED; + } //create the point from the coordinates - GEOSCoordSequence *seq = GEOSCoordSeq_create(1, 2); + seq = GEOSCoordSeq_create(1, 2); GEOSCoordSeq_setX(seq, 0, *x); GEOSCoordSeq_setY(seq, 0, *y); geosGeometry = GEOSGeom_createPoint(seq); @@ -1087,15 +1095,25 @@ str geomMakePoint2D(wkb** out, double* x throw(MAL, geomMakePoint, Failed to create GEOSGeometry from the coordiates); } - return geomMakePoint(out, geosGeometry); + ret = geomMakePoint(out, geosGeometry); + GEOSGeom_destroy(geosGeometry); + + return ret; } /* creates a point using the x, y, z coordinates */ str geomMakePoint3D(wkb** out, double* x, double* y, double* z) { GEOSGeom geosGeometry = NULL; + str ret = MAL_SUCCEED; + GEOSCoordSequence *seq = NULL; + + if (*x == dbl_nil || *y == dbl_nil || *z == dbl_nil) { + *out = wkb_nil; + return MAL_SUCCEED; + } //create the point from the coordinates - GEOSCoordSequence *seq = GEOSCoordSeq_create(1, 3); + seq = GEOSCoordSeq_create(1, 3); GEOSCoordSeq_setX(seq, 0, *x); GEOSCoordSeq_setY(seq, 0, *y); GEOSCoordSeq_setZ(seq, 0, *z); @@ -1106,15 +1124,25 @@ str geomMakePoint3D(wkb** out, double* x throw(MAL, geomMakePoint, Failed to create GEOSGeometry from the coordiates); } - return geomMakePoint(out, geosGeometry); + ret = geomMakePoint(out, geosGeometry); + GEOSGeom_destroy(geosGeometry); + + return ret; } /* creates a point using the x, y, z, m coordinates */ str geomMakePoint4D(wkb** out, double* x, double* y, double* z, double* m) { GEOSGeom geosGeometry = NULL; + str ret = MAL_SUCCEED; + GEOSCoordSequence *seq = NULL; + + if (*x == dbl_nil || *y == dbl_nil || *z == dbl_nil || *m == dbl_nil) { + *out = wkb_nil; + return MAL_SUCCEED; + } //create the point from the coordinates - GEOSCoordSequence *seq = GEOSCoordSeq_create(1, 4); + seq = GEOSCoordSeq_create(1, 4); GEOSCoordSeq_setX(seq, 0, *x); GEOSCoordSeq_setY(seq, 0, *y); GEOSCoordSeq_setZ(seq, 0, *z); @@ -1126,15 +1154,25 @@ str geomMakePoint4D(wkb** out, double* x throw(MAL, geomMakePoint, Failed to create GEOSGeometry from the coordiates); } - return geomMakePoint(out, geosGeometry); + ret = geomMakePoint(out, geosGeometry); + GEOSGeom_destroy(geosGeometry); + + return ret; } /* creates a point using the x, y, m coordinates */ str geomMakePointM(wkb** out, double* x, double* y, double* m) { GEOSGeom geosGeometry = NULL; + str ret = MAL_SUCCEED; + GEOSCoordSequence *seq = NULL; + + if (*x == dbl_nil || *y == dbl_nil || *m == dbl_nil) { + *out = wkb_nil; + return MAL_SUCCEED; + } //create the point from the coordinates - GEOSCoordSequence *seq = GEOSCoordSeq_create(1, 3); + seq = GEOSCoordSeq_create(1, 3); GEOSCoordSeq_setOrdinate(seq, 0, 0, *x); GEOSCoordSeq_setOrdinate(seq, 0, 1, *y); GEOSCoordSeq_setOrdinate(seq, 0, 2, *m); @@ -1145,7 +1183,10 @@ str geomMakePointM(wkb** out, double* x, throw(MAL, geomMakePoint, Failed to create GEOSGeometry from the coordiates); } - return geomMakePoint(out, geosGeometry); + ret = geomMakePoint(out, geosGeometry); + GEOSGeom_destroy(geosGeometry); + + return ret; } /* common code for functions that return integer */ @@ -2181,16 +,18 @@ str mbrContains(bit *out, mbr **b1, mbr /* returns the Euclidean distance of the centroids of the boxes */ str mbrDistance(double *out, mbr **b1, mbr **b2) { + double b1_Cx = 0.0, b1_Cy = 0.0, b2_Cx =0.0, b2_Cy=0.0; + if (mbr_isnil(*b1) || mbr_isnil(*b2)) { *out = 0;
MonetDB: geo - merge with default
Changeset: 0df19f89526e for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=0df19f89526e Added Files: geom/BugTracker/Tests/copy_into_mbr.3492.modules geom/BugTracker/Tests/copy_into_mbr.3492.sql geom/BugTracker/Tests/copy_into_mbr.3492.stable.err geom/BugTracker/Tests/copy_into_mbr.3492.stable.out Modified Files: MonetDB.spec NT/installer32/MonetDB-ODBC-Installer.vdproj NT/installer32/MonetDB5-Geom-Module.vdproj NT/installer32/MonetDB5-SQL-Installer.vdproj NT/installer64/MonetDB-ODBC-Installer.vdproj NT/installer64/MonetDB5-Geom-Module.vdproj NT/installer64/MonetDB5-SQL-Installer.vdproj clients/Tests/MAL-signatures.stable.out clients/Tests/MAL-signatures_gsl.stable.out clients/Tests/MAL-signatures_nocfitsio.stable.out clients/Tests/MAL-signatures_sphinxclient.stable.out clients/Tests/SQL-dump.stable.out clients/Tests/SQL-dump.stable.out.32bit clients/Tests/SQL-dump.stable.out.64bit.oid32 clients/Tests/SQL-dump_gsl.stable.out clients/Tests/SQL-dump_gsl.stable.out.oid32 clients/Tests/SQL-dump_nogeom.stable.out clients/mapiclient/dump.c clients/mapiclient/mclient.c clients/odbc/driver/ODBCConvert.c clients/odbc/driver/ODBCUtil.h clients/python2/monetdb/sql/monetize.py clients/python2/test/test_monetize.py clients/python3/monetdb/sql/monetize.py clients/python3/test/test_monetize.py configure.ag gdk/gdk_logger.c gdk/gdk_posix.c gdk/gdk_private.h gdk/gdk_storage.c geom/BugTracker/Tests/All geom/monetdb5/geom.c monetdb5/mal/mal_instruction.c monetdb5/mal/mal_module.c monetdb5/mal/mal_parser.c monetdb5/modules/atoms/batxml.c monetdb5/modules/atoms/json.c monetdb5/modules/kernel/array.c sql/backends/monet5/sql_scenario.c sql/server/sql_atom.c sql/server/sql_parser.y sql/test/Tests/systemfunctions.stable.out sql/test/Tests/systemfunctions_gsl.stable.out sql/test/Tests/systemfunctions_nogeom.stable.out sql/test/pg_regress/Tests/All sql/test/pg_regress/Tests/aggregates.stable.err sql/test/pg_regress/Tests/aggregates.stable.out sql/test/pg_regress/Tests/alter_table.sql sql/test/pg_regress/Tests/alter_table.stable.err sql/test/pg_regress/Tests/alter_table.stable.out sql/test/pg_regress/Tests/arrays.sql sql/test/pg_regress/Tests/arrays.stable.err sql/test/pg_regress/Tests/arrays.stable.out sql/test/pg_regress/Tests/bit.stable.err sql/test/pg_regress/Tests/bit.stable.out sql/test/pg_regress/Tests/boolean.sql sql/test/pg_regress/Tests/boolean.stable.err sql/test/pg_regress/Tests/boolean.stable.out sql/test/pg_regress/Tests/box.stable.err sql/test/pg_regress/Tests/box.stable.out sql/test/pg_regress/Tests/btree_index.stable.err sql/test/pg_regress/Tests/btree_index.stable.out sql/test/pg_regress/Tests/case.stable.err sql/test/pg_regress/Tests/case.stable.out sql/test/pg_regress/Tests/char.sql sql/test/pg_regress/Tests/char.stable.err sql/test/pg_regress/Tests/char.stable.out sql/test/pg_regress/Tests/circle.stable.err sql/test/pg_regress/Tests/circle.stable.out sql/test/pg_regress/Tests/cluster.sql sql/test/pg_regress/Tests/cluster.stable.err sql/test/pg_regress/Tests/cluster.stable.out sql/test/pg_regress/Tests/comments.stable.err sql/test/pg_regress/Tests/comments.stable.out sql/test/pg_regress/Tests/conversion.stable.err sql/test/pg_regress/Tests/conversion.stable.out sql/test/pg_regress/Tests/copy2.stable.err sql/test/pg_regress/Tests/copy2.stable.out sql/test/pg_regress/Tests/create_aggregate.stable.err sql/test/pg_regress/Tests/create_aggregate.stable.out sql/test/pg_regress/Tests/create_index.stable.err sql/test/pg_regress/Tests/create_index.stable.out sql/test/pg_regress/Tests/create_misc.stable.err sql/test/pg_regress/Tests/create_misc.stable.out sql/test/pg_regress/Tests/create_operator.stable.err sql/test/pg_regress/Tests/create_operator.stable.out sql/test/pg_regress/Tests/create_table.sql sql/test/pg_regress/Tests/create_table.stable.err sql/test/pg_regress/Tests/create_table.stable.out sql/test/pg_regress/Tests/create_type.stable.err sql/test/pg_regress/Tests/create_type.stable.out sql/test/pg_regress/Tests/create_view.stable.err sql/test/pg_regress/Tests/create_view.stable.out sql/test/pg_regress/Tests/date.stable.err sql/test/pg_regress/Tests/date.stable.out sql/test/pg_regress/Tests/domain.stable.err
MonetDB: geo - removed second variable definition
Changeset: 200a0658aeac for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=200a0658aeac Modified Files: geom/monetdb5/geom.c Branch: geo Log Message: removed second variable definition diffs (12 lines): diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c --- a/geom/monetdb5/geom.c +++ b/geom/monetdb5/geom.c @@ -832,7 +832,7 @@ int mbrFROMSTR(char *src, int *len, mbr l = strlen(src); assert(l = GDK_int_max); nchars = (int) l; - size_t l = strlen(src); + l = strlen(src); assert(l = GDK_int_max); nchars = (int) l; } ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list