1
0
mirror of https://github.com/MariaDB/server.git synced 2025-07-30 16:24:05 +03:00
WL#1246 (Query cache in embedded library)


libmysqld/Makefile.am:
  New files added to the project
libmysqld/lib_sql.cc:
  added initialization of 'newborn' fields:
  catalog, catalog_length, def_length
sql/sql_cache.cc:
  Code added to provide query-cache in embedded library
  query_cache_insert isn't called during the query execution
  in embedded library. So we call it in query_cache_end_of_result.
  Parameter of query_cache_end_of_result changed to get access to
  the recordset
sql/sql_cache.h:
  function's parameter changed
sql/sql_parse.cc:
  we don't need these anymore
This commit is contained in:
unknown
2003-12-01 17:19:10 +04:00
parent 046b80bbeb
commit 5d90d9406e
7 changed files with 535 additions and 20 deletions

View File

@ -573,6 +573,9 @@ bool Protocol::send_fields(List<Item> *list, uint flag)
client_field->org_name_length= strlen(client_field->org_name);
client_field->org_table_length= strlen(client_field->org_table);
client_field->charsetnr= server_field.charsetnr;
client_field->catalog= strdup_root(field_alloc, "std");
client_field->catalog_length= 3;
if (INTERNAL_NUM_FIELD(client_field))
client_field->flags|= NUM_FLAG;
@ -583,9 +586,15 @@ bool Protocol::send_fields(List<Item> *list, uint flag)
String tmp(buff, sizeof(buff), default_charset_info), *res;
if (!(res=item->val_str(&tmp)))
{
client_field->def= strdup_root(field_alloc, "");
client_field->def_length= 0;
}
else
{
client_field->def= strdup_root(field_alloc, tmp.ptr());
client_field->def_length= tmp.length();
}
}
else
client_field->def=0;