1. 19 Feb, 2008 3 commits
    • unknown's avatar
      Fix for build failures. Putting back "#define bool BOOL" under Windows · 8665ae2c
      unknown authored
      until Windows team confers.
      
      
      client/get_password.c:
        fix for build failure (HPUX etc): no bool in C
      dbug/dbug.c:
        typo
      include/config-win.h:
        putting back the infamous #define, because without it we have 650
        distinct compiler warnings "forcing value to bool 'true' or 'false'"
        (C4800), Windows team will confer on what to do.
      include/thr_alarm.h:
        fix for build failure on Windows
      libmysql/dll.c:
        fix for build failure on Windows
      mysys/thr_alarm.c:
        fix for build failure on HPUX
      8665ae2c
    • unknown's avatar
      dbug.c: · a680bc76
      unknown authored
        SCCS merged
      
      
      dbug/dbug.c:
        SCCS merged
      a680bc76
    • unknown's avatar
      Fix for failure of ma_test_loghandler_long-t on Windows · b369f21b
      unknown authored
      
      dbug/dbug.c:
        importing change from 6.0, which speeds up --debug on Windows (no sync)
      storage/maria/unittest/ma_test_loghandler-t.c:
        this test needs ~80 open files (logs)
      b369f21b
  2. 18 Feb, 2008 3 commits
    • unknown's avatar
      Merge from 5.1-build of the "my_bool for C" changeset. · 0ab7c2f3
      unknown authored
      Removing "#define bool BOOL" as it's dangerous.
      
      
      include/config-win.h:
        This #define was confusing: a) it changes the semantics of bool but
        only on Windows (C++ standard says that casting int to bool to int
        yields 0 or 1, but if using BOOL (which is int) this breaks, see
        old BUG 11567 "Variable 'foreign_key_checks', and other variables,
        differs binlog tests") b) it is not needed in C++ which has a bool type
        c) it is not needed in C where we must use my_bool as bool either does
        not exist or changes size between C and C++.
      storage/maria/ma_check.c:
        my_bool for C
      storage/maria/ma_dynrec.c:
        my_bool for C
      storage/maria/ma_search.c:
        my_bool for C
      storage/maria/ma_write.c:
        my_bool for C
      storage/maria/maria_def.h:
        my_bool for C
      storage/maria/maria_pack.c:
        my_bool for C
      0ab7c2f3
    • unknown's avatar
      Merge gbichot4.local:/home/mysql_src/mysql-5.1-build-gca · 34fff04d
      unknown authored
      into  gbichot4.local:/home/mysql_src/mysql-maria-monty
      
      
      client/mysqldump.c:
        Auto merged
      client/mysqltest.c:
        Auto merged
      extra/replace.c:
        Auto merged
      include/my_sys.h:
        Auto merged
      libmysql/libmysql.c:
        Auto merged
      mysys/my_getopt.c:
        Auto merged
      mysys/thr_lock.c:
        Auto merged
      sql/set_var.cc:
        Auto merged
      sql/sql_plugin.cc:
        Auto merged
      storage/myisam/mi_check.c:
        Auto merged
      storage/myisam/mi_dynrec.c:
        Auto merged
      storage/myisam/mi_search.c:
        Auto merged
      storage/myisam/mi_update.c:
        Auto merged
      storage/myisam/mi_write.c:
        Auto merged
      storage/myisam/myisamlog.c:
        Auto merged
      storage/myisam/myisampack.c:
        Auto merged
      tests/mysql_client_test.c:
        Auto merged
      include/my_global.h:
        merge
      storage/myisam/myisamdef.h:
        merge
      34fff04d
    • unknown's avatar
      Fix for server bug experienced in Maria (wrong "Truncated incorrect <var_name> · 85213f62
      unknown authored
      value" error even though the value was correct): a C function in my_getopt.c
      was taking bool* in parameter and was called from C++ sql_plugin.cc,
      but on some Mac OS X sizeof(bool) is 1 in C and 4 in C++, giving funny
      mismatches. Fixed, all other occurences of bool in C are removed, future
      ones are blocked by a "C-bool-catcher" in my_global.h (use my_bool).
      
      
      client/mysqldump.c:
        my_bool for C
      client/mysqltest.c:
        my_bool for C
      extra/replace.c:
        my_bool for C
      include/my_getopt.h:
        my_bool for C
      include/my_global.h:
        Prevent people from using bool in C, it causes real bugs.
      include/my_sys.h:
        my_bool for C
      include/my_time.h:
        my_bool for C
      include/thr_lock.h:
        my_bool for C
      libmysql/libmysql.c:
        my_bool for C
      mysys/charset.c:
        my_bool for C
      mysys/my_getopt.c:
        my_bool for C
      mysys/queues.c:
        my_bool for C
      mysys/thr_lock.c:
        my_bool for C
      regex/reginit.c:
        my_bool for C
      sql/set_var.cc:
        C functions use my_bool so we must use my_bool too.
      sql/sql_plugin.cc:
        C functions use my_bool so we must use my_bool too.
        This fixes a real observed bug of Maria, because on some Mac OS X,
        sizeof(bool) is 1 in C and 4 in C++, so the bool* does wrong.
        Removing useless line.
      storage/heap/hp_update.c:
        my_bool for C
      storage/myisam/mi_check.c:
        my_bool for C
      storage/myisam/mi_dynrec.c:
        my_bool for C
      storage/myisam/mi_search.c:
        my_bool for C
      storage/myisam/mi_update.c:
        my_bool for C
      storage/myisam/mi_write.c:
        my_bool for C
      storage/myisam/myisamdef.h:
        my_bool for C
      storage/myisam/myisamlog.c:
        my_bool for C
      storage/myisam/myisampack.c:
        my_bool for C
      tests/mysql_client_test.c:
        my_bool for C
      unittest/mysys/bitmap-t.c:
        my_bool for C
      vio/viosslfactories.c:
        my_bool for C
      85213f62
  3. 15 Feb, 2008 1 commit
    • unknown's avatar
      Fix for maria.test failure in embedded server (test split) · d37d49bc
      unknown authored
      
      mysql-test/r/maria.result:
        result update
      mysql-test/t/maria.test:
        The embedded server translates INSERT DELAYED to plain INSERT
        so does not produce an error; moving this test to a new test
        which is not run for the embedded server.
      mysql-test/r/maria_notembedded.result:
        result is ok
      mysql-test/t/maria_notembedded.test:
        New test for cases where embedded server is different.
      d37d49bc
  4. 13 Feb, 2008 8 commits
    • unknown's avatar
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-maria · 2c683461
      unknown authored
      into  mysql.com:/home/my/mysql-maria
      
      
      2c683461
    • unknown's avatar
      skip dbug tests if DBUG_OFF · 0e4659bc
      unknown authored
      
      include/my_dbug.h:
        warnings
      0e4659bc
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-maria · 23ea83da
      unknown authored
      into  mysql.com:/home/my/mysql-maria
      
      
      23ea83da
    • unknown's avatar
      Fixed compiler warnings in a lot of files · 8170b22b
      unknown authored
      Added IMPOSSIBLE_RESULT to avoid compiler warnings when using (Item_result) -1 as a dummy value
      Changed PAGE_SIZE to TEST_PAGE_SIZE to avoid compiler errors on systems where PAGE_SIZE is defined
      
      
      client/get_password.c:
        Fixed compiler warning
      cmd-line-utils/readline/bind.c:
        Fixed compiler warning
      cmd-line-utils/readline/chardefs.h:
        Fixed compiler warning by adding marco to be used when largest_char is 255
      cmd-line-utils/readline/display.c:
        Fixed compiler warnings by removing not accessed variables
      cmd-line-utils/readline/histexpand.c:
        Fixed compiler warnings by removing not accessed variables
      cmd-line-utils/readline/history.c:
        Fixed compiler warnings by adding cast
      cmd-line-utils/readline/text.c:
        Fixed compiler warnings by removing not accessed variables and adding casts
      dbug/dbug.c:
        Fixed compiler warnings by changing types
      include/mysql_com.h:
        Added IMPOSSIBLE_RESULT to avoid compiler warnings when using (Item_result) -1 as a dummy value
      libmysql/libmysql.c:
        Fixed compiler warning
      mysql-test/t/query_cache_debug.test:
        Mark test as BIG as it uses a lot of memory
      mysys/mf_iocache2.c:
        Fixed compiler warnings by adding cast
      sql/event_data_objects.cc:
        Fixed compiler warnings by removing not used code
      sql/events.cc:
        Fixed compiler warnings by removing not used code
      sql/field.cc:
        Fixed compiler warnings by adding cast and removed not accessed variables
      sql/ha_partition.cc:
        Fixed compiler warnings by removing not used code
      sql/item.cc:
        Fixed compiler warnings by removing not accessed variables
        Use IMPOSSIBLE_RESULT instead of (Item_result)-1
      sql/item_cmpfunc.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/item_func.cc:
        Fixed compiler warnings by removing not used code and not accessed variables
        Added IMPOSSIBLE_RESULT
      sql/item_subselect.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/item_xmlfunc.cc:
        Fixed forgotten setting of xpath->error
      sql/log.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/log_event.cc:
        Added IMPOSSIBLE_RESULT into switch
        Fixed wrong usage of DBUG_ASSERT(1)
        Removed always true DBUG_ASSERT()
      sql/mysqld.cc:
        Fixed compiler warnings by adding casts for ULONG_MAX
      sql/opt_sum.cc:
        Fixed compiler warnings by removing not used code
        Removed wrong DBUG_ASSERT()
      sql/partition_info.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/rpl_injector.h:
        Removed always true part from DBUG_ASSERT() to remove compiler warning
      sql/spatial.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_acl.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_base.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_cache.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_class.cc:
        Fixed compiler warnings by:
        - Removing always true part from DBUG_ASSERT()
        - Removing not used code
        - Added IMPOSSIBLE_RESULT into switch
      sql/sql_load.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_parse.cc:
        Fixed compiler warnings by:
        - Removing not accessed variables
        - Removing always true part from DBUG_ASSERT()
        - Removing not used code
      sql/sql_plugin.cc:
        Added comment
      sql/sql_prepare.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/sql_show.cc:
        Fixed compiler warnings by using correct cast
      sql/sql_table.cc:
        Fixed compiler warnings by removing not used code and removing not accessed variables
      sql/table.cc:
        Fixed compiler warnings by removing not accessed variables
      sql/time.cc:
        Fixed wrong DBUG_ASSERT(1)
      storage/maria/unittest/Makefile.am:
        Changed PAGE_SIZE to TEST_PAGE_SIZE to avoid compiler errors on systems where PAGE_SIZE is defined
      storage/maria/unittest/ma_pagecache_consist.c:
        Changed PAGE_SIZE to TEST_PAGE_SIZE to avoid compiler errors on systems where PAGE_SIZE is defined
      storage/maria/unittest/ma_pagecache_single.c:
        Changed PAGE_SIZE to TEST_PAGE_SIZE to avoid compiler errors on systems where PAGE_SIZE is defined
      tests/mysql_client_test.c:
        Fixed compiler warnings by removing not accessed variables and changing types
      8170b22b
    • unknown's avatar
      compiler warning fixed · 5cf9db53
      unknown authored
      5cf9db53
    • unknown's avatar
      build/test failures on different platforms · bee40ef1
      unknown authored
      
      include/atomic/rwlock.h:
        define MY_ATOMIC_MODE_RWLOCKS if this is the way we have to go
      mysys/lf_alloc-pin.c:
        no semicolon
      mysys/lf_hash.c:
        no semicolon
      storage/maria/lockman.c:
        no semicolon
      storage/maria/ma_loghandler.c:
        no semicolon
      unittest/mysys/my_atomic-t.c:
        powerpc is no better
        (condition could be a bit too broad, but hey, it's just a unit test)
      bee40ef1
    • unknown's avatar
      fix for embedded build · cbaf350b
      unknown authored
      cbaf350b
  5. 11 Feb, 2008 14 commits
    • unknown's avatar
      Merge abelkin@bk-internal.mysql.com:/home/bk/mysql-maria · ccd83f1f
      unknown authored
      into  oleksandr-byelkins-powerbook-g4-15.local:/Users/bell/mysql/bk/mysql-maria
      
      
      ccd83f1f
    • unknown's avatar
      Comparison between signed and unsigned fixed. · 3aaa0f60
      unknown authored
      
      storage/maria/ma_loghandler.c:
        Fixed comparison of signed and unsigned.
      3aaa0f60
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria · 5aa5ed87
      unknown authored
      into  gbichot4.local:/home/mysql_src/mysql-maria-monty
      
      
      5aa5ed87
    • unknown's avatar
      fix for non-debug build · cd5b213d
      unknown authored
      cd5b213d
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-maria · 3056d07a
      unknown authored
      into  mysql.com:/home/my/mysql-maria
      
      
      3056d07a
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-maria · d3996f2f
      unknown authored
      into  mysql.com:/home/my/mysql-maria
      
      
      d3996f2f
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria · 17b90389
      unknown authored
      into  gbichot4.local:/home/mysql_src/mysql-maria-monty
      
      
      17b90389
    • unknown's avatar
      Add warning of TRANSACTIONAL=1 is used with handler that doesn't support it · 315d7b34
      unknown authored
      Added hton_name() and handler->engine_name() and use these when appropriate
      
      
      KNOWN_BUGS.txt:
        Added some of the known bugs
      mysql-test/r/maria.result:
        Added test for TRANSACTIONAL=1
      mysql-test/r/myisam.result:
        Added test for TRANSACTIONAL=1
      mysql-test/t/maria.test:
        Added test for TRANSACTIONAL=1
      mysql-test/t/myisam.test:
        Added test for TRANSACTIONAL=1
      sql/handler.cc:
        ha_resolve_storage_engine_name() -> hton_name()
      sql/handler.h:
        Added hton_name() and handler->engine_name()
      sql/set_var.cc:
        Use hton_name()
      sql/sql_table.cc:
        Add warning of TRANSACTIONAL=1 is used with handler that doesn't support it
        Indentation fixes
        ha_resolve_storage_engine_name() -> hton_name()
      sql/sql_tablespace.cc:
        ha_resolve_storage_engine_name() -> hton_name()
        Indentation fixes
      sql/sql_yacc.yy:
        ha_resolve_storage_engine_name() -> hton_name()
      sql/unireg.cc:
        ha_resolve_storage_engine_name() -> hton_name()
        Indentation fixes
      315d7b34
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria · fa8fad74
      unknown authored
      into  mysqlwin32.:C:/mysql-maria
      
      
      fa8fad74
    • unknown's avatar
      A new option for maria_chk: --zerofill-keep-lsn. This will be used · d2a3bf33
      unknown authored
      by ma_test_recovery.pl when it happens that Recovery does not recreate
      pages exactly as they were at first run: this option will help us
      verify that the differences are in unimportant page pieces (those pieces
      will be zeroed by --zerofill-keep-lsn, but not the important LSNs).
      
      
      include/myisamchk.h:
        new zerofill flag for maria_chk
      storage/maria/ma_check.c:
        If T_ZEROFILL_KEEP_LSN, we don't zero out LSNs of data/index pages.
        Then the table is not movable. We still mark it zerofilled, it helps
        to know what was last done to the table.
      storage/maria/maria_chk.c:
        New option --zerofill-keep-lsn
      d2a3bf33
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria · 8633d633
      unknown authored
      into  mysqlwin32.:C:/mysql-maria
      
      
      8633d633
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new-rpl · 2944f4b0
      unknown authored
      into  janus.mylan:/usr/home/serg/Abk/mysql-maria
      
      
      mysql-test/mysql-test-run.pl:
        Auto merged
      sql/log_event.cc:
        Auto merged
      sql/slave.cc:
        Auto merged
      sql/slave.h:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      include/my_base.h:
        merged
      2944f4b0
    • unknown's avatar
      Problem: pushbuild has sporadic errors during startup of · 2942c1ea
      unknown authored
      rpl_ndb_rep_ignore
      Reason: previous test, rpl_ndb_2multi_eng, does not sync slave with master
      after cleanup, so tables are sometimes left on slave
      Fix: sync_slave_with_master
      
      
      mysql-test/extra/rpl_tests/rpl_ndb_2multi_eng.test:
        Wait until drop table is replicated to slave before terminating. (The
        extra table caused sporadic errors in the next test case, causing
        pushbuild to fail.)
      2942c1ea
    • unknown's avatar
      Fix for failures of ma_control_file-t, ma_test_loghandler_purge-t, · 30573786
      unknown authored
      ma_test_loghandler_pagecache-t on Windows.
      
      
      storage/maria/ma_control_file.c:
        stat() is unreliable on Windows (does not reflect process' own writes)
      storage/maria/ma_loghandler.c:
        translog_set_lsn_for_files() didn't close its file descriptor; it was
        a real problem as non-closed files could not be purged.
        Same for translog_truncate_log() in case of error.
      storage/maria/unittest/ma_test_loghandler_pagecache-t.c:
        stat() is unreliable on Windows (does not reflect process' own writes)
      30573786
  6. 09 Feb, 2008 2 commits
  7. 08 Feb, 2008 8 commits
    • unknown's avatar
      Merge mysql.com:/home/kent/bk/maria/mysql-5.1-release · afa95c68
      unknown authored
      into  mysql.com:/home/kent/bk/maria/mysql-maria
      
      
      extra/yassl/src/handshake.cpp:
        Auto merged
      scripts/make_binary_distribution.sh:
        Auto merged
      sql/handler.cc:
        Auto merged
      sql/log_event.cc:
        Auto merged
      afa95c68
    • unknown's avatar
      BUG#33247: mysqlbinlog does not clean up after itself on abnormal termination · 5db7ee3e
      unknown authored
      Problem: mysqlbinlog does not free memory if an error happens.
      Fix: binlog-processing functions do not call exit() anymore. Instead, they
      print an error and return an error code. Error codes are propagated all
      the way back to main, and all allocated memory is freed on the way.
      
      
      client/mysqlbinlog.cc:
        - New error handling policy: functions processing binlogs don't just
          exit() anymore. Instead, they print a message and return an error
          status.
        - New policy for the global `mysql' and `glob_description_event': these
          are not passed as parameters anymore. The global pointer is used
          instead.
        - More error situations are detected and reported.
        - Better error messages: the program never terminates with exit status 1
          without explanation any more. Fixed spelling errors. Use consistent
          format of messages (a single line beginning with "ERROR: " or
          "WARNING: " and ending with "." is printed to stderr.)
        - New memory handling: memory is always freed on program termination.
        - Better comments: more functions are explained, doxygen is used, and
          more precise formulations in some existing comments.
      mysql-test/suite/binlog/r/binlog_base64_flag.result:
        Result file updated since output format of mysqlbinlog changed while the
        test was disabled.
      mysql-test/suite/binlog/t/binlog_killed.test:
        Mysqlbinlog now works as described when the binlog is open. Hence, the
        --force-if-open flag must be passed
      mysql-test/suite/binlog/t/binlog_killed_simulate.test:
        Mysqlbinlog now works as described when the binlog is open. Hence, the
        --force-if-open flag must be passed
      mysql-test/suite/binlog/t/disabled.def:
        Now that mysqlbinlog cleans up after itself on abnormal termination, we
        can enable this test again.
      5db7ee3e
    • unknown's avatar
      Correcting assertion · e9a89f12
      unknown authored
      
      storage/maria/ha_maria.cc:
        start_stmt() is passed thr_lock_type (TL_*), not int F_*.
        Though tt does not seem to matter here, F_UNLCK == TL_UNLOCK == 0
        at least on Linux and Windows.
      e9a89f12
    • unknown's avatar
      ma_pagecache.c: · 5520ddfb
      unknown authored
        SCCS merged
      
      
      storage/maria/ma_pagecache.c:
        SCCS merged
      5520ddfb
    • unknown's avatar
      BUG#34089 "Maria crash on LOAD INDEX after FLUSH TABLES" · c5abb8f8
      unknown authored
      a typo had not disable LOAD INDEX for Maria.
      BUG#34161 "freeing maria tmp table after fetching rows using prepared statements - crashes"
      running the testcase I was not able to repeat the same crash but
      found a misplaced assertion giving false positive, fixed here.
      
      
      storage/maria/ha_maria.cc:
        important typo
      storage/maria/ma_pagecache.c:
        The assertion on block's type should be after read_block(). Otherwise
        it can give false alarms.
      c5abb8f8
    • unknown's avatar
      Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-maria · 01336db3
      unknown authored
      into  mysqlwin32.:C:/mysql-maria
      
      
      01336db3
    • unknown's avatar
      Fix for bug in log handler observed when running maria-big · d783c011
      unknown authored
      and then maria-connect under Windows 32-bit Visual Studio 2003.
      Build of all Maria unit tests under Windows.
      
      
      storage/maria/ma_loghandler.c:
        Assertion contributed by Sanja. Working around my_stat() bug on Windows
        (st_size is long i.e. 32-bit signed, the file was slightly bigger than
        2GB, so st_size was negative, TRANSLOG_PAGE_SIZE was int, so the
        comparison was done using long, so st_size was still negative in
        the comparison, which was incorrect). Two fixes: cast st_size to uint32
        (belt) and make TRANSLOG_PAGE_SIZE unsigned (suspenders).
        Of course 'long' is not enough for files >=4GB, but all log files of
        Maria are <4GB. The general problem of my_stat() has been passed on to
        our Windows team.
      storage/maria/ma_loghandler.h:
        use unsigned ints for constants which represent sizes of pages, files...
      storage/maria/unittest/CMakeLists.txt:
        a few unit tests were not built under Windows
      d783c011
    • unknown's avatar
      Postmerge mac compiler warnings fixed. · 0a0c6041
      unknown authored
      0a0c6041
  8. 07 Feb, 2008 1 commit
    • unknown's avatar
      Merge oleksandr-byelkins-powerbook-g4-15.local:/Users/bell/mysql/bk/mysql-maria · b03e6035
      unknown authored
      into  oleksandr-byelkins-powerbook-g4-15.local:/Users/bell/mysql/bk/work-maria-wrn
      
      
      storage/maria/ma_blockrec.c:
        Auto merged
      storage/maria/ma_check.c:
        Auto merged
      storage/maria/ma_control_file.c:
        Auto merged
      storage/maria/ma_key_recover.c:
        Auto merged
      storage/maria/ma_page.c:
        Auto merged
      storage/maria/ma_pagecache.c:
        Auto merged
      storage/maria/ma_recovery.c:
        Auto merged
      b03e6035