1
0
mirror of https://github.com/MariaDB/server.git synced 2025-08-01 03:47:19 +03:00

Cleanup/optimizations of structures and key usage to make it easier to move key-range-search to handler

sql/field.cc:
  Use 'HA_KEY_BLOB_LENGTH' instead of '2' for 'packed-length'
  Changed 'get_key_image' and 'set_key_image' to take length data part of key (without length-store bytes). This makes the interface easier to use from opt_range.cc
sql/field.h:
  Indentation fix
sql/opt_range.cc:
  Changed KEY_PART to use KEY_PART_INFO->store_length (which includes null-byte if needed)
  This makes some functions easier and allowed us to easier use the new get_key_image/set_key_image interfaces
  Simple loop optimization.
sql/opt_range.h:
  Changed part_length -> store_length and added length to KEY_PART.
  This make this structure more like KEY_PART_INFO
  Added 'sorted' to QUICK_SELECT for NDB
sql/sql_class.cc:
  Fixed compiler warning
sql/sql_select.cc:
  Set 'quick->sorted' if keys should be sorted (for NDB)
sql/table.cc:
  GEOMETRY KEYS doesn't have length prefix in keys
This commit is contained in:
unknown
2004-04-08 01:50:59 +03:00
parent e9447881eb
commit 3cb13f7926
7 changed files with 140 additions and 124 deletions

View File

@ -7152,6 +7152,8 @@ test_if_skip_sort_order(JOIN_TAB *tab,ORDER *order,ha_rows select_limit,
/* fall through */
}
}
else if (select && select->quick)
select->quick->sorted= 1;
DBUG_RETURN(1); /* No need to sort */
}
}