• Michael Widenius's avatar
    Change TABLE->alias to String for less memory reallocation · ff3da0f9
    Michael Widenius authored
    Changed some String.ptr() -> String.c_ptr() for String that are not guaranteed to end with \0
    Removed some c_ptr() usage from parameters to functions that takes ptr & length
    Use preallocate buffers to avoid calling malloc() for most operations. 
    
    
    sql/event_db_repository.cc:
      alias is now a String
    sql/event_scheduler.cc:
      c_ptr -> c_ptr_safe() to avoid warnings from valgrind.
    sql/events.cc:
      c_ptr -> c_ptr_safe() to avoid warnings from valgrind.
      c_ptr -> ptr() as function takes ptr & length
    sql/field.cc:
      alias is now a String
    sql/field.h:
      alias is now a String
    sql/ha_partition.cc:
      alias is now a String
    sql/handler.cc:
      alias is now a String
      ptr() -> c_ptr() as string is not guaranteed to be \0 terminated
    sql/item.cc:
      Store error parameter in separarte buffer to ensure correct error message
    sql/item_func.cc:
      ptr() -> c_ptr_safe() as string is not guaranteed to be \0 terminated
    sql/item_sum.h:
      Use my_strtod() instead of my_atof() to not have to make string \0 terminated
    sql/lock.cc:
      alias is now a String
    sql/log.cc:
      c_ptr() -> ptr() as function takes ptr & length
    sql/log_event.cc:
      c_ptr_quick() -> ptr() as we only want to get the pointer to String buffer
    sql/opt_range.cc:
      ptr() -> c_ptr() as string is not guaranteed to be \0 terminated
    sql/opt_table_elimination.cc:
      alias is now a String
    sql/set_var.cc:
      ptr() -> c_ptr() as string is not guaranteed to be \0 terminated
      c_ptr() -> c_ptr_safe() to avoid warnings from valgrind.
      c_ptr() -> ptr() as function takes ptr & length
      Simplify some code.
    sql/sp.cc:
      c_ptr() -> ptr() as function takes ptr & length
    sql/sp_rcontext.cc:
      alias is now a String
    sql/sql_base.cc:
      alias is now a String.
      Here we win a realloc() for most alias usage.
    sql/sql_class.cc:
      Use size descriptor for printf() to avoid accessing bytes outside of buffer
    sql/sql_insert.cc:
      Change allocation of TABLE as it's now contains a String
      _ptr() -> ptr() as function takes ptr & length
    sql/sql_load.cc:
      Use preallocate buffers to avoid calling malloc() for most operations.
    sql/sql_parse.cc:
      Use c_ptr_safe() to ensure string is \0 terminated.
    sql/sql_plugin.cc:
      c_ptr_quick() -> ptr() as function takes ptr & length
    sql/sql_select.cc:
      alias is now a String
    sql/sql_show.cc:
      alias is now a String
    sql/sql_string.h:
      Added move() function to change who owns the string (owner does the free)
    sql/sql_table.cc:
      alias is now a String
      c_ptr() -> c_ptr_safe() to avoid warnings from valgrind.
    sql/sql_test.cc:
      c_ptr() -> c_ptr_safe() to avoid warnings from valgrind.
      alias is now a String
    sql/sql_trigger.cc:
      c_ptr() -> c_ptr_safe() to avoid warnings from valgrind.
      Use field->init() to setup pointers to alias.
    sql/sql_update.cc:
      alias is now a String
    sql/sql_view.cc:
      ptr() -> c_ptr_safe() as string is not guaranteed to be \0 terminated
    sql/sql_yacc.yy:
      r() -> c_ptr() as string is not guaranteed to be \0 terminated
    sql/table.cc:
      alias is now a String
    sql/table.h:
      alias is now a String
    storage/federatedx/ha_federatedx.cc:
      Remove extra 1 byte alloc that is automaticly done by strmake()
      Ensure that error message ends with \0
    storage/maria/ha_maria.cc:
      alias is now a String
    storage/myisam/ha_myisam.cc:
      alias is now a String
    ff3da0f9
sql_base.cc 299 KB