dfe2806e37server/core/makefile: added -lmysqld to LDFLAGS so that the tests compile query_classifier/test/canonical_tests/Makefile: Added hint.o to link flags
Markus Makela
2014-09-04 15:44:00 +03:00
d09c5adfc2Merge branch 'rabbitmq_consumer' into rabbitmq_filter_merge
Markus Makela
2014-09-04 15:01:38 +03:00
9c7781e062Merging rabbitmq into Z3
Markus Makela
2014-09-04 15:01:05 +03:00
c00e51fd00Merge branch 'Z3' into Z3_rabbit_partial
Markus Makela
2014-09-04 13:40:26 +03:00
4e11ea9b06Merged some of the rabbitmq branch changes query_classifier.cc: updated skygw_get_table_names to allow for partial or full table names readwritesplit.c: transferred temporary table detection to separate functions
Markus Makela
2014-09-04 13:31:20 +03:00
89a2d1d4c7RabbitMQ consumer client
Markus Makela
2014-09-03 14:02:35 +03:00
6a03976e4fsupport --long options with getopt_long()
Hartmut Holzgraefe
2014-09-03 01:03:10 +02:00
cc5922b218Merge branch 'MAX-237' into Z3
Markus Makela
2014-09-02 16:58:20 +03:00
52f3adbf20fixed temporary tables looking for database drops instead of table drops
Markus Makela
2014-09-01 19:50:25 +03:00
0fed5c2c5bFix to bug #510, http://bugs.skysql.com/show_bug.cgi?id=510, made every MaxScale thread to call mysql_thread_init() before entering poll_waitevents. Also main thread does this before starting services. Removed all calls to mysql_thread_init() and to mysql_thread_end() from elsewhere than from poll.c:poll_waitevents and from gateway.c:main
VilhoRaatikka
2014-09-01 19:37:31 +03:00
a4ae7ea139Fix for bug 493 - Multiple config file sections with the same name
Mark Riddoch
2014-09-01 17:18:15 +01:00
60d6b5b699Fix bugs 484 and 485.
Mark Riddoch
2014-09-01 16:51:05 +01:00
0e53633a37Merge remote-tracking branch 'origin/Z3' into MAX-237
Markus Makela
2014-09-01 13:44:24 +03:00
164d8b1e32Fixed various memory leaks
Markus Makela
2014-09-01 13:40:52 +03:00
20abbbdf57query_classifier.cc:skygw_get_canonical: Fixed bug in how strings were passed to replace_literal function. Changed to use item->str_ptr which stores all strings in the same way unlike item->name in which some string values have double quotation. skygw_utils.cc:Fixed regexp so that it detects literals at the end of line too.
VilhoRaatikka
2014-09-01 13:23:04 +03:00
63d267e5efFix for broken replication
MassimilianoPinto
2014-09-01 11:18:57 +02:00
a17e584adbMerge remote-tracking branch 'origin/Z3' into MAX-237
Markus Makela
2014-09-01 11:05:10 +03:00
067ce3c886removed unneeded QUERY_TYPE_DROP_TABLE type from query_classifier.h
Markus Makela
2014-09-01 10:35:38 +03:00
bc939501e9minor bugfix to memory allocations
Markus Makela
2014-09-01 10:11:04 +03:00
40f85f9cadFix to bug http://bugs.skysql.com/show_bug.cgi?id=488. SHOW VARIABLES was treated as if it was session write command. Instead it is a read-only query. Changed to route that to master.
VilhoRaatikka
2014-08-31 22:56:30 +03:00
58e8c05c8aadded detection of drop table targeting a temporary table
Markus Makela
2014-08-31 20:19:47 +03:00
ecc89a823badded tests for temporary tables
Markus Makela
2014-08-31 19:30:00 +03:00
45faa38877added temporary table detection for reads
Markus Makela
2014-08-30 19:51:59 +03:00
7629c455a6partial implementation
Markus Makela
2014-08-30 08:27:05 +03:00
877442c941Addition of periodic task execution via the housekeeper thread
Mark Riddoch
2014-08-29 16:53:05 +01:00
7ea53f0141Merge remote-tracking branch 'origin/MAX-160' into MAX-237
Markus Makela
2014-08-29 11:02:03 +03:00
531d8d7b47query_classifier.cc: added detection for CREATE TEMPORARY TABLE and setting a new query type QUERY_TYPE_CREATE_TMP_TABLE for it. query_classifier.h: added QUERY_TYPE_CREATE_TMP_TABLE and QUERY_TYPE_READ_TMP_TABLE for use of temporary table support. hashtable.c:Added variant of hashtable which is 'flat', that is, stored to existing memory instead of allocating memory as a part of the call. Existing function declarations don't change but added hashtable_alloc_flat for the purpose. Both hashtable_alloc and hashtable_alloc_flat now call the real allocation function, hashtable_alloc_real. hashtable_free only frees memory which is allocated in hashtable_alloc_real. hashtable.h: added a flag to HASHTABLE struct to indicate whether hashtable owns its memory or not. readwritesplit.h: Added RSES_PROP_TYPE_TMPTABLES property type to be used for keeping the hashtable for tablenames. readwritesplit.c: Added comments about temporary table support implementation.
VilhoRaatikka
2014-08-29 10:08:48 +03:00
cf55f271f0Add file left off last commit
Mark Riddoch
2014-08-28 11:42:29 +01:00
81e1dd8719Merge branch 'develop' into blr
Mark Riddoch
2014-08-28 11:41:26 +01:00
eed40fef75Extend hashtable scripts, fix hashtable with size of less than 1; correct text in spinlock tests.
counterpoint
2014-08-27 09:31:34 +01:00
25c5d1af25fixed some warnings about const -> non-const conversions
Hartmut Holzgraefe
2014-08-26 18:25:28 +02:00
584d3039badcb_remove_callback() still had the old callback prototype
Hartmut Holzgraefe
2014-08-26 18:20:59 +02:00
cf5821d4efAdded expected results for missing queries.
VilhoRaatikka
2014-08-26 11:14:51 +03:00
69104d7deeskygw_utils.cc:replace_literal: Fixed regular expression which, for example, accepted "200" with needle "2" query_classifier.cc: fixed invalid argument list in logging command. input.sql: added a few previously failed cases for canonical query test
VilhoRaatikka
2014-08-26 11:08:05 +03:00
c5fbb1f295query_classifier.cc:parsing_info_done: calling mysql_thread_end caused segfauls when same thread tried next time call free_embedded_thd because thread's sysvar was set to NULL in mysql_thread_end. Added a few lines to canonical query test's input script which are not handled correctly.
VilhoRaatikka
2014-08-25 22:17:21 +03:00
4ab7112db7more test cases for canonical queries and makefile typo fixes
Markus Makela
2014-08-25 15:09:33 +03:00
2694c69186Merge pull request #30 from skysql/canonical_query_tests
markus456
2014-08-25 09:48:16 +03:00
662b4b00eethe errmsg.sys file is now copied during test building
Markus Makela
2014-08-22 20:50:54 +03:00
73707cc9dacanonical query tests for query classifier
Markus Makela
2014-08-22 20:44:26 +03:00
ee52ac64a9query_classifier.cc:skygw_get_canonical: if the item to be replaced is an empty string "", it is processed differently from the other cases due to difficulties to get wanted result by adding special rule for that to regex. query_classifier.h: added parsing information structure to query classifier away from buffer.h. buffer.c:introduced a buffer object which includes object pointer and a clean-up call-back function. Buffer objects form a list which is cleaned up by the last referrer of the buffer, as a part of gwbuf_free. Buffer object list is protected by a spinlock gwbuf_lock. Also added identifier type, bufobj_id_t which is enumerated type and currently includes one value only, GWBUF_PARSING_INFO. Added also a bitfield for information about the buffer. It currently has one type only, GWBUF_INFO_PARSED indicating that buffer content is parsed and there is buffer object of type GWBUF_PARSING_INFO. skygw_utils.cc:replace_literal:changed regexec matching to case insensitive because user-defined literals are sometimes converted to upper-case ones.
VilhoRaatikka
2014-08-22 19:01:56 +03:00
493feb49baFix for bug 410 - MaxScale.cnf server option is not parsed for spaces
Mark Riddoch
2014-08-22 14:46:26 +01:00
c133c6ef4aFix for bug 479 - Undefined filter reference in MaxScale.cnf causes a crash
Mark Riddoch
2014-08-22 14:33:14 +01:00
3476558f52Fixed soem errors from a cppcheck run
Mark Riddoch
2014-08-22 14:25:27 +01:00
40c2846887Merge branch 'develop' into release-1.0beta
Mark Riddoch
2014-08-22 13:34:00 +01:00
3bc88e4eb9skygw_get_canonical didn't return NULL pointerin cases where parsing info didn't exist or something went wrong.
VilhoRaatikka
2014-08-21 23:31:23 +03:00
3a5b8ef64cquery_classifier.cc: cleaned up and simplified skygw_get_canonical skygw_util.cc:fixed memory allocation issue where terminating byte wasn't counted. Added some error checks.
VilhoRaatikka
2014-08-21 23:08:21 +03:00
fa2189373dquery_classifier.cc: query_is_parsed is now global function and can be used to check whether parsing information already exists in the buffer. skygw_utils.cc: removed replace_str and implemented replace_literal which replaces user-provided literals in query with predefined string "?". Replacing is done one by one, so it is suboptimal ipmlementation since all literals could be passed to replacement function in one call and processed all before returning.
VilhoRaatikka
2014-08-21 22:28:23 +03:00
c501d4d4e1Changes related to canonical query format implementation. query_classifier.cc: Now query can be parsed outside query_classifier_get_type by calling function parse_query. It creates parsing_info_t struct which is then added to the GWBUF which also includes the query. Parsing information follows the buffered query and it is freed at the same time with query buffer, in gwbuf_free. buffer.c: additions of parsing information to gwbuf struct. modutil.c: added function which returns query from GWBUF in plain text string. readwritesplit.c:routeQuery now only calls query_classifier_get_type to get the query type instead of extracting plain text query from the GWBUF buffer.
VilhoRaatikka
2014-08-20 22:10:36 +03:00
a853b72bafModify build_gateway.inc so that variables are used, thus avoiding a need for editing. Please review the file to see the variables that are used - they should be obvious.
counterpoint
2014-08-20 17:22:32 +01:00
65b25a825aAddition of adminusers unit test Fix to filters unit test
Mark Riddoch
2014-08-20 14:50:44 +01:00
c432d052e5Merge pull request #29 from skysql/null_filter_fix
Vilho Raatikka
2014-08-20 15:37:05 +03:00
baa655182cMerge branch 'master' into develop
Mark Riddoch
2014-08-20 11:07:55 +01:00
24e16e97edUpdates for unit tests
Mark Riddoch
2014-08-20 11:07:28 +01:00
d6a2ef6996Misc fixes to doxygen comments
Mark Riddoch
2014-08-19 13:22:40 +01:00
13dfd34d5dTest use for cacnonical query function. Effective in debug build only.
VilhoRaatikka
2014-08-19 09:39:40 +03:00
fb3a950a18Completed skygw_get_canonical by adding NULL checks and debug assertions. Replacable literal types are now INT_ITEM, STRING_ITEM, DECIMAL_ITEM, REAL_ITEM, VARBIN_ITEM and NULL_ITEM.
VilhoRaatikka
2014-08-19 09:07:18 +03:00
3dc09dfe43Addition of spinlock unit test
Mark Riddoch
2014-08-18 18:26:14 +01:00
544e64a301query_classifier: implemented skygw_get_canonical which returns a copy of original string with given substrings being replaced with questionmarks. skygw_utils.cc: added string replacement function for use of skygw_get_canonical
VilhoRaatikka
2014-08-18 14:19:46 +03:00