mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 02:05:57 +01:00
b388eb004d
bmove_allign -> bmove_align Added OLAP function ROLLUP Split mysql_fix_privilege_tables to a script and a .sql data file Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects. Added table_alias_charset, for easier --lower-case-table-name handling Better SQL_MODE handling (Setting complex options also sets sub options) New (faster) assembler string functions for x86 BitKeeper/etc/ignore: added libmysqld/sql_state.c client/mysql.cc: Added SQLSTATE to error messages Added new function put_error() to be able to clean up some old code. client/mysqltest.c: Write ERROR SQLSTATE for all errors dbug/dbug.c: Portability fixes include/m_string.h: Rename bmove_allign as bmove_align include/mysql.h: Added SQLSTATE (for embedded version) include/mysql_com.h: Send correct SQLSTATE for the error to the client libmysql/libmysql.c: Changed default error state to HY000 Applied code cleanup patch libmysqld/Makefile.am: Added sql_state.cc libmysqld/libmysqld.c: Added sqlstate mysql-test/r/analyse.result: Updated results mysql-test/r/ansi.result: Updated results mysql-test/r/auto_increment.result: Updated results mysql-test/r/bdb-deadlock.result: Updated results mysql-test/r/bdb.result: Updated results mysql-test/r/comments.result: Updated results mysql-test/r/create.result: Updated results mysql-test/r/ctype_collate.result: Updated results mysql-test/r/delayed.result: Updated results mysql-test/r/delete.result: Updated results mysql-test/r/derived.result: Updated results mysql-test/r/distinct.result: Updated results mysql-test/r/drop.result: Updated results mysql-test/r/err000001.result: Updated results mysql-test/r/explain.result: Updated results mysql-test/r/flush.result: Updated results mysql-test/r/fulltext.result: Updated results mysql-test/r/func_gconcat.result: Updated results mysql-test/r/func_system.result: Updated results mysql-test/r/grant_cache.result: Updated results mysql-test/r/group_by.result: Updated results mysql-test/r/handler.result: Updated results mysql-test/r/heap.result: Updated results mysql-test/r/heap_btree.result: Updated results mysql-test/r/heap_hash.result: Updated results mysql-test/r/innodb.result: Updated results mysql-test/r/innodb_handler.result: Updated results mysql-test/r/insert_select.result: Updated results mysql-test/r/insert_update.result: Updated results mysql-test/r/join.result: Updated results mysql-test/r/join_outer.result: Updated results mysql-test/r/key.result: Updated results mysql-test/r/lock.result: Updated results mysql-test/r/lock_multi.result: Updated results mysql-test/r/merge.result: Updated results mysql-test/r/multi_update.result: Updated results mysql-test/r/myisam.result: Updated results mysql-test/r/null.result: Updated results mysql-test/r/olap.result: Updated results mysql-test/r/order_by.result: Updated results mysql-test/r/packet.result: Updated results mysql-test/r/query_cache.result: Updated results mysql-test/r/row.result: Updated results mysql-test/r/rpl000001.result: Updated results mysql-test/r/rpl000009.result: Updated results mysql-test/r/rpl_empty_master_crash.result: Updated results mysql-test/r/rpl_log.result: Updated results mysql-test/r/rpl_replicate_do.result: Updated results mysql-test/r/rpl_rotate_logs.result: Updated results mysql-test/r/select.result: Updated results mysql-test/r/select_safe.result: Updated results mysql-test/r/show_check.result: Updated results mysql-test/r/sql_mode.result: Updated results mysql-test/r/subselect.result: Updated results mysql-test/r/temp_table.result: Updated results mysql-test/r/truncate.result: Updated results mysql-test/r/type_blob.result: Updated results mysql-test/r/type_decimal.result: Updated results mysql-test/r/type_float.result: Updated results mysql-test/r/type_ranges.result: Updated results mysql-test/r/union.result: Updated results mysql-test/r/update.result: Updated results mysql-test/r/user_var.result: Updated results mysql-test/r/varbinary.result: Updated results mysql-test/r/variables.result: Updated results mysql-test/t/ansi.test: Test of sql_mode mysql-test/t/derived.test: Updated results mysql-test/t/func_system.test: Make this independen of the MySQL server name mysql-test/t/lowercase_table.test: Cleanup mysql-test/t/olap.test: A lot of new tests mysql-test/t/sql_mode.test: More test for sql_mode mysql-test/t/subselect.test: Added a few new tests (to find a bug in the item_ref code) scripts/Makefile.am: Added mysql_fix_privilege_tables.sql scripts/mysql_fix_privilege_tables.sh: Totally new script. This bascily just pipes mysql_fix_privilege_tables.sql through 'mysql' to 'mysqld' sql/Makefile.am: Added sql_state.cc sql/item.cc: Extended Item_field::eq() to be able to better match GROUP BY fields on the command line. Needed for ROLLUP sql/item.h: Added function to be able to avoid calling current_thd() when doing new Item. sql/item_sum.cc: Moved copy_or_same() and some reset() functions from item_sum.h Needed to be able to access thd->mem_root. sql/item_sum.h: Moved some functions to item_sum.cc Added make_unique() for ROLLUP sql/item_uniq.h: Fixed return value sql/mysql_priv.h: Updated MODE flags sql/mysqld.cc: Added ANSI as it's own mode Moved charset_info variables here Cleaned up handler_count handling (for NT) Added table_alias_charset, for easier --lower-case-table-name handling sql/net_serv.cc: New comment sql/protocol.cc: Send SQLSTATE to client sql/set_var.cc: Better SQL_MODE handling (Setting complex options also sets sub options) sql/set_var.h: Better SQL_MODE handling sql/sql_base.cc: Make alias depend on --lower-case-table-names Make find_item_in_list also check database name sql/sql_cache.cc: Indentation cleanup sql/sql_list.h: Added safety assert Addes support of alloc without current_thd() sql/sql_prepare.cc: Update after prototype change sql/sql_select.cc: Added ROLLUP sql/sql_select.h: structures for rollup sql/sql_show.cc: Easier SQL_MODE handling sql/sql_string.cc: Move CHARSET_INFO to mysqld (to be together with all other global variables) sql/sql_string.h: Added function to be able to avoid calling current_thd() when doing new Item. sql/sql_table.cc: Simpler --lower-case-table-name handling sql/sql_union.cc: Update after prototype change sql/sql_yacc.yy: ROLLUP sql/unireg.h: bmove_allign ->bmove_align strings/Makefile.am: Fix to be able to compile str_test.c strings/ctype.c: Removed empty lines strings/str_test.c: Added test of bmove_align strings/strings-x86.s: Faster bmove_align, bmove_upp and strmake strings/strings.asm: move_allg
164 lines
6.2 KiB
C
164 lines
6.2 KiB
C
/* Copyright (C) 2000-2003 MySQL AB
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
|
|
|
/*
|
|
This file includes a mapping from mysql_errno.h to sql_state (as used by
|
|
MyODBC) and jdbc_state.
|
|
It's suitable to include into a C struct for further processing
|
|
|
|
The first column is the mysqld server error (declared in mysqld_error.h),
|
|
the second column is the ODBC state (which the 4.1 server sends out by
|
|
default) and the last is the state used by the JDBC driver.
|
|
If the last column is "" then it means that the JDBC driver is using the
|
|
ODBC state
|
|
|
|
The errors in this file is sorted in the same order as in mysqld_error.h
|
|
to allow on to do binary searches for the sqlstate.
|
|
*/
|
|
|
|
ER_DUP_KEY, "23000", "",
|
|
ER_OUTOFMEMORY, "HY001", "S1001",
|
|
ER_OUT_OF_SORTMEMORY, "HY001", "S1001",
|
|
ER_CON_COUNT_ERROR, "08004", "",
|
|
ER_BAD_HOST_ERROR, "08S01", "",
|
|
ER_HANDSHAKE_ERROR, "08S01", "",
|
|
ER_DBACCESS_DENIED_ERROR, "42000", "",
|
|
ER_ACCESS_DENIED_ERROR, "42000", "28000",
|
|
ER_NO_DB_ERROR, "42000", "",
|
|
ER_UNKNOWN_COM_ERROR, "08S01", "",
|
|
ER_BAD_NULL_ERROR, "23000", "",
|
|
ER_BAD_DB_ERROR, "42000", "",
|
|
ER_TABLE_EXISTS_ERROR, "42S01", "",
|
|
ER_BAD_TABLE_ERROR, "42S02", "",
|
|
ER_NON_UNIQ_ERROR, "23000", "",
|
|
ER_SERVER_SHUTDOWN, "08S01", "",
|
|
ER_BAD_FIELD_ERROR, "42S22", "S0022",
|
|
ER_WRONG_FIELD_WITH_GROUP, "42000", "S1009",
|
|
ER_WRONG_GROUP_FIELD, "42000", "S1009",
|
|
ER_WRONG_SUM_SELECT, "42000", "S1009",
|
|
ER_WRONG_VALUE_COUNT, "21S01", "",
|
|
ER_TOO_LONG_IDENT, "42000", "S1009",
|
|
ER_DUP_FIELDNAME, "42S21", "S1009",
|
|
ER_DUP_KEYNAME, "42000", "S1009",
|
|
ER_DUP_ENTRY, "23000", "S1009",
|
|
ER_WRONG_FIELD_SPEC, "42000", "S1009",
|
|
ER_PARSE_ERROR, "42000", "",
|
|
ER_EMPTY_QUERY, "42000" , "",
|
|
ER_NONUNIQ_TABLE, "42000", "S1009",
|
|
ER_INVALID_DEFAULT, "42000", "S1009",
|
|
ER_MULTIPLE_PRI_KEY, "42000", "S1009",
|
|
ER_TOO_MANY_KEYS, "42000", "S1009",
|
|
ER_TOO_MANY_KEY_PARTS, "42000", "S1009",
|
|
ER_TOO_LONG_KEY, "42000", "S1009",
|
|
ER_KEY_COLUMN_DOES_NOT_EXITS, "42000", "S1009",
|
|
ER_BLOB_USED_AS_KEY, "42000", "S1009",
|
|
ER_TOO_BIG_FIELDLENGTH, "42000", "S1009",
|
|
ER_WRONG_AUTO_KEY, "42000", "S1009",
|
|
ER_FORCING_CLOSE, "08S01", "",
|
|
ER_IPSOCK_ERROR, "088S01", "",
|
|
ER_NO_SUCH_INDEX, "42S12", "S1009",
|
|
ER_WRONG_FIELD_TERMINATORS, "42000", "S1009",
|
|
ER_BLOBS_AND_NO_TERMINATED, "42000", "S1009",
|
|
ER_CANT_REMOVE_ALL_FIELDS, "42000", "",
|
|
ER_CANT_DROP_FIELD_OR_KEY, "42000", "",
|
|
ER_BLOB_CANT_HAVE_DEFAULT, "42000", "",
|
|
ER_WRONG_DB_NAME, "42000", "",
|
|
ER_WRONG_TABLE_NAME, "42000", "",
|
|
ER_TOO_BIG_SELECT, "42000", "",
|
|
ER_UNKNOWN_PROCEDURE, "42000", "",
|
|
ER_WRONG_PARAMCOUNT_TO_PROCEDURE, "42000", "",
|
|
ER_UNKNOWN_TABLE, "42S02", "",
|
|
ER_FIELD_SPECIFIED_TWICE, "42000", "",
|
|
ER_UNSUPPORTED_EXTENSION, "42000", "",
|
|
ER_TABLE_MUST_HAVE_COLUMNS, "42000", "",
|
|
ER_UNKNOWN_CHARACTER_SET, "42000", "",
|
|
ER_TOO_BIG_ROWSIZE, "42000", "",
|
|
ER_STACK_OVERRUN, "HY000", "",
|
|
ER_WRONG_OUTER_JOIN, "42000", "",
|
|
ER_NULL_COLUMN_IN_INDEX, "42000", "",
|
|
ER_PASSWORD_ANONYMOUS_USER, "42000", "",
|
|
ER_PASSWORD_NOT_ALLOWED, "42000", "",
|
|
ER_PASSWORD_NO_MATCH, "42000", "",
|
|
ER_WRONG_VALUE_COUNT_ON_ROW, "21S01", "",
|
|
ER_INVALID_USE_OF_NULL, "42000", "",
|
|
ER_REGEXP_ERROR, "42000", "",
|
|
ER_MIX_OF_GROUP_FUNC_AND_FIELDS,"42000", "",
|
|
ER_NONEXISTING_GRANT, "42000", "",
|
|
ER_TABLEACCESS_DENIED_ERROR, "42000", "",
|
|
ER_COLUMNACCESS_DENIED_ERROR, "42000", "",
|
|
ER_ILLEGAL_GRANT_FOR_TABLE, "42000", "",
|
|
ER_GRANT_WRONG_HOST_OR_USER, "42000", "",
|
|
ER_NO_SUCH_TABLE, "42S02", "",
|
|
ER_NONEXISTING_TABLE_GRANT, "42000", "",
|
|
ER_NOT_ALLOWED_COMMAND, "42000", "",
|
|
ER_SYNTAX_ERROR, "42000", "",
|
|
ER_ABORTING_CONNECTION, "08S01", "",
|
|
ER_NET_PACKET_TOO_LARGE, "08S01", "",
|
|
ER_NET_READ_ERROR_FROM_PIPE, "08S01", "",
|
|
ER_NET_FCNTL_ERROR, "08S01", "",
|
|
ER_NET_PACKETS_OUT_OF_ORDER, "08S01", "",
|
|
ER_NET_UNCOMPRESS_ERROR, "08S01", "",
|
|
ER_NET_READ_ERROR, "08S01", "",
|
|
ER_NET_READ_INTERRUPTED, "08S01", "",
|
|
ER_NET_ERROR_ON_WRITE, "08S01", "",
|
|
ER_NET_WRITE_INTERRUPTED, "08S01", "",
|
|
ER_TOO_LONG_STRING, "42000", "",
|
|
ER_TABLE_CANT_HANDLE_BLOB, "42000", "",
|
|
ER_TABLE_CANT_HANDLE_AUTO_INCREMENT, "42000", "",
|
|
ER_WRONG_COLUMN_NAME, "42000", "",
|
|
ER_WRONG_KEY_COLUMN, "42000", "",
|
|
ER_DUP_UNIQUE, "23000", "",
|
|
ER_BLOB_KEY_WITHOUT_LENGTH, "42000", "",
|
|
ER_PRIMARY_CANT_HAVE_NULL, "42000", "",
|
|
ER_TOO_MANY_ROWS, "42000", "",
|
|
ER_REQUIRES_PRIMARY_KEY, "42000", "",
|
|
ER_CHECK_NO_SUCH_TABLE, "42000", "",
|
|
ER_CHECK_NOT_IMPLEMENTED, "42000", "",
|
|
ER_CANT_DO_THIS_DURING_AN_TRANSACTION, "25000", "",
|
|
ER_ERROR_DURING_COMMIT, "HY000", "",
|
|
ER_ERROR_DURING_ROLLBACK, "HY000", "",
|
|
ER_NEW_ABORTING_CONNECTION, "08S01", "",
|
|
ER_MASTER_NET_READ, "08S01", "",
|
|
ER_MASTER_NET_WRITE, "08S01", "",
|
|
ER_TOO_MANY_USER_CONNECTIONS, "42000", "",
|
|
ER_READ_ONLY_TRANSACTION, "25000", "",
|
|
ER_NO_PERMISSION_TO_CREATE_USER,"42000", "",
|
|
ER_LOCK_DEADLOCK, "40001", "",
|
|
ER_NO_REFERENCED_ROW, "23000", "",
|
|
ER_ROW_IS_REFERENCED, "23000", "",
|
|
ER_CONNECT_TO_MASTER, "08S01", "",
|
|
ER_WRONG_NUMBER_OF_COLUMNS_IN_SELECT,"21000", "",
|
|
ER_USER_LIMIT_REACHED, "42000", "",
|
|
ER_NO_DEFAULT, "42000", "",
|
|
ER_WRONG_VALUE_FOR_VAR, "42000", "",
|
|
ER_WRONG_TYPE_FOR_VAR, "42000", "",
|
|
ER_CANT_USE_OPTION_HERE, "42000", "",
|
|
ER_NOT_SUPPORTED_YET, "42000", "",
|
|
ER_WRONG_FK_DEF, "42000", "",
|
|
ER_CARDINALITY_COL, "21000", "",
|
|
ER_SUBSELECT_NO_1_ROW, "21000", "",
|
|
ER_ILLEGAL_REFERENCE, "42S22", "",
|
|
ER_DERIVED_MUST_HAVE_ALIAS, "42000", "",
|
|
ER_SELECT_REDUCED, "01000", "",
|
|
ER_TABLENAME_NOT_ALLOWED_HERE, "42000", "",
|
|
ER_NOT_SUPPORTED_AUTH_MODE, "08004", "",
|
|
ER_SPATIAL_CANT_HAVE_NULL, "42000", "",
|
|
ER_COLLATION_CHARSET_MISMATCH, "42000", "",
|
|
ER_WARN_TOO_FEW_RECORDS, "01000", "",
|
|
ER_WARN_TOO_MANY_RECORDS, "01000", "",
|
|
ER_WARN_NULL_TO_NOTNULL, "01000", "",
|
|
ER_WARN_DATA_OUT_OF_RANGE, "01000", "",
|
|
ER_WARN_DATA_TRUNCATED, "01000", "",
|