1. 30 Jun, 2005 4 commits
    • unknown's avatar
      Fixed BUG#11529: crash server after use stored procedure · a95bb38a
      unknown authored
      Make sure to cleanup the items for a cursor query after each open, otherwise
      it's done too late, after the run-time mem_root is freed.
      
      
      mysql-test/r/sp.result:
        New test case for BUG#11529.
      mysql-test/t/sp.test:
        New test case for BUG#11529.
      sql/sp_head.cc:
        Add a back pointer from a sp_cursor to its cpush instruction, and use it to set
        the arena and cleanup the items for the cursor's query when opening it.
      sql/sp_rcontext.cc:
        Store pointer in sp_cursor to its cpush instruction.
      sql/sp_rcontext.h:
        Store pointer in sp_cursor to its cpush instruction.
      a95bb38a
    • unknown's avatar
      A fix and a test case for Bug#10794 "mysql_stmt_attr_set no · ec9ac3fe
      unknown authored
      open cursor after mysql_stmt_execute" + post-review fixes.
      The bug was caused by wrong flags in stmt->server_status on the client
      side: if there was no cursor, the server didn't send server_status
      flags to the client, and the old flags were used to set up the
      fetch function of a statement. Consequently, stmt_read_row_from_cursor was
      used when there was no cursor. The fix fixes the server to always
      send server flags to the client.
      
      
      include/mysql_com.h:
        Update stale comments.
      libmysql/libmysql.c:
        Remove an extra assignment.
      libmysqld/lib_sql.cc:
        Update to correspond to the changed signature of send_eof
      sql/protocol.cc:
        Actual fix for bug#10794: create a function that writes the eof
        packet to network and use it from send_fields. We need to send
        a full eof packet from send_fields to inform the client about
        the cursor status (that there is no cursor in this case).
      sql/protocol.h:
        Remove an unused parameter for send_eof.
      tests/mysql_client_test.c:
        A test case for Bug#10794 "mysql_stmt_attr_set no open cursor 
        after mysql_stmt_execute"
      ec9ac3fe
    • unknown's avatar
      Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb · 7a5ec760
      unknown authored
      into  linux.site:/home/marty/MySQL/mysql-5.0
      
      
      BitKeeper/etc/logging_ok:
        auto-union
      configure.in:
        Auto merged
      mysql-test/mysql-test-run.sh:
        Auto merged
      mysys/default.c:
        Auto merged
      ndb/include/transporter/TransporterDefinitions.hpp:
        Auto merged
      ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
        Auto merged
      ndb/src/ndbapi/NdbDictionaryImpl.cpp:
        Auto merged
      ndb/test/ndbapi/testBlobs.cpp:
        Auto merged
      sql/ha_ndbcluster.cc:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/sql_select.cc:
        Auto merged
      strings/ctype-big5.c:
        Auto merged
      strings/ctype-ucs2.c:
        Auto merged
      7a5ec760
    • unknown's avatar
      a fix. · 9996c3d8
      unknown authored
      bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
      bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
      bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs 
      
      
      mysql-test/r/type_bit.result:
        test case.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs
      mysql-test/t/type_bit.test:
        test case.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs
      sql/field.h:
        a fix.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs 
        
        - max_length() returns length in bits.
        - introduced set_bit_ptr() function, which sets bit_ptr and bit_ofs.
      sql/item.cc:
        a fix.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs
        
        - create Field_bit_as_char in case of MYSQL_TYPE_BIT in the Item::tmp_table_field_from_field_type()
          (we cannot create Field_bit here because of lack of information: bit_ptr, bit_ofs)
      sql/mysql_priv.h:
        a fix.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs 
        
        - table_cant_handle_bit_fields parameter added to the create_tmp_field()
      sql/sql_select.cc:
        a fix.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs
        
        - create_tmp_field() changes to return create_tmp_field_from_item() result 
          (actually, Field_bit_as_char) if table_cant_handle_bit_fields=1 for bit fields.
        - create_tmp_field() calls accordingly changed 
        - call set_bit_ptr() for bit fields after the move_field() call during 
          temporary table creation.
      sql/sql_table.cc:
        a fix.
        bug #10617: Insert from same table to same table give incorrect result for bit(4) column.
        bug #11091: union involving BIT: assertion failure in Item::tmp_table_field_from_field_type
        bug #11572: MYSQL_TYPE_BIT not taken care of in temp. table creation for VIEWs
        
        - changed the create_tmp_field() call
      9996c3d8
  2. 29 Jun, 2005 11 commits
  3. 28 Jun, 2005 8 commits
    • unknown's avatar
      post review fixes to a patch · e29f5221
      unknown authored
      
      mysys/default_modify.c:
        post revew fixes to a patch
      e29f5221
    • unknown's avatar
      Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0 · 10986dba
      unknown authored
      into rurik.mysql.com:/home/igor/mysql-5.0
      
      
      sql/opt_range.cc:
        Auto merged
      10986dba
    • unknown's avatar
      opt_range.cc: · 19103bf3
      unknown authored
        Fixed a compilation error.
      
      
      sql/opt_range.cc:
        Fixed a compilation error.
      19103bf3
    • unknown's avatar
      Fixed comments. · d2f7623d
      unknown authored
      
      sql/opt_range.cc:
        comment fixed.
      sql/sp_head.cc:
        An obsolete comment removed.
      d2f7623d
    • unknown's avatar
      Merge rurik.mysql.com:/home/igor/mysql-5.0 · 95fd25f2
      unknown authored
      into rurik.mysql.com:/home/igor/dev/mysql-5.0-0
      
      
      sql/opt_range.cc:
        Auto merged
      95fd25f2
    • unknown's avatar
      A fix and a test case for Bug#10736 "mysql_stmt_attr_set · 79c1be9e
      unknown authored
      CURSOR_TYPE_READ_ONLY select within select".
      The bug was caused by the reset of thd->mem_root to thd->main_mem_root in 
      Item_subselect::exec, which in turn triggered too early free_root() for
      data which was needed on subsequent fetches from a cursor.
      This reset also caused a memory leak in stored procedures, as 
      subsequent executions of instructions containing a subselect
      were allocating memory in thd->main_mem_root, which is not freed
      until the end of the entire SP, instead of the per-call mem_root,
      which is freed in the end of execution of the instruction.
      
      
      sql/item_subselect.cc:
        Don't try to protect subqueries from the code that assumes that
        it can reset thd->mem_root and get away with it: it's responsibility
        of the caller to ensure that no assumption about the life span
        of the allocated memory made by the called code is broken.
        Besides, this didn't work well with cursors and stored procedures, 
        where the runtime memory root is not the same as &thd->main_mem_root.
      sql/opt_range.cc:
        In get_mm_leaf restore the original mem_root of the thd which has
        been temporarily reset with the quick select mem_root earlier: if 
        thd->mem_root points to the QUICK...::mem_root, the memory allocated
        in JOIN::exec during evaluation of a subquery gets freed too early.
      tests/mysql_client_test.c:
        A test case for Bug#10736 "mysql_stmt_attr_set CURSOR_TYPE_READ_ONLY
         select within select"
      79c1be9e
    • unknown's avatar
      range.result, range.test: · 1031b871
      unknown authored
        Added a test case for bug #10031.
      opt_range.cc:
        Fixed bug #10031: range condition was not used with
        views. Range analyzer did not take into account that
        view columns were always referred through Item_ref.
      
      
      sql/opt_range.cc:
        Fixed bug #10031: range condition was not used with
        views. Range analyzer did not take into account that
        view columns were always referred through Item_ref.
      mysql-test/t/range.test:
        Added a test case for bug #10031.
      mysql-test/r/range.result:
        Added a test case for bug #10031.
      1031b871
    • unknown's avatar
      Merge hundin.mysql.fi:/home/marko/mysql-4.1 · 26a52bbe
      unknown authored
      into hundin.mysql.fi:/home/marko/mysql-5.0-current
      
      
      innobase/fil/fil0fil.c:
        SCCS merged
      innobase/include/os0file.h:
        SCCS merged
      innobase/os/os0file.c:
        SCCS merged
      26a52bbe
  4. 27 Jun, 2005 17 commits
    • unknown's avatar
      Fix typo in --default-store-engine help. (Bug #11534) · feffe571
      unknown authored
      
      sql/mysqld.cc:
        Fix typo
      feffe571
    • unknown's avatar
      Many files: · 49e38d31
      unknown authored
        Remove compiler warnings on Windows - Bug #11580
      
      
      innobase/btr/btr0btr.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/btr/btr0cur.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/fil/fil0fil.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/ibuf/ibuf0ibuf.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/log/log0recv.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/os/os0file.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/page/page0page.c:
        Remove compiler warnings on Windows - Bug #11580
      innobase/row/row0upd.c:
        Remove compiler warnings on Windows - Bug #11580
      49e38d31
    • unknown's avatar
      InnoDB: After review fixes · b608f091
      unknown authored
      
      innobase/os/os0file.c:
        os_file_set_size(): After review fixes (prevent overflows)
      b608f091
    • unknown's avatar
      InnoDB: Optimize the extension of files. This will greatly speed · 1084e540
      unknown authored
      up CREATE TABLE in innodb_file_per_table=1 mode.
      
      
      innobase/fil/fil0fil.c:
        fil_extend_space_to_desired_size(): Do not allocate or initialize
        more memory than is necessary.  Write at most one megabyte at a time.
      innobase/include/os0file.h:
        os_file_set_size(): Corrected the synopsis
      innobase/os/os0file.c:
        os_file_set_size(): Corrected the synopsis and some comments.
        s/offset/current_size; s/low/desired_size/;
        Do not allocate or initialize more memory than is necessary.
        Write at most one megabyte at a time.
      1084e540
    • unknown's avatar
      Merge heikki@bk-internal.mysql.com:/home/bk/mysql-5.0 · d94c7745
      unknown authored
      into hundin.mysql.fi:/home/heikki/mysql-5.0
      
      
      d94c7745
    • unknown's avatar
      Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1 · cbc10508
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      client/mysqltest.c:
        Auto merged
      cbc10508
    • unknown's avatar
      Include <sys/wait.h> to get WEXITSTATUS · e00981bb
      unknown authored
      e00981bb
    • unknown's avatar
      Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1 · fde3b951
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      client/mysqltest.c:
        Auto merged
      sql/sql_base.cc:
        Auto merged
      fde3b951
    • unknown's avatar
      Add "#include <stdlib.h>" to define WEXITSTATUS · 8478223a
      unknown authored
      8478223a
    • unknown's avatar
      Simpler impl. · d8ee99b4
      unknown authored
      
      sql/sql_parse.cc:
        Just do a simple sprintf to format error message.
      d8ee99b4
    • unknown's avatar
      Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0 · 71f7df27
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/bug10466
      
      
      mysql-test/r/alias.result:
        Auto merged
      mysql-test/r/func_str.result:
        Auto merged
      mysql-test/r/func_time.result:
        Auto merged
      mysql-test/r/group_by.result:
        Auto merged
      mysql-test/r/innodb.result:
        Auto merged
      mysql-test/r/ps.result:
        Auto merged
      mysql-test/r/ps_2myisam.result:
        Auto merged
      mysql-test/r/ps_3innodb.result:
        Auto merged
      mysql-test/r/ps_4heap.result:
        Auto merged
      mysql-test/r/ps_5merge.result:
        Auto merged
      mysql-test/r/ps_6bdb.result:
        Auto merged
      mysql-test/r/ps_7ndb.result:
        Auto merged
      mysql-test/r/select.result:
        Auto merged
      mysql-test/t/alias.test:
        Auto merged
      mysql-test/t/func_str.test:
        Auto merged
      mysql-test/t/func_time.test:
        Auto merged
      mysql-test/t/group_by.test:
        Auto merged
      mysql-test/t/innodb.test:
        Auto merged
      mysql-test/t/ps.test:
        Auto merged
      mysql-test/t/select.test:
        Auto merged
      sql/sql_parse.cc:
        Auto merged
      sql/share/errmsg.txt:
        Auto merged
      71f7df27
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 5ae1fd9d
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      5ae1fd9d
    • unknown's avatar
      Merge problem fixes · 74586e95
      unknown authored
      
      mysql-test/r/client_xml.result:
        Update testresult
      mysql-test/r/ndb_autodiscover.result:
        Moving order opf test results to match test execution order
      74586e95
    • unknown's avatar
      Fix the broken test suite in -debug build. · 48cb6de7
      unknown authored
      
      sql/sql_select.cc:
        If we use subqueries, we can have double-free of tmp_table_param.copy_field
        in JOIN::destroy and in JOIN::join_free because.
      48cb6de7
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-5.0 · 7ce67307
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-5.0
      
      
      mysql-test/mysql-test-run.sh:
        Auto merged
      7ce67307
    • unknown's avatar
      Merge heikki@bk-internal.mysql.com:/home/bk/mysql-5.0 · aa32b76a
      unknown authored
      into hundin.mysql.fi:/home/heikki/mysql-5.0
      
      
      aa32b76a
    • unknown's avatar
      Merge bk-internal.mysql.com:/home/bk/mysql-4.1 · f40f711e
      unknown authored
      into neptunus.(none):/home/msvensson/mysql/mysql-4.1
      
      
      f40f711e