summaryrefslogtreecommitdiff
path: root/sql/table.cc
diff options
context:
space:
mode:
authorigor@rurik.mysql.com <>2005-02-11 10:44:03 -0800
committerigor@rurik.mysql.com <>2005-02-11 10:44:03 -0800
commite528a1c777580baf6dfba0c34b550f95fe7cf1f0 (patch)
tree7c697149de84c1ac690efd7e622e12a88ab53d98 /sql/table.cc
parenta697e5da15c8378e50fbc37bef7c5bdc5ed94436 (diff)
parent634424ca1601e943cb7692dae3bbda743c10e07a (diff)
downloadmariadb-git-e528a1c777580baf6dfba0c34b550f95fe7cf1f0.tar.gz
Manual merge
Diffstat (limited to 'sql/table.cc')
-rw-r--r--sql/table.cc13
1 files changed, 6 insertions, 7 deletions
diff --git a/sql/table.cc b/sql/table.cc
index 1abe4af9711..064d7f1afc1 100644
--- a/sql/table.cc
+++ b/sql/table.cc
@@ -195,7 +195,6 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
goto err_not_open; /* purecov: inspected */
bzero((char*) keyinfo,n_length);
outparam->key_info=keyinfo;
- outparam->max_key_length= outparam->total_key_length= 0;
key_part= my_reinterpret_cast(KEY_PART_INFO*) (keyinfo+keys);
strpos=disk_buff+6;
@@ -251,11 +250,6 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
}
key_part->store_length=key_part->length;
}
- set_if_bigger(outparam->max_key_length,keyinfo->key_length+
- keyinfo->key_parts);
- outparam->total_key_length+= keyinfo->key_length;
- if (keyinfo->flags & HA_NOSAME)
- set_if_bigger(outparam->max_unique_length,keyinfo->key_length);
}
keynames=(char*) key_part;
strpos+= (strmov(keynames, (char *) strpos) - keynames)+1;
@@ -627,7 +621,6 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
if (!(field->flags & BINARY_FLAG))
keyinfo->flags|= HA_END_SPACE_KEY;
}
- set_if_bigger(outparam->max_key_length, keyinfo->key_length);
if (i == 0 && key != primary_key)
field->flags |=
((keyinfo->flags & HA_NOSAME) &&
@@ -686,6 +679,12 @@ int openfrm(const char *name, const char *alias, uint db_stat, uint prgflag,
}
}
keyinfo->usable_key_parts=usable_parts; // Filesort
+
+ set_if_bigger(outparam->max_key_length,keyinfo->key_length+
+ keyinfo->key_parts);
+ outparam->total_key_length+= keyinfo->key_length;
+ if (keyinfo->flags & HA_NOSAME)
+ set_if_bigger(outparam->max_unique_length,keyinfo->key_length);
}
if (primary_key < MAX_KEY &&
(outparam->keys_in_use.is_set(primary_key)))