Commit ee9253ff authored by unknown's avatar unknown

My previous patch was not good at all.

This one is better, but should not be final.

Better fix is to make some changes in ha_myisammrg::index_read

This patch also reverts my previous one ...
parent a1583056
...@@ -25,6 +25,9 @@ int myrg_rprev(MYRG_INFO *info, byte *buf, int inx) ...@@ -25,6 +25,9 @@ int myrg_rprev(MYRG_INFO *info, byte *buf, int inx)
int err; int err;
MI_INFO *mi; MI_INFO *mi;
if (!info || !info->current_table)
return HA_ERR_UNSUPPORTED;
/* at first, do rprev for the table found before */ /* at first, do rprev for the table found before */
if ((err=mi_rprev(info->current_table->table,NULL,inx))) if ((err=mi_rprev(info->current_table->table,NULL,inx)))
{ {
......
...@@ -152,12 +152,11 @@ int opt_sum_query(TABLE_LIST *tables, List<Item> &all_fields,COND *conds) ...@@ -152,12 +152,11 @@ int opt_sum_query(TABLE_LIST *tables, List<Item> &all_fields,COND *conds)
error=table->file->index_last(table->record[0]) !=0; error=table->file->index_last(table->record[0]) !=0;
else else
{ {
error= table->file->index_read(table->record[0], key_buff, (void)table->file->index_read(table->record[0], key_buff,
ref.key_length, ref.key_length,
HA_READ_AFTER_KEY); HA_READ_AFTER_KEY);
if (!error) error=table->file->index_prev(table->record[0]) ||
error=table->file->index_prev(table->record[0]) || key_cmp(table,key_buff,ref.key,ref.key_length);
key_cmp(table,key_buff,ref.key,ref.key_length);
} }
if (table->key_read) if (table->key_read)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment