1. 28 Feb, 2008 3 commits
  2. 27 Feb, 2008 2 commits
    • vasil's avatar
      branches/zip: · 41cac32c
      vasil authored
      Use innobase_strcasecmp() insteaed of strcasecmp() in i_s.cc and get rid
      of strings.h (that file is not present on Windows).
      
      Move the prototype of innobase_strcasecmp() from ha_innodb.cc and
      dict0dict.c to ha_prototypes.h.
      
      Approved by:	Heikki
      41cac32c
    • marko's avatar
      branches/zip: Add duration statistics to INFORMATION_SCHEMA.INNODB_ZIP. · 0b6a7dac
      marko authored
      buf_buddy_relocated_duration[],
      page_zip_compress_duration[]
      page_zip_decompress_duration[]: Record the total duration of the operations.
      
      buf_buddy_relocate(), page_zip_compress(), page_zip_decompress():
      Add ut_time_us() instrumentation.
      
      i_s_zip_fields_info[], i_s_zip_fill_low(): Move the columns containing
      cumulated statistics last.  Add relocated_usec, compressed_usec, and
      decompressed_usec.
      0b6a7dac
  3. 25 Feb, 2008 2 commits
  4. 22 Feb, 2008 1 commit
  5. 21 Feb, 2008 1 commit
  6. 19 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Enable excessive binary logging of page_zip_compress(), · 949b94c5
      marko authored
      for the purpose of comparing different compression algorithms.
      
      PAGE_ZIP_COMPRESS_DBG: New preprocessor condition, to see if deflate()
      is wrapped.
      
      page_zip_compress_log: Log file counter.  If set to nonzero, logging
      is enabled.
      
      page_zip_compress_deflate(): Add the parameter logfile.
      
      FILE_LOGFILE, LOGFILE: Macros for declaring and passing the parameter logfile.
      
      page_zip_compress(): Open and close the logfile if needed.  Write the
      uncompressed page and the size of the compressed data.  The data passed
      to deflate() is written by the wrapper page_zip_compress_deflate().
      949b94c5
  7. 18 Feb, 2008 8 commits
  8. 16 Feb, 2008 1 commit
  9. 15 Feb, 2008 5 commits
  10. 13 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Minor cleanup of fast index creation diagnostics. · 388af7a7
      marko authored
      innobase_check_index_keys(): Remove unused parameters.  Use
      sql_print_error() for error message output.
      
      ha_innobase::add_index(): When row_merge_rename_tables() fails, do not
      allow row_merge_drop_table() to alter the error code returned to MySQL.
      388af7a7
  11. 12 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Pass -prefer-non-pic only on IA-32 (x86) when building · 9194c3a9
      marko authored
      the dynamic InnoDB plugin, ha_innodb.so.  This libtool option cannot
      be used on every target platform.  For instance, the AMD64 (x86_64) ABI
      mandates position-independent code (PIC) in dynamic shared objects.
      
      Makefile.am: Use $(INNODB_CFLAGS) and $(INNODB_DYNAMIC_CFLAGS) in
      target-specific CFLAGS and CXXFLAGS variable definitions.
      
      plug.in: Instead of appending to the MySQL-wide CFLAGS, introduce
      the variables INNODB_CFLAGS and INNODB_DYNAMIC_CFLAGS.  Depending on
      $target_cpu, append -prefer-non-pic to INNODB_DYNAMIC_CFLAGS.
      9194c3a9
  12. 11 Feb, 2008 1 commit
    • marko's avatar
      branches/zip: Makefile.am: Disable the generation of · 775fd54d
      marko authored
      position-independent code in the compilation of ha_innodb.so.
      
      ha_innodb_la_CXXFLAGS, ha_innodb_la_CFLAGS: Add -prefer-non-pic.
      This flag is interpreted by the ../../libtool script that acts
      as a front-end to the compiler and linker.
      775fd54d
  13. 08 Feb, 2008 6 commits
  14. 07 Feb, 2008 3 commits
    • inaam's avatar
      branches/zip: · 044e405d
      inaam authored
      srv_log_file_size is misspelled as srv_log_filen_size in r2276
      
      reviewed by: non-functional change.
      044e405d
    • marko's avatar
      branches/zip: make_flex.sh, lexyy.c: Remove some GCC warnings about unused · c5c5fdc5
      marko authored
      static symbol definitions.
      
      yy_scan_buffer, yy_scan_string, yy_scan_bytes: Leave these unused extern
      function declarations alone.
      
      yypush_buffer_state, yypop_buffer_state, yyswitch_to_buffer, yyget*, yyset*,
      yylex_destroy: Add __attribute__((unused)).
      
      This closes Mantis issue #8.
      c5c5fdc5
    • marko's avatar
      branches/zip: trx_undo_prev_version_build(): Remove a bogus warning · 3ab0d2d1
      marko authored
      about undo_rec possibly being uninitialized.  When trx_undo_get_undo_rec()
      leaves undo_rec uninitialized, both functions will return DB_MISSING_HISTORY
      without dereferencing undo_rec.
      
      This closes Mantis issue #7.
      3ab0d2d1
  15. 06 Feb, 2008 4 commits
    • marko's avatar
      branches/zip: Hide some global variables that were accidentally not hidden · 468d425d
      marko authored
      in r2276.  Now the following symbols will be exported when InnoDB is built
      as a dynamic plugin:
      
      * the virtual method pointer table of class ha_innodb
      * the three variables that MySQL will reference when linking at runtime:
      
      	_mysql_plugin_declarations_
      	_mysql_plugin_interface_version_
      	_mysql_sizeof_struct_st_plugin_
      
      Furthermore, the following symbols are weak globals, to allow us to access
      the built-in InnoDB in the mysqld executable, in case it contains a statically
      linked InnoDB:
      
      	builtin_innobase_plugin
      	innodb_hton_ptr
      468d425d
    • marko's avatar
      branches/zip: Make the changes to pars0grm.c that were promised in r2276. · fe5e0b72
      marko authored
      pars/pars0grm.h: Remove.  The primary file is include/pars0grm.h.
      
      pars/make_bison.sh: Add from trunk.  Somehow, this file was not merged
      at the same time with make_flex.sh.  Add sed magic for replacing the
      file name and for hiding yychars, yynerrs, yylval, and yyparse.
      
      pars/pars0grm.c: Apply the changes made by make_bison.sh.
      fe5e0b72
    • marko's avatar
      branches/zip: Introduce UNIV_INTERN, a linkage specifier for InnoDB-global · 1d1dc31a
      marko authored
      symbols.  Use it for all definitions of non-static variables and functions.
      
      lexyy.c, make_flex.sh: Declare yylex as UNIV_INTERN, not static.  It is
      referenced from pars0grm.c.
      
      Actually, according to
      	nm .libs/ha_innodb.so|grep -w '[ABCE-TVXYZ]'
      the following symbols are still global:
      
      * The vtable for class ha_innodb
      * pars0grm.c: The function yyparse() and the variables yychar, yylval, yynerrs
      
      The required changes to the Bison-generated file pars0grm.c will be addressed
      in a separate commit, which will add a script similar to make_flex.sh.
      
      The class ha_innodb is renamed from class ha_innobase by a #define.  Thus,
      there will be no clash with the builtin InnoDB.  However, there will be some
      overhead for invoking virtual methods of class ha_innodb.  Ideas for making
      the vtable hidden are welcome.  -fvisibility=hidden is not available in GCC 3.
      1d1dc31a
    • marko's avatar
      branches/zip: Make static all declarations in the Flex-generated · 891074b0
      marko authored
      lexical analyzer of the InnoDB SQL parser.
      891074b0