YoushouldhavereceivedacopyoftheGNUGeneralPublicLicense alongwiththisprogram;ifnot,writetotheFreeSoftware
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA */
#include"heapdef.h"
/* Read first record with the current key */
int heap_rfirst(HP_INFO *info, uchar *record, int inx)
{
HP_SHARE *share = info->s;
HP_KEYDEF *keyinfo = share->keydef + inx;
if (keyinfo->algorithm == HA_KEY_ALG_BTREE)
{
uchar *pos;
if ((pos = tree_search_edge(&keyinfo->rb_tree, info->parents,
&info->last_pos, offsetof(TREE_ELEMENT, left))))
{
memcpy(&pos, pos + keyinfo->get_key_length(keyinfo, pos), sizeof(uchar*));
info->current_ptr = pos;
memcpy(record, pos, (size_t)share->reclength); /* Ifwe'reperformingindex_firstonatablethatwastakenfrom tablecache,info->lastkey_lenisinitializedtopreviousquery. Thuswesetinfo->lastkey_lentopropervalueforsubsequent heap_rnext()calls. ThisisneededforDELETEqueriesonly,otherwisethisvariableis notused. Notethatthesameworkaroundmaybeneededforheap_rlast(),but fornowheap_rlast()isneverusedforDELETEqueries.
*/
info->lastkey_len= 0;
info->update = HA_STATE_AKTIV;
} else
{
info->update= HA_STATE_NO_KEY;
my_errno = HA_ERR_END_OF_FILE;
DBUG_RETURN(my_errno);
}
DBUG_RETURN(0);
} else
{ /* We can't scan a non existing key value with hash index */
my_errno= HA_ERR_WRONG_COMMAND;
DBUG_RETURN(my_errno);
}
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.10Bemerkung:
(vorverarbeitet am 2026-10-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.