An error occurred fetching the project authors.
  1. 03 Mar, 2009 1 commit
  2. 11 Feb, 2009 1 commit
  3. 10 Dec, 2007 1 commit
  4. 07 Dec, 2007 1 commit
    • unknown's avatar
      Bug #27440 read_only allows create and drop database · fe20b370
      unknown authored
      When read_only option was enabled, a user without SUPER privilege could
      perform CREATE DATABASE and DROP DATABASE operations.
      
      This patch adds a check to make sure this isn't possible. It also attempts to 
      simplify the logic used to determine if relevant tables are updated,
      making it more human readable.
      
      
      mysql-test/r/read_only.result:
        Updated result file
      mysql-test/t/read_only.test:
        A test case is added which shows that it is not possible to drop or create a
        database in read-only mode despite having the GRANT permissions to do so,
        SUPER user excepted.
      sql/sql_parse.cc:
        - Simplified complex predicate by grouping it in a read friendly way.
        - Added predicate to fail on database updates while running in read-only
          mode.
      fe20b370
  5. 12 Dec, 2006 1 commit
    • unknown's avatar
      Post-merge fixes. · 6716f6d5
      unknown authored
      mysql-test/r/read_only.result:
        A post-merge fix: update results.
      server-tools/instance-manager/guardian.cc:
        Remove initialization of a non-existent member.
      6716f6d5
  6. 21 Nov, 2006 1 commit
    • unknown's avatar
      WL#3602 (SET GLOBAL READONLY) · 61f15bca
      unknown authored
      Bug#11733 (COMMITs should not happen if read-only is set)
      Bug#22009 (Can write to a read-only server under some circumstances)
      
      See the work log for details
      
      The change consist of
      a) acquiring the global read lock in SET GLOBAL READONLY
      b) honoring opt_readonly in ha_commit_trans(),
      c) honoring opt_readonly in mysql_lock_tables().
      
      a) takes care of the server stability,
      b) makes the transactional tables safe (Bug 11733)
      c) makes the non transactional tables safe (Bug 22009)
      
      
      mysql-test/r/read_only.result:
        WL#3602 (SET GLOBAL READONLY)
      mysql-test/t/read_only.test:
        WL#3602 (SET GLOBAL READONLY)
      sql/handler.cc:
        WL#3602 (SET GLOBAL READONLY)
      sql/lock.cc:
        WL#3602 (SET GLOBAL READONLY)
      sql/set_var.cc:
        WL#3602 (SET GLOBAL READONLY)
      sql/set_var.h:
        WL#3602 (SET GLOBAL READONLY)
      mysql-test/r/read_only_innodb.result:
        WL#3602 (SET GLOBAL READONLY)
      mysql-test/t/read_only_innodb.test:
        WL#3602 (SET GLOBAL READONLY)
      61f15bca
  7. 20 Nov, 2006 1 commit
    • unknown's avatar
      Fix for bug #22077 "DROP TEMPORARY TABLE fails with wrong error if read_only is set" · 66abbaab
      unknown authored
      Do not issue a 'read-only' error in case of DROP TEMPORARY TABLE on a non-existing temporary table.
      Instead produce the correct "Unknown table" error or warning (in cases when the IF EXISTS clause was specified).
      
      To a documentor: the part of the manual describing the 'read_only' system variable should be clarified to state the following:
      "When the read_only variable is set to ON, all operations which create/update/drop tables are rejected with the exceptions for:
      1. Any operation performed by the replication thread on a slave server
      2. Any operation performed by a user that have the SUPER privilege
      3. Any operation that creates/updates/drops only temporary tables"
      
      
      mysql-test/r/read_only.result:
        Added testcases for bug #22077 "DROP TEMPORARY TABLE fails with wrong error if read_only is set"
      mysql-test/t/read_only.test:
        Added testcases for bug #22077 "DROP TEMPORARY TABLE fails with wrong error if read_only is set"
      sql/sql_parse.cc:
        Before issuing the 'read-only' error also check if the operation is not a DROP TEMPORARY TABLE statement
      66abbaab
  8. 26 Jan, 2006 1 commit
    • unknown's avatar
      Add new option "check-testcases" to mysql-test-run.pl · f64c2772
      unknown authored
      Cleanup the sideeffects from most of the  testcases with sideeffects.
      
      
      mysql-test/mysql-test-run.pl:
        Add option "check-testcases" to mysql-test-run.pl
        Will execute "include/check-testcase.test" once before each tescase and record the output into "var/tmp/check-testcase.result"
        After the teastcase it will run again and this time compare the output with previously recorded file.
      mysql-test/r/analyze.result:
        Drop table t1 at end of test
      mysql-test/r/create_select_tmp.result:
        Drop table t1 at end of test
      mysql-test/r/ctype_cp932.result:
        Drop table t1 at end of test
      mysql-test/r/ctype_recoding.result:
        Drop table t1 at end of test
      mysql-test/r/grant2.result:
        Drop user mysqltest_2 and mysqltest_A@'%'
      mysql-test/r/join_outer.result:
        Drop view v1 to cleanup
      mysql-test/r/ps_1general.result:
        Drop table t1 at end of test
      mysql-test/r/query_cache.result:
        Drop function "f1"
      mysql-test/r/read_only.result:
        Reset the "read_only" flag
      mysql-test/r/rpl000001.result:
        Remove user "blafasel2"
      mysql-test/r/rpl000017.result:
        Remove user "replicate"
      mysql-test/r/rpl_failed_optimize.result:
        Drop table t1 to cleanup
      mysql-test/r/rpl_flush_tables.result:
        Drop tables t3, t4, t5
      mysql-test/r/rpl_ignore_revoke.result:
        Delete user "user_foo"
      mysql-test/r/rpl_insert_id.result:
        Drop table t1 to cleanup
      mysql-test/r/rpl_loaddata.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_loaddata_rule_m.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_loaddata_rule_s.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_misc_functions.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_multi_update3.result:
        Drop tyable t1 and t2 to cleanup
      mysql-test/r/rpl_replicate_do.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_skip_error.result:
        Drop tyable t1 to cleanup
      mysql-test/r/rpl_slave_status.result:
        Drop tyable t1 to cleanup
      mysql-test/r/sp-prelocking.result:
        Drop view v1 and tables t1, t2, t3 and t4 to cleanup
      mysql-test/r/sp-security.result:
        Delete users to cleanup
        Delete remaining traces in tables_priv and procs_priv
      mysql-test/r/subselect_innodb.result:
        Drop procedure p1 to cleanup
      mysql-test/r/trigger-compat.result:
        Drop trigger wl2818_trg1 and wl2818_trg2.
        Drop table t1, t2
        Drop database mysqltest_db1
        And the users "mysqltest_dfn@localhost" and "mysqltest_inv@localhost"
      mysql-test/r/type_bit.result:
        Drop tables t1 and t2 to cleanup
      mysql-test/r/variables.result:
        Set GLOBAL max_join_size to 10 as it originally was in variables-master.opt
      mysql-test/r/view_grant.result:
        Dop user "test@localhost" to cleanup
      mysql-test/t/analyze.test:
        Drop table t1 to cleanup
      mysql-test/t/create_select_tmp.test:
        Drop table t1 to cleanup
      mysql-test/t/ctype_cp932.test:
        Drop table t1 to cleanup
      mysql-test/t/ctype_recoding.test:
        Drop table t1 to cleanup
      mysql-test/t/fulltext_var.test:
        Restore the original ft_boolean_syntax
      mysql-test/t/grant2.test:
        Drop users "mysqltest_2" and "mysqltest_A@'%'" to cleanup
      mysql-test/t/innodb_cache.test:
        Reset query_cache_size to original value
      mysql-test/t/join_outer.test:
        Drop view v1 to cleanup
      mysql-test/t/ps_1general.test:
        Drop table t1 to cleanup
      mysql-test/t/query_cache.test:
        Drop function "f1" to cleanup
      mysql-test/t/read_only.test:
        Reset the readonly flag
      mysql-test/t/rpl000001.test:
        Delete user "blafasel2" to cleanup
      mysql-test/t/rpl000017.test:
        Delete user "replicate" to cleanup
      mysql-test/t/rpl_failed_optimize.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_flush_tables.test:
        Droip table t3, t4 and t5 to cleanup
      mysql-test/t/rpl_ignore_revoke.test:
        Delet user "user_foo" to cleanup
      mysql-test/t/rpl_insert_id.test:
        drop table t1 to cleanup
      mysql-test/t/rpl_loaddata.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_loaddata_rule_m.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_loaddata_rule_s.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_misc_functions.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_multi_update3.test:
        Drop table t1 and t2 to cleanup
      mysql-test/t/rpl_replicate_do.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_skip_error.test:
        Drop table t1 to cleanup
      mysql-test/t/rpl_slave_status.test:
        Drop table t1 to cleanup
      mysql-test/t/sp-prelocking.test:
        Drop table t1, t2 t3 and t4 to cleanup
        Drop view v1
      mysql-test/t/sp-security.test:
        Delete  test users from mysql.user, mysql.db, mysql.procs_priv and mysql.tables_priv
        Drop table t1 to cleanup
      mysql-test/t/subselect_innodb.test:
        Drop procedure p1 to cleanup
      mysql-test/t/trigger-compat.test:
        Drop trigger wl2818_trg1 and wl2818_trg2 to cleanup
        Drop table t1, t2
        Drop users
        drop database mysqltest_db1
      mysql-test/t/type_bit.test:
        drop table t1 and t2 to cleanup
      mysql-test/t/variables-master.opt:
        Increase max_join_size to 100.
      mysql-test/t/variables.test:
        Set max_join_size to 10, which was the original value in variables-master.opt
      mysql-test/t/view_grant.test:
        Drop the user "test@localhost"
      mysql-test/include/check-testcase.test:
        New BitKeeper file ``mysql-test/include/check-testcase.test''
      f64c2772
  9. 07 Nov, 2005 1 commit
    • unknown's avatar
      Fix for BUG#14703 "Valgrind error when inserting 0 into a BIT column (like in type_bit.test)": · dba800c4
      unknown authored
      test "length" first (otherwise when "length" is 0, the *from invalid access still triggers a Valgrind warning).
      I wrote to the Valgrind authors in case this is something fixable in Valgrind (normally the
      decision to issue a warning is based on the simulated CPU condition code, which should not be undefined here).
      
      
      BUILD/compile-pentium64-valgrind-max:
        putting this script in sync with compile-pentium-valgrind-max, otherwise we didn't have the federated engine compiled in.
      mysql-test/r/read_only.result:
        result update
      sql/field.cc:
        To avoid a Valgrind warning running the type_bit test: test "length" first (otherwise when "length" is 0, the *from invalid access still triggers a Valgrind warning).
      dba800c4
  10. 17 Oct, 2005 1 commit
    • unknown's avatar
      Fix for BUG#4544 "read_only also affects temporary tables": · 40656b63
      unknown authored
      the READ_ONLY global variable now allows statements which are to update only temporary tables
      (note: if a statement, after parse stage, looks like it will update a non-temp table, it will be rejected,
      even if at execution it would have turned out that 0 rows would be updated; for example
      UPDATE my_non_tem_table SET a=1 WHERE 1 = 0; will be rejected).
      
      
      sql/sql_parse.cc:
        The READ_ONLY global variable now allows statements which are to update only temporary tables
        (note: if a statement, after parse stage, looks like it will update a non-temp table, it will be rejected,
        even if at execution it would have turned out that 0 rows would be updated; for example
        UPDATE my_non_tem_table SET a=1 WHERE 1 = 0; will be rejected).
      mysql-test/r/read_only.result:
        result for new test
      mysql-test/t/read_only.test:
        test for READ_ONLY (there was none!) and for the new behaviour of READ_ONLY
      40656b63