summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorgkodinov/kgeorge@magare.gmz <>2007-11-27 17:16:52 +0200
committergkodinov/kgeorge@magare.gmz <>2007-11-27 17:16:52 +0200
commit8c3d5135baeba8a418ded32a649ae6ca3f75be3e (patch)
tree85a53cbb4741c611e7582ad13a198792eced866f /include
parent07b83736024d153f16dcf0e8a47daf38f63c7b8a (diff)
downloadmariadb-git-8c3d5135baeba8a418ded32a649ae6ca3f75be3e.tar.gz
Bug #30355: Incorrect ordering of UDF results
There's currently no way of knowing the determinicity of an UDF. And the optimizer and the sequence() UDFs were making wrong assumptions about what the is_const member means. Plus there was no implementation of update_system_tables() causing the optimizer to overwrite the information returned by the <udf>_init function. Fixed by equating the assumptions about the semantics of is_const and providing a implementation of update_used_tables(). Added a TODO item for the UDF API change needed to make a better implementation.
Diffstat (limited to 'include')
-rw-r--r--include/mysql_com.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/mysql_com.h b/include/mysql_com.h
index 889579e3622..fc03d98194b 100644
--- a/include/mysql_com.h
+++ b/include/mysql_com.h
@@ -393,6 +393,10 @@ typedef struct st_udf_init
char *ptr; /* free pointer for function data */
my_bool const_item; /* 0 if result is independent of arguments */
} UDF_INIT;
+/*
+ TODO: add a notion for determinism of the UDF.
+ See Item_udf_func::update_used_tables ()
+*/
/* Constants when using compression */
#define NET_HEADER_SIZE 4 /* standard header size */