diff -ur mysql-workbench-community-6.3.2-src.orig/library/mysql.parser/grammar/MySQL.g mysql-workbench-community-6.3.2-src/library/mysql.parser/grammar/MySQL.g --- mysql-workbench-community-6.3.2-src.orig/library/mysql.parser/grammar/MySQL.g 2015-03-09 20:12:48.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/mysql.parser/grammar/MySQL.g 2015-03-28 20:32:33.000000000 +0300 @@ -2794,7 +2794,7 @@ EQUAL_OPERATOR? (int_or_param_marker | DEFAULT_SYMBOL) | (CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL) EQUAL_OPERATOR? INTEGER // Actually only 0 and 1. Same is true for the other INTEGER refs in this rule. | DELAY_KEY_WRITE_SYMBOL EQUAL_OPERATOR? INTEGER - | ROW_FORMAT_SYMBOL EQUAL_OPERATOR? (DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL) + | ROW_FORMAT_SYMBOL EQUAL_OPERATOR? (DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL | TOKUDB_LZMA_SYMBOL | TOKUDB_ZLIB_SYMBOL | TOKUDB_QUICKLZ_SYMBOL | TOKUDB_UNCOMPRESSED_SYMBOL) | UNION_SYMBOL^ EQUAL_OPERATOR? OPEN_PAR_SYMBOL qualified_identifier_list CLOSE_PAR_SYMBOL | DEFAULT_SYMBOL? ( @@ -3678,6 +3678,10 @@ | TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL | TIME_SYMBOL + | TOKUDB_LZMA_SYMBOL + | TOKUDB_ZLIB_SYMBOL + | TOKUDB_QUICKLZ_SYMBOL + | TOKUDB_UNCOMPRESSED_SYMBOL | TYPES_SYMBOL | TYPE_SYMBOL | UDF_RETURNS_SYMBOL @@ -4367,6 +4371,10 @@ TINYINT_SYMBOL: 'TINYINT'; TINYTEXT_SYMBOL: 'TINYTEXT'; TO_SYMBOL: 'TO'; // SQL-2003-R +TOKUDB_LZMA_SYMBOL: 'TOKUDB_LZMA'; +TOKUDB_ZLIB_SYMBOL: 'TOKUDB_ZLIB'; +TOKUDB_QUICKLZ_SYMBOL: 'TOKUDB_QUICKLZ'; +TOKUDB_UNCOMPRESSED_SYMBOL: 'TOKUDB_UNCOMPRESSED'; TRAILING_SYMBOL: 'TRAILING'; // SQL-2003-R TRANSACTION_SYMBOL: 'TRANSACTION'; TRIGGERS_SYMBOL: 'TRIGGERS' { $type = TYPE_FROM_VERSION(50000, $type); }; diff -ur mysql-workbench-community-6.3.2-src.orig/library/mysql.parser/grammar/MySQLSimpleParser.g mysql-workbench-community-6.3.2-src/library/mysql.parser/grammar/MySQLSimpleParser.g --- mysql-workbench-community-6.3.2-src.orig/library/mysql.parser/grammar/MySQLSimpleParser.g 2015-03-09 20:12:48.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/mysql.parser/grammar/MySQLSimpleParser.g 2015-03-28 20:33:33.000000000 +0300 @@ -2579,7 +2579,7 @@ EQUAL_OPERATOR? (int_or_param_marker | DEFAULT_SYMBOL) | (CHECKSUM_SYMBOL | TABLE_CHECKSUM_SYMBOL) EQUAL_OPERATOR? INTEGER // Actually only 0 and 1. Same is true for the other INTEGER refs in this rule. | DELAY_KEY_WRITE_SYMBOL EQUAL_OPERATOR? INTEGER - | ROW_FORMAT_SYMBOL EQUAL_OPERATOR? (DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL) + | ROW_FORMAT_SYMBOL EQUAL_OPERATOR? (DEFAULT_SYMBOL | DYNAMIC_SYMBOL | FIXED_SYMBOL | COMPRESSED_SYMBOL | REDUNDANT_SYMBOL | COMPACT_SYMBOL | TOKUDB_LZMA_SYMBOL | TOKUDB_ZLIB_SYMBOL | TOKUDB_QUICKLZ_SYMBOL | TOKUDB_UNCOMPRESSED_SYMBOL) | UNION_SYMBOL EQUAL_OPERATOR? OPEN_PAR_SYMBOL qualified_identifier_list CLOSE_PAR_SYMBOL | DEFAULT_SYMBOL? ( @@ -3456,6 +3456,10 @@ | TIMESTAMP_ADD_SYMBOL | TIMESTAMP_DIFF_SYMBOL | TIME_SYMBOL + | TOKUDB_LZMA_SYMBOL + | TOKUDB_ZLIB_SYMBOL + | TOKUDB_QUICKLZ_SYMBOL + | TOKUDB_UNCOMPRESSED_SYMBOL | TYPES_SYMBOL | TYPE_SYMBOL | UDF_RETURNS_SYMBOL @@ -3482,4 +3486,4 @@ | XML_SYMBOL | YEAR_SYMBOL ; - \ No newline at end of file + diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/include/lex.h mysql-workbench-community-6.3.2-src/library/sql.parser/include/lex.h --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/include/lex.h 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/include/lex.h 2015-03-28 20:00:31.000000000 +0300 @@ -590,6 +590,10 @@ { "TINYINT", SYM(TINYINT)}, { "TINYTEXT", SYM(TINYTEXT)}, { "TO", SYM(TO_SYM)}, + { "TOKUDB_LZMA", SYM(TOKUDB_LZMA_SYM)}, + { "TOKUDB_ZLIB", SYM(TOKUDB_ZLIB_SYM)}, + { "TOKUDB_QUICKLZ", SYM(TOKUDB_QUICKLZ_SYM)}, + { "TOKUDB_UNCOMPRESSED", SYM(TOKUDB_UNCOMPRESSED_SYM)}, { "TRAILING", SYM(TRAILING)}, { "TRANSACTION", SYM(TRANSACTION_SYM)}, { "TRIGGER", SYM(TRIGGER_SYM)}, diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/source/myx_sql_parser.yy mysql-workbench-community-6.3.2-src/library/sql.parser/source/myx_sql_parser.yy --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/source/myx_sql_parser.yy 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/source/myx_sql_parser.yy 2015-03-28 21:37:23.913785722 +0300 @@ -603,6 +603,10 @@ %token TINYINT %token TINYTEXT %token TO_SYM /* SQL-2003-R */ +%token TOKUDB_LZMA_SYM +%token TOKUDB_ZLIB_SYM +%token TOKUDB_QUICKLZ_SYM +%token TOKUDB_UNCOMPRESSED_SYM %token TRAILING /* SQL-2003-R */ %token TRANSACTION_SYM %token TRIGGERS_SYM @@ -6098,6 +6102,34 @@ $$= mysql_parser::set_ast_node_name($1, sql::_row_types); } } + | TOKUDB_LZMA_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_ZLIB_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_QUICKLZ_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_UNCOMPRESSED_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } ; merge_insert_types: @@ -18893,6 +18925,34 @@ { if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_LZMA_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_ZLIB_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_QUICKLZ_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_UNCOMPRESSED_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); } } diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/source/sql_parser_symbols.h mysql-workbench-community-6.3.2-src/library/sql.parser/source/sql_parser_symbols.h --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/source/sql_parser_symbols.h 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/source/sql_parser_symbols.h 2015-03-28 21:58:32.304453841 +0300 @@ -580,6 +580,10 @@ _TINYINT, _TINYTEXT, _TO_SYM, +_TOKUDB_LZMA_SYM, +_TOKUDB_ZLIB_SYM, +_TOKUDB_QUICKLZ_SYM, +_TOKUDB_UNCOMPRESSED_SYM, _TRAILING, _TRANSACTION_SYM, _TRIGGERS_SYM, diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_gen-tool/sql_yacc.prf mysql-workbench-community-6.3.2-src/library/sql.parser/yy_gen-tool/sql_yacc.prf --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_gen-tool/sql_yacc.prf 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/yy_gen-tool/sql_yacc.prf 2015-03-28 20:24:10.000000000 +0300 @@ -988,7 +1010,11 @@ | DYNAMIC_SYM | COMPRESSED_SYM | REDUNDANT_SYM -| COMPACT_SYM; +| COMPACT_SYM +| TOKUDB_LZMA_SYM +| TOKUDB_ZLIB_SYM +| TOKUDB_QUICKLZ_SYM +| TOKUDB_UNCOMPRESSED_SYM; merge_insert_types: NO_SYM @@ -2135,6 +2161,8 @@ | ORDER_SYM BY gorder_list; +; + gorder_list: gorder_list ',' order_ident order_dir | order_ident order_dir; @@ -3414,6 +3442,10 @@ | TIMESTAMP_ADD | TIMESTAMP_DIFF | TIME_SYM +| TOKUDB_LZMA_SYM +| TOKUDB_ZLIB_SYM +| TOKUDB_QUICKLZ_SYM +| TOKUDB_UNCOMPRESSED_SYM | TYPES_SYM | TYPE_SYM | UDF_RETURNS_SYM diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_gen-tool/sql_yacc.yy mysql-workbench-community-6.3.2-src/library/sql.parser/yy_gen-tool/sql_yacc.yy --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_gen-tool/sql_yacc.yy 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/yy_gen-tool/sql_yacc.yy 2015-03-28 20:20:41.000000000 +0300 @@ -603,6 +603,10 @@ %token TINYINT %token TINYTEXT %token TO_SYM /* SQL-2003-R */ +%token TOKUDB_LZMA_SYM +%token TOKUDB_ZLIB_SYM +%token TOKUDB_QUICKLZ_SYM +%token TOKUDB_UNCOMPRESSED_SYM %token TRAILING /* SQL-2003-R */ %token TRANSACTION_SYM %token TRIGGERS_SYM @@ -6098,6 +6102,34 @@ $$= mysql_parser::set_ast_node_name($1, sql::_row_types); } } + | TOKUDB_LZMA_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_ZLIB_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_QUICKLZ_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } + | TOKUDB_UNCOMPRESSED_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_row_types); + } + } ; merge_insert_types: @@ -18893,6 +18925,34 @@ { if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_LZMA_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_ZLIB_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_QUICKLZ_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { + $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); + } + } + | TOKUDB_UNCOMPRESSED_SYM + { + if (mysql_parser::SqlAstStatics::is_ast_generation_enabled) + { $$= mysql_parser::set_ast_node_name($1, sql::_keyword_sp); } } diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_purify-tool/sql_yacc.prf mysql-workbench-community-6.3.2-src/library/sql.parser/yy_purify-tool/sql_yacc.prf --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_purify-tool/sql_yacc.prf 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/yy_purify-tool/sql_yacc.prf 2015-03-28 20:24:10.000000000 +0300 @@ -1010,7 +1010,11 @@ | DYNAMIC_SYM | COMPRESSED_SYM | REDUNDANT_SYM -| COMPACT_SYM; +| COMPACT_SYM +| TOKUDB_LZMA_SYM +| TOKUDB_ZLIB_SYM +| TOKUDB_QUICKLZ_SYM +| TOKUDB_UNCOMPRESSED_SYM; merge_insert_types: NO_SYM @@ -3438,6 +3442,10 @@ | TIMESTAMP_ADD | TIMESTAMP_DIFF | TIME_SYM +| TOKUDB_LZMA_SYM +| TOKUDB_ZLIB_SYM +| TOKUDB_QUICKLZ_SYM +| TOKUDB_UNCOMPRESSED_SYM | TYPES_SYM | TYPE_SYM | UDF_RETURNS_SYM diff -ur mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_purify-tool/sql_yacc.yy mysql-workbench-community-6.3.2-src/library/sql.parser/yy_purify-tool/sql_yacc.yy --- mysql-workbench-community-6.3.2-src.orig/library/sql.parser/yy_purify-tool/sql_yacc.yy 2015-03-09 20:12:49.000000000 +0300 +++ mysql-workbench-community-6.3.2-src/library/sql.parser/yy_purify-tool/sql_yacc.yy 2015-03-28 20:27:16.000000000 +0300 @@ -1602,6 +1602,10 @@ %token TINYINT %token TINYTEXT %token TO_SYM /* SQL-2003-R */ +%token TOKUDB_LZMA_SYM +%token TOKUDB_ZLIB_SYM +%token TOKUDB_QUICKLZ_SYM +%token TOKUDB_UNCOMPRESSED_SYM %token TRAILING /* SQL-2003-R */ %token TRANSACTION_SYM %token TRIGGERS_SYM @@ -6260,6 +6264,10 @@ | COMPRESSED_SYM { $$= ROW_TYPE_COMPRESSED; } | REDUNDANT_SYM { $$= ROW_TYPE_REDUNDANT; } | COMPACT_SYM { $$= ROW_TYPE_COMPACT; } + | TOKUDB_LZMA_SYM { $$= ROW_TYPE_TOKUDB_LZMA; } + | TOKUDB_ZLIB_SYM { $$= ROW_TYPE_TOKUDB_ZLIB; } + | TOKUDB_QUICKLZ_SYM { $$= ROW_TYPE_TOKUDB_QUICKLZ; } + | TOKUDB_UNCOMPRESSED_SYM { $$= ROW_TYPE_TOKUDB_UNCOMPRESSED; } ; merge_insert_types: @@ -14418,6 +14426,10 @@ | TIMESTAMP {} | TIMESTAMP_ADD {} | TIMESTAMP_DIFF {} + | TOKUDB_LZMA_SYM {} + | TOKUDB_ZLIB_SYM {} + | TOKUDB_QUICKLZ_SYM {} + | TOKUDB_UNCOMPRESSED_SYM {} | TIME_SYM {} | TYPES_SYM {} | TYPE_SYM {}