The limit is enforced in the query to prevent out-of-memory errors for big target tables.
if (preg_match('~binary~', $field["type"])) {
$column = "HEX($column)";
}
- $options = array("" => "") + get_vals("SELECT $column FROM " . table($target) . " ORDER BY 1");
+ $options = array("" => "") + get_vals("SELECT $column FROM " . table($target) . " ORDER BY 1" . ($this->_limit ? " LIMIT " . ($this->_limit + 1) : ""));
if ($this->_limit && count($options) - 1 > $this->_limit) {
return;
}