поиск:
Полезные ссылки

  • Форум по MySQL

  • Статьи по MySQL

  • Вопросы по MySQL

  • MySQL.com


  • Базы данных

  • MySQL

  • PostgreSQL


  • PHP конференция 2005
    Подробности!

    1.10.5. То, что надо сделать когда-нибудь

    • Реализовать функцию: get_changed_tables(timeout,table1,table2,...).

    • Изменить чтение таблиц так, чтобы везде, где возможно. использовалась memmap. Сейчас memmap используется только для уплотненных таблиц.

    • Сделать лучше автоматический код временных меток (timestamp). Добавлять временные метки в журнал обновлений при помощи SET TIMESTAMP=#;.

    • Использовать в некоторых местах семафор чтения/записи для увеличения скорости.

    • Обеспечить полную поддержку внешних ключей в MyISAM-таблицах (возможно, после реализации хранимых процедур с триггерами).

    • Подготовить простые обзоры (сначала по одной таблице, позднее по любому выражению).

    • Реализовать автоматическое закрытие некоторых таблиц, если таблица, временная таблица или временные файлы получат ошибку 23 (недостаточно открытых файлов).

    • Если обнаружится поле=#, заменить все местонахождения поля на #. Сейчас такое делается только для некоторых простых случаев.

    • Заменить все константные выражения вычисляемыми, если возможно.

    • Реализовать оптимизацию ключ=выражение. К данному моменту делается оптимизация только для ключ=поле или ключ=константа.

    • Связывать некоторые функции копирования для улучшения кода.

    • Заменить sql_yacc.yy внутритекстовым синтаксическим анализатором, чтобы уменьшить ее размер и получать лучшие сообщения об ошибке (5 дней).

    • Изменить собственный синтаксический анализатор так, чтобы он использовал только одно правило для различного количества аргументов в функции.

    • Использовать полные вычисляемые имена в части сортировки (для ACCESS97).

    • MINUS, INTERSECT и FULL OUTER JOIN (в настоящее время поддерживаются UNION [в 4.0] и LEFT OUTER JOIN).

    • SQL_OPTION MAX_SELECT_TIME=#, чтобы устанавливать ограничения по времени для запроса.

    • Сделать так, чтобы обновляемый журнал записывался в базу данных..

    • Сделать добавления в LIMIT, чтобы можно было делать восстановление данных с конца результирующего набора.

    • Сигналы предупреждений для функций соединения/чтения/записи клиента.

    • Необходимо обратить внимание на изменения на safe_mysqld; согласно FSSTND (которому пытается следовать Debian) PID-файлы должны помещаться в /var/run/<progname>.pid, a файлы журналов - в /var/log. Было бы хорошо, если бы было можно поместить "DATADIR" в первое объявление "pidfile" и "log", чтобы местоположение этих файлов можно было изменить одним оператором.

    • Разрешать клиенту запрашивать ведение журналов.

    • Добавить использование zlib() для gzip-файлов в LOAD DATA INFILE.

    • Исправить сортировку и группирование BLOB-столбцов (сейчас проблема частично решена).

    • Хранимые процедуры. Рассматриваются также триггеры.

    • Простой (атомарный) язык обновления, который может быть использован для написания циклов и т.п. в MySQL-сервере.

    • Произвести изменения для того, чтобы пользоваться семафорами при подсчете потоков. Но сначала нужно реализовать библиотеку семафоров для потоков MIT-pthreads.

    • Не устанавливать новое значение во время установки колонки в 0. вместо этого использовать NULL.

    • Добавить полную поддержку круглых скобок для JOIN.

    • В качестве альтернативы одному потоку/соединению управлять пулом потоков при обработке запросов.

    • Обеспечить возможность получать более чем одну блокировку при помощи GET_LOCK. Когда это будет реализовано, потребуется еще сделать обработку возможных тупиковых ситуаций, которые привнесет данное изменение.

    Время отводится согласно объемам работ, а не реальному времени.

     
    © 1997-2005 PHP Club Team
    Rambler's Top100