mariadb/sql
Alexey Botchkov 3882c5d62c Fix for few similar bugs:
#841622 Assertion `t->rp->type == Gcalc_function::shape_line' failed in Gcalc_operation_reducer::end_line in maria-5.3-gi
  #841625 Assertion `m_poly_borders->next' failed in Gcalc_operation_reducer::count_slice in maria-5.3-gis
  #841638 Assertion `!m_prev || m_prev->x != x || m_prev->y != y' failed in Gcalc_shape_transporter::int_add_point in maria-5.3-gis
  #841662 Third assertion `n > 0 && n < SINUSES_CALCULATED*2+1' in get_n_sincos
  #841745 Assertion `!sp0->is_bottom()' failed in Gcalc_scan_iterator::find_intersections in maria-5.3-gis

  They mostly was caused by inprecision of double arithmetic.
  Fixed by changes in how to handle multiple intersections to keep their order right.

  Also ST_DISTANCE(GEOM, EMPTY_GEOM) was defined as NULL.


per-file comments:
  mysql-test/r/gis-precise.result
   GIS bugfixes.
        test result updated.
  mysql-test/t/gis-precise.test
   GIS bugfixes.
        test cases added.
  sql/gcalc_slicescan.cc
   GIS bugfixes.
        If intersections are close, add order checks to cope with the
        double calcualtions imprecision.
  sql/gcalc_slicescan.h
   GIS bugfixes.
        n_row parameter added to intersection to check their order.
  sql/item_geofunc.cc
   GIS bugfixes.
        ST_DISTANCE(GEOM, EMPTY_GEOM) returns NULL.
2011-09-13 13:59:11 +05:00
..
examples
share gis-related tests fixes. 2011-06-20 00:21:41 +05:00
.cvsignore
add_errmsg
authors.h
client_settings.h
CMakeLists.txt
contributors.h
create_options.cc small enhancement of the create table options feature: 2011-05-10 18:19:11 +02:00
create_options.h small enhancement of the create table options feature: 2011-05-10 18:19:11 +02:00
custom_conf.h
debug_sync.cc
debug_sync.h
derror.cc Changed MariaDB error numbers to start from 1900 to not conflict with MySQL error numbers 2011-05-21 00:46:18 +03:00
des_key_file.cc
discover.cc
event_data_objects.cc merge with 5.1-micro 2011-06-07 18:13:02 +02:00
event_data_objects.h
event_db_repository.cc merge with 5.1-micro 2011-06-07 18:13:02 +02:00
event_db_repository.h
event_parse_data.cc post review changes 2 2011-05-19 19:16:17 +02:00
event_parse_data.h
event_queue.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
event_queue.h
event_scheduler.cc Merge with MariaDB 5.2 2011-05-10 18:17:43 +03:00
event_scheduler.h
events.cc
events.h
field.cc bug 801466 ST_INTERSECTION() returns invalid value on empty intersection in maria-5.3-gis. 2011-09-04 19:11:04 +05:00
field.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
field_conv.cc various fixes for buildbot failures 2011-06-10 15:42:55 +02:00
filesort.cc revert a suggested "optimization" that introduced a bug 2011-06-06 20:28:15 +02:00
frm_crypt.cc
gcalc_slicescan.cc Fix for few similar bugs: 2011-09-13 13:59:11 +05:00
gcalc_slicescan.h Fix for few similar bugs: 2011-09-13 13:59:11 +05:00
gcalc_tools.cc bug 839327 Crash in Gcalc_operation_reducer::end_couple with ST_UNION and MULTIPOLYGONs in 5.3-gis. 2011-09-05 09:49:46 +05:00
gcalc_tools.h PostGIS-style 'same point' handling. 2011-09-01 11:44:56 +05:00
gen_lex_hash.cc
gstream.cc
gstream.h bug 801466 ST_INTERSECTION() returns invalid value on empty intersection in maria-5.3-gis. 2011-09-04 19:11:04 +05:00
ha_ndbcluster.cc
ha_ndbcluster.h
ha_ndbcluster_binlog.cc
ha_ndbcluster_binlog.h
ha_ndbcluster_cond.cc
ha_ndbcluster_cond.h
ha_ndbcluster_tables.h
ha_partition.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
ha_partition.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
handler.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
handler.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
hash_filo.cc
hash_filo.h
hostname.cc
init.cc
item.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
item.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
item_buff.cc
item_cmpfunc.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
item_cmpfunc.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
item_create.cc gis-related tests fixes. 2011-06-20 00:21:41 +05:00
item_create.h Adding support for Dynamic columns (WL#34): 2011-05-08 13:24:06 +03:00
item_func.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
item_func.h Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
item_geofunc.cc Fix for few similar bugs: 2011-09-13 13:59:11 +05:00
item_geofunc.h bug #801199 Infinite recursion in Gcalc_function::count_internal with ST_BUFFER over MULTIPOINT 2011-07-04 16:03:36 +05:00
item_row.cc
item_row.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
item_strfunc.cc various fixes for buildbot failures 2011-06-10 15:42:55 +02:00
item_strfunc.h Merge with dynamic column code 2011-05-12 14:30:34 +03:00
item_subselect.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
item_subselect.h Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
item_sum.cc various fixes for buildbot failures 2011-06-10 15:42:55 +02:00
item_sum.h
item_timefunc.cc bugfixes: 2011-06-09 17:23:39 +02:00
item_timefunc.h merge with 5.1-micro 2011-06-07 18:13:02 +02:00
item_xmlfunc.cc
item_xmlfunc.h
key.cc Fixed compiler warnings and test cases problems found by buildbot 2011-05-11 13:59:17 +03:00
lex.h Adding support for Dynamic columns (WL#34): 2011-05-08 13:24:06 +03:00
lex_symbol.h
lock.cc
log.cc merge with 5.1-micro 2011-06-07 18:13:02 +02:00
log.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
log_event.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
log_event.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
log_event_old.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
log_event_old.h
log_slow.h
Makefile.am
message.h
message.mc
message.rc
mf_iocache.cc
MSG00001.bin
multi_range_read.cc Change optimizer_use_mrr=auto|disable|force 2011-06-03 00:25:58 +04:00
multi_range_read.h
my_decimal.cc merge with 5.1-micro 2011-06-07 18:13:02 +02:00
my_decimal.h merge with 5.1-micro 2011-06-07 18:13:02 +02:00
my_lock.c
mysql_install_db.cc
mysql_priv.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
mysql_upgrade_service.cc - Properly terminate options array with all-zero entry. 2011-05-20 01:38:42 +02:00
mysqld.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
mysqld_suffix.h
net_serv.cc
nt_servc.cc
nt_servc.h
opt_index_cond_pushdown.cc
opt_range.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
opt_range.h Eliminated the member original_cond from the class SQL_SELECT 2011-05-29 20:48:14 -07:00
opt_range_mrr.cc
opt_subselect.cc Merge fix for BUG#778406. 2011-06-17 17:45:41 +04:00
opt_subselect.h Post review fixes of MWL#148 (moving max/min optimization in optimize phase). 2011-05-12 00:14:15 +03:00
opt_sum.cc Merge 2011-05-20 12:47:39 -07:00
opt_table_elimination.cc
parse_file.cc
parse_file.h
partition_element.h
partition_info.cc
partition_info.h
password.c
plistsort.c
procedure.cc
procedure.h
protocol.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
protocol.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
records.cc Merged the code of MWL#106 into 5.3 2011-05-16 22:39:43 -07:00
repl_failsafe.cc
repl_failsafe.h
rpl_constants.h
rpl_filter.cc
rpl_filter.h
rpl_injector.cc
rpl_injector.h
rpl_mi.cc
rpl_mi.h
rpl_record.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
rpl_record.h
rpl_record_old.cc
rpl_record_old.h
rpl_reporting.cc
rpl_reporting.h
rpl_rli.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
rpl_rli.h
rpl_tblmap.cc
rpl_tblmap.h
rpl_utility.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
rpl_utility.h
scheduler.cc
scheduler.h
set_var.cc Merge with Sergei's tree to get in latest microsecond patches and also fixes to innodb_plugin. 2011-06-11 12:04:42 +03:00
set_var.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
slave.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
slave.h
sp.cc
sp.h
sp_cache.cc
sp_cache.h
sp_head.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sp_head.h
sp_pcontext.cc
sp_pcontext.h
sp_rcontext.cc
sp_rcontext.h
spatial.cc bug 801466 ST_INTERSECTION() returns invalid value on empty intersection in maria-5.3-gis. 2011-09-04 19:11:04 +05:00
spatial.h fix for bug #801243 Assertion `(0)' failed in Gis_geometry_collection::init_from_opresult on ST_UNION 2011-06-30 18:18:27 +05:00
sql_acl.cc Merge 2011-05-20 12:47:39 -07:00
sql_acl.h
sql_analyse.cc
sql_analyse.h
sql_array.h
sql_base.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_binlog.cc
sql_bitmap.h Merged the code of MWL#106 into 5.3 2011-05-16 22:39:43 -07:00
sql_builtin.cc.in
sql_cache.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_cache.h Fixed compile failure when we don't use system zlib 2011-06-09 13:35:01 +03:00
sql_class.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_class.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_client.cc
sql_connect.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
sql_crypt.cc
sql_crypt.h
sql_cursor.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_cursor.h
sql_db.cc Rewritten patch of percona - switching query cache on and off, removing comments. 2011-05-18 16:27:19 +03:00
sql_delete.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_derived.cc Fixed LP bug #794038. 2011-06-09 00:13:00 -07:00
sql_do.cc
sql_error.cc
sql_error.h
sql_expression_cache.cc Fixed valgrind problem in expression cache (double opening the table). 2011-05-30 21:35:32 +03:00
sql_expression_cache.h
sql_handler.cc
sql_handler.h
sql_help.cc Merged the code of MWL#106 into 5.3 2011-05-16 22:39:43 -07:00
sql_insert.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_join_cache.cc
sql_join_cache.h
sql_lex.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_lex.h Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_lifo_buffer.h
sql_list.cc
sql_list.h Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_load.cc Merge 2011-05-20 12:47:39 -07:00
sql_locale.cc
sql_manager.cc
sql_map.cc
sql_map.h
sql_olap.cc Merged the code of MWL#106 into 5.3 2011-05-16 22:39:43 -07:00
sql_parse.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_partition.cc
sql_partition.h
sql_plugin.cc Fixed that mysqld --no-defaults --help --verbose doesn't give a lot of irrelevant error messages. 2011-06-07 10:54:37 +03:00
sql_plugin.h
sql_plugin_services.h
sql_prepare.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_profile.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
sql_profile.h
sql_rename.cc Merge with 5.2 2011-05-16 14:05:45 +03:00
sql_repl.cc Merge with 5.2 2011-05-16 14:05:45 +03:00
sql_repl.h
sql_select.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_select.h Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_servers.cc
sql_servers.h
sql_show.cc Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
sql_show.h
sql_sort.h
sql_state.c
sql_string.cc Fix compile errors and warnings and test errors introduced by microseconds push. 2011-05-28 16:57:58 +02:00
sql_string.h Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
sql_table.cc gis-related tests fixes. 2011-06-20 00:21:41 +05:00
sql_tablespace.cc
sql_test.cc
sql_trigger.cc
sql_trigger.h
sql_udf.cc
sql_udf.h
sql_union.cc Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
sql_update.cc Applied Sanja's patch to fix LP bug #784297 in the tree for mwl106. 2011-05-27 00:03:55 -07:00
sql_view.cc Merged the code of MWL#106 into 5.3 2011-05-16 22:39:43 -07:00
sql_view.h
sql_yacc.yy Merged the code of mwl 106 into the latest 5.3 with mwl 90 pushed. 2011-06-04 19:56:06 -07:00
strfunc.cc
structs.h Merge with 5.2 2011-05-16 14:05:45 +03:00
table.cc Added two new flags for the optimizer switch: 2011-06-05 21:54:25 -07:00
table.h Merge of mwl #106 into 5.3. 2011-06-15 21:48:38 -07:00
thr_malloc.cc
time.cc fix for cast of negative numbers to datetime 2011-06-14 18:45:14 +02:00
tzfile.h
tztime.cc merge with 5.1-micro 2011-06-07 18:13:02 +02:00
tztime.h revert a suggested "optimization" that introduced a bug 2011-06-06 20:28:15 +02:00
udf_example.c
udf_example.def
uniques.cc
unireg.cc Merge with 5.1-microseconds 2011-05-28 05:11:32 +03:00
unireg.h merge with 5.1-micro 2011-06-07 18:13:02 +02:00
winservice.c
winservice.h