Commit graph

34589 commits

Author SHA1 Message Date
unknown
419ae6cbf8 Bug #14875: Bad view DEFINER makes SHOW CREATE VIEW fail
When reading a view definition from a .frm file it was
throwing a SQL error if the DEFINER user is not defined.
Changed it to a warning to match the (documented) case
when a view with undefined DEFINER user is created.


mysql-test/r/view_grant.result:
  test case for the bug
mysql-test/t/view_grant.test:
  test case for the bug
sql/sql_acl.cc:
  Initialized the members to no privileges so even if
  the subsequent checks fail it will still initialize
  the security context.
sql/table.cc:
  Turned the error of undefined DEFINER user in reading 
  a view definition to a warning.
2006-05-26 11:49:39 +03:00
unknown
d7743c41c6 BUG#18681: View privileges are broken
The check for view security was lacking several points :
1. Check with the right set of permissions : for each table ref that
participates in a view there were the right credentials to use in it's
security_ctx member, but these weren't used for checking the credentials.
This makes hard enforcing the SQL SECURITY DEFINER|INVOKER property
consistently.
2. Because of the above the security checking for views was just ruled out
in explicit ways in several places.
3. The security was checked only for the columns of the tables that are
brought into the query from a view. So if there is no column reference
outside of the view definition it was not detecting the lack of access to
the tables in the view in SQL SECURITY INVOKER mode.

The fix below tries to fix the above 3 points.


mysql-test/r/grant.result:
  removed nondeterminism (unspecified order) in some test output
mysql-test/r/view_grant.result:
  Somewhat extended test case for the bug and similar queries.
mysql-test/t/grant.test:
  removed nondeterminism (unspecified order) in some test output
mysql-test/t/view_grant.test:
  Somewhat extended test case for the bug and similar queries.
sql/mysql_priv.h:
  A wrapper for setup_tables that also checks access to the tables
sql/sql_acl.cc:
  removed artificial security check stop and used the table ref's credentials.
sql/sql_base.cc:
  a wrapper for setup_tables to check access to the tables
sql/sql_delete.cc:
  wrapper called.
sql/sql_insert.cc:
  wrapper called
sql/sql_load.cc:
  wrapper called
sql/sql_parse.cc:
  wrapper called and artificial check stop removed
sql/sql_select.cc:
  wrapper called
sql/sql_update.cc:
  wrapper called
sql/table.cc:
  Mask table access to the view error as well.
2006-05-26 11:47:53 +03:00
unknown
88d1085984 Merge jmiller@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/ndbdev/jmiller/clones/mysql-5.1-new
2006-05-25 22:37:06 +02:00
unknown
f7f36fc05a Removing ./r/rpl_ndb_dd_partitions.result & ./t/rpl_ndb_dd_partitions.test since NDB only will support key partitions and moving them to the test-extra tree for safe keeping
BitKeeper/deleted/.del-rpl_ndb_dd_partitions.result~9b09a8594e474be5:
  Delete: mysql-test/r/rpl_ndb_dd_partitions.result
BitKeeper/deleted/.del-rpl_ndb_dd_partitions.test~9a3f50999ab31151:
  Delete: mysql-test/t/rpl_ndb_dd_partitions.test
2006-05-25 22:36:03 +02:00
unknown
93be6c2523 ndb - compile fix for Solaris 10 AMD64 -max GCC [ ulonglong != Uint64 ] v5.1
sql/ha_ndbcluster.cc:
  compile fix for Solaris 10 AMD64 -max GCC [ ulonglong != Uint64 ]
2006-05-25 20:00:36 +02:00
unknown
534c553271 ndb - compile fix for Solaris 10 AMD64 -max GCC [ ulonglong != Uint64 ]
sql/ha_ndbcluster.cc:
  compile fix for Solaris 10 AMD64 -max GCC
2006-05-25 18:00:55 +02:00
unknown
20334ba61e Merge bk-internal.mysql.com:/data0/bk/mysql-5.1-new
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt


sql/share/errmsg.txt:
  Auto merged
2006-05-25 17:47:26 +02:00
unknown
2e0f0d2d5c Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/space/pekka/ndb/version/my51
2006-05-25 16:20:36 +02:00
unknown
597ceb3bc0 test fix 2006-05-25 19:20:35 +05:00
unknown
d749d90528 Merge mysql.com:/space/pekka/ndb/version/my51
into  mysql.com:/space/pekka/ndb/version/my51-bug14509


mysql-test/r/ndb_basic.result:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
storage/ndb/include/ndbapi/Ndb.hpp:
  Auto merged
storage/ndb/src/ndbapi/DictCache.cpp:
  Auto merged
storage/ndb/src/ndbapi/DictCache.hpp:
  Auto merged
storage/ndb/src/ndbapi/Ndb.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  Auto merged
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
2006-05-25 16:20:34 +02:00
unknown
644efa51db after merge fix
mysql-test/r/strict.result:
  Auto merged
mysql-test/r/type_ranges.result:
  Auto merged
mysql-test/t/strict.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
mysql-test/r/information_schema.result:
  manual merge
mysql-test/t/information_schema.test:
  manual merge
2006-05-25 19:20:34 +05:00
unknown
52078846fc Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19304
2006-05-25 10:20:33 -04:00
unknown
772b438050 Merge mysql.com:/space/pekka/ndb/version/my50
into  mysql.com:/space/pekka/ndb/version/my50-bug14509
2006-05-25 13:14:16 +02:00
unknown
69c80350dc Merge mysql.com:/space/pekka/ndb/version/my50
into  mysql.com:/space/pekka/ndb/version/my50-bug14509


ndb/src/ndbapi/DictCache.cpp:
  Auto merged
ndb/src/ndbapi/DictCache.hpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2006-05-25 13:08:50 +02:00
unknown
2aa3ff8eb9 ndb - bug#14509 v5.1 part 2/2 : handler level
mysql-test/r/ndb_basic.result:
  put auto-incr range under NDB_SHARE until otherwise decided..
  makes auto-incr process-global per table.  each use requires mutex
mysql-test/t/ndb_alter_table.test:
  put auto-incr range under NDB_SHARE until otherwise decided..
  makes auto-incr process-global per table.  each use requires mutex
sql/ha_ndbcluster.cc:
  put auto-incr range under NDB_SHARE until otherwise decided..
  makes auto-incr process-global per table.  each use requires mutex
sql/ha_ndbcluster.h:
  put auto-incr range under NDB_SHARE until otherwise decided..
  makes auto-incr process-global per table.  each use requires mutex
2006-05-25 12:13:47 +02:00
unknown
779b09b71e Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/kgeorge/mysql/5.0/clean
2006-05-25 13:12:57 +03:00
unknown
7583994185 ndb - bug#14509 v5.1 part 1/2 : ndb api level [requires part 2/2]
storage/ndb/src/ndbapi/ndberror.c:
  delete non-sense error 4336
storage/ndb/include/ndbapi/Ndb.hpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
storage/ndb/src/ndbapi/DictCache.cpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
storage/ndb/src/ndbapi/DictCache.hpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
storage/ndb/src/ndbapi/Ndb.cpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
storage/ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
storage/ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  add auto-incr methods which take explicit Ndb::TupleIdRange & argument
  for NDB API programs the range is under local dict cache (as in 5.0)
  the handler level uses its own Ndb objects and ranges
2006-05-25 12:03:02 +02:00
unknown
10f72d6312 Merge mysql.com:/home/kgeorge/mysql/5.0/clean
into  mysql.com:/home/kgeorge/mysql/5.0/B18742-2
2006-05-25 12:21:42 +03:00
unknown
357eac274b Merge mysql.com:/home/kgeorge/mysql/5.0/clean
into  mysql.com:/home/kgeorge/mysql/5.0/B18742-2
2006-05-25 10:45:24 +03:00
unknown
e61eb7423f Merge mysql.com:/home/kgeorge/mysql/5.0/clean
into  mysql.com:/home/kgeorge/mysql/5.0/B19700


sql/item.h:
  Auto merged
2006-05-25 10:45:00 +03:00
unknown
a2f861f5ad Bug #19700: subselect returning BIGINT always returned it as SIGNED
The unsigned flag in Item was not propagated through the single value subqueries.
This caused the result to be treated as signed.


mysql-test/r/subselect.result:
  Added testcases for bug #19700
mysql-test/t/subselect.test:
  Added testcases for bug #19700
sql/item.h:
  Preserved the unsigned flag in Item_subselect
sql/item_subselect.cc:
  Preserved the unsigned flag in Item_subselect
2006-05-25 10:39:18 +03:00
unknown
a7beb30222 The previous patch fixed the csv engine to support dos, linux, and mac line endings. The patch, however, had
a problem when the table only has a single record in it.  This patch corrects that.

ha_tina.cc:
  Fix problem with previous patch when there is only one record in the table


storage/csv/ha_tina.cc:
  Fix problem with previous patch when there is only one record in the table
2006-05-24 15:41:12 -05:00
unknown
5338b25813 sql_select.cc:
After merge fix


sql/sql_select.cc:
  After merge fix
2006-05-25 00:03:35 +04:00
unknown
6b8eccfbdc review fix 2006-05-24 15:01:03 -04:00
unknown
b6553aacc2 manual merge 2006-05-24 13:57:21 -04:00
unknown
dcf8e0fe50 Merge c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug17455
into  c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19304


sql/ha_partition.cc:
  Auto merged
mysql-test/r/partition.result:
  manual merge
2006-05-24 13:56:23 -04:00
unknown
4280cdc45c Merge rburnett@bk-internal.mysql.com:/home/bk/mysql-5.1-kt
into  big_geek.:D:/work/mysql/mysql-5.1-vc71
2006-05-24 12:46:45 -05:00
unknown
c38308dee2 some small fixups
include/config-win.h:
  force time_t to be 32 bit on Visual C++ 2005 or later
sql/net_serv.cc:
  include winsock after my_global so the time_t #define can take effect
storage/csv/ha_tina.cc:
  fix the csv engine so that it supports DOS, Unix, and Mac line endings
2006-05-24 12:43:03 -05:00
unknown
ed55bc9e6a Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  c-870ae253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug19304


sql/partition_info.cc:
  Auto merged
mysql-test/r/partition.result:
  manual merge
mysql-test/t/partition.test:
  manual merge
sql/share/errmsg.txt:
  manual merge
2006-05-24 13:41:04 -04:00
unknown
301c7e0721 BUG#19304: Merge handler not part of partitioned tables
Review fix


sql/partition_info.cc:
  Review fix
2006-05-24 13:35:52 -04:00
unknown
5c398ce055 Manually merged
mysql-test/r/view.result:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
2006-05-24 20:52:57 +04:00
unknown
39736af1e6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2006-05-24 17:33:12 +03:00
unknown
542631732c Merge monty@192.168.0.9:/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.0


sql/mysqld.cc:
  Auto merged
2006-05-24 17:32:17 +03:00
unknown
8b670ee355 More DBUG statements
Replaced COND_refresh with COND_global_read_lock becasue of a bug in NTPL threads when using different mutexes as arguments to pthread_cond_wait()
The original code caused a hang in FLUSH TABLES WITH READ LOCK in some circumstances because pthread_cond_broadcast() was not delivered to other threads.
This fixes:
Bug#16986: Deadlock condition with MyISAM tables
Bug#20048: FLUSH TABLES WITH READ LOCK causes a deadlock


mysql-test/r/flush.result:
  Added test case for deadlock with FLUSH TABLES WITH READ LOCK
mysql-test/r/lock_multi.result:
  Test for bug in LOCK TABLE + optimize table
mysql-test/t/flush.test:
  Added test case for deadlock with FLUSH TABLES WITH READ LOCK
mysql-test/t/lock_multi.test:
  Test for bug in LOCK TABLE + optimize table
sql/lock.cc:
  Replaced COND_refresh with COND_global_read_lock becasue of a bug in NTPL threads when using different mutexes as arguments to pthread_cond_wait()
  The original code caused a hang in FLUSH TABLES WITH READ LOCK in some circumstances because pthread_cond_broadcast() was not delivered to other threads
sql/mysql_priv.h:
  Added COND_global_read_lock
sql/mysqld.cc:
  Added COND_global_read_lock
sql/sql_base.cc:
  More DBUG statements
  Added a broadcast in remove_table_from_cache() to release any threads waiting in open
2006-05-24 17:21:35 +03:00
unknown
f63e1728f7 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into  april.(none):/home/svoj/devel/mysql/BUG17001/mysql-5.0
2006-05-24 18:42:18 +05:00
unknown
ca4340e68b mtr_misc.pl:
Fix mtr_exe_exists to work on win32


mysql-test/lib/mtr_misc.pl:
  Fix mtr_exe_exists to work on win32
2006-05-24 08:32:08 -05:00
unknown
2380913da8 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1-new
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt


sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-05-24 14:57:44 +02:00
unknown
723eed2401 Merge mysql.com:/data0/mysqldev/my/mysql-5.0.22-release
into  mysql.com:/data0/mysqldev/my/mysql-5.1-release


extra/comp_err.c:
  Auto merged
mysql-test/r/ctype_sjis.result:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
configure.in:
  merged
2006-05-24 14:37:18 +02:00
unknown
6355f74e4d Merge mysql.com:/data0/mysqldev/my/mysql-5.0.17c-release
into  mysql.com:/data0/mysqldev/my/mysql-5.0.22-release


scripts/mysqld_multi.sh:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
configure.in:
  merged
extra/comp_err.c:
  merged
2006-05-24 14:22:36 +02:00
unknown
ce4cab46d8 Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into  april.(none):/home/svoj/devel/mysql/BUG17001/mysql-5.0
2006-05-24 16:59:27 +05:00
unknown
bbb279f81d Merge mysql.com:/opt/local/work/mysql-5.0-root
into  mysql.com:/opt/local/work/mysql-5.0-runtime
2006-05-24 14:54:35 +04:00
unknown
eecb7c944f configure.in:
Update NDB version as well


configure.in:
  Update NDB version as well
2006-05-24 12:30:34 +02:00
unknown
5ec9cff715 configure.in:
Stepped up to 5.0.23


configure.in:
  Stepped up to 5.0.23
2006-05-24 12:28:34 +02:00
unknown
172ad3dea7 configure.in:
Stepped up to 4.1.22


configure.in:
  Stepped up to 4.1.22
2006-05-24 12:20:17 +02:00
unknown
3ebf191662 Merge april.(none):/home/svoj/devel/mysql/BUG12873/mysql-5.0
into  april.(none):/home/svoj/devel/mysql/BUG17001/mysql-5.0
2006-05-24 15:19:48 +05:00
unknown
e1227d2bd1 Merge mysql.com:/data0/mysqldev/my/mysql-4.1.16a-release
into  mysql.com:/data0/mysqldev/my/mysql-5.0.17c-release


tests/mysql_client_test.c:
  Auto merged
configure.in:
  merged
sql/sql_lex.cc:
  merged
2006-05-24 12:19:39 +02:00
unknown
c06d757e8e Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into  april.(none):/home/svoj/devel/mysql/BUG17001/mysql-5.0


sql/sql_table.cc:
  Auto merged
2006-05-24 15:13:49 +05:00
unknown
9972f4bf5d configure.in:
Changed version to 5.0.22


configure.in:
  Changed version to 5.0.22
2006-05-24 11:33:17 +02:00
unknown
d5df934288 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/my/mysql-5.0
2006-05-24 12:09:16 +03:00
unknown
12a0f4ff14 Remove dflt_field from field structure as this was only needed when createing temporary table and I found another soultion that doesn't increase the size of the field structure for all table instances. (Better fix for bug #19089)
Fixed compiler warnings
Fixed valgrind warning in Item_date_add_intervall::eq. (Recoding of bugfix #19490)


sql/field.cc:
  remove dflt_field from field structure (not needed)
  Simple cleanup of code that been copied elsewhere
sql/field.h:
  remove dflt_field from field structure (not needed)
sql/item.h:
  Removed compiler warnings
sql/item_timefunc.cc:
  Fixed Item_date_add_intervall::eq
  The problem was that when we call 'eq' 'this' is not fixed, which means we can't call const_item() or a value function.
  I fixed this so that we check eq for all arguments and that the sign and type are identical.
  (The original code gave a 'accessing uninitialized data' in valgrind.
sql/mysql_priv.h:
  Added default fields to create_tmp_field
sql/sql_insert.cc:
  New default_field parameter to create_tmp_field()
sql/sql_select.cc:
  New default_field parameter to create_tmp_field()
  Use this in create_tmp_table() to set right default value for a field
2006-05-24 11:56:59 +03:00