powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Temporary tables
6 сообщений из 6, страница 1 из 1
Temporary tables
    #32230824
Юрис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Существует такой запрос, точнее не запрос, а команда на создание временной таблицы:
$sqlcmd = "CREATE TEMP TABLE tmp_table1 AS SELECT " .$p_distinct. " " .$sql_columns. " FROM " .$sql_table ;

В последствии идёт код в котором запускается данная команда:
$sqlcmd_tmp = $sqlcmd;
$tmp_res = pg_Exec( $conn, $sqlcmd_tmp );
Обычно всё работает гладко и без проблем. Но бывают моменты (от чего это зависит пока ещё не знаю) когда данная команда возвращает ошибку следующего вида :
Warning: pg_exec()[function.pg-exec]:Query failed:ERROR: cache lookup of relation 149064743 failed.

Скажем далее идёт тоже код следующего вида:
$sqlcmd_count = "SELECT * FROM tmp_table1";
$tmp_count = pg_Exec( $conn, $sqlcmd_count );
Он тоже работает без проблем, но также как и в первый раз бывают моменты когда возвращается ошибка.
Warning: pg_exec()[function.pg-exec]:Query failed: ERROR: Relation "tmp_table1" does not exist.

Вот я и хотел спросить от чего это может зависеть. Есть ли какие-то параметры отвечающие за темп таблицы и как они связаны скажем общим максимальным колличеством клиентов и прочими настройками сервера (разделяемая память, кол-во симафоров и т.д.). Возможно это не связано с этим поэтому буду рад выслушать любые предположения.
Спасибо заранее.
...
Рейтинг: 0 / 0
Temporary tables
    #32230835
Vel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Temp таблицы создаются только для данного коннекта. При обрыве коннекта или его завершении они удаляются. Посмотри, можел у тебя при большом количестве соебинений и запросов теряется соединение, а потом воостанавливается, а темпа там уже нет
...
Рейтинг: 0 / 0
Temporary tables
    #32230847
Юрис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кстате забыл добавить. Когда всё это было реализовано на PostgreSQL 7.1 то всё было без проблем. а теперь когда стоит 7.3.3 Появились подобные казусы. Вот я и думаю нет ли различий каких-либо в реализации темп таблиц между данными версиями. Просмотр changelog'ов ничего не дал ( хотя кончно может я что-то и пропустил ).
...
Рейтинг: 0 / 0
Temporary tables
    #32231411
Vel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Конфигурация сервера такая же?
У меня, на 500 пеньке часто обрывался конект при вливке данных и при работе бекендов. Поправил postgres.conf и все нормально заработало
...
Рейтинг: 0 / 0
Temporary tables
    #32231511
Юрис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде да.

А что именно ты правил если не секрет ?
...
Рейтинг: 0 / 0
Temporary tables
    #32231523
Vel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Connection Parameters, Shared Memory Usage, Optimizer Parameters.
При настройках по умолчанию (поставил себе временный сервак для тестирования, чтобы основной не дергать) при psql main p < ~/dump (локально)
раза по два рвались конекшены. В бекенде в темп таблице хранились "выделенные" данные. Так при работе даже шести клиентов одновременно иногда разрывались соединения, потом поднимались, но темпов не было
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Temporary tables
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]