|
Temporary tables
|
|||
---|---|---|---|
#18+
Существует такой запрос, точнее не запрос, а команда на создание временной таблицы: $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. Вот я и хотел спросить от чего это может зависеть. Есть ли какие-то параметры отвечающие за темп таблицы и как они связаны скажем общим максимальным колличеством клиентов и прочими настройками сервера (разделяемая память, кол-во симафоров и т.д.). Возможно это не связано с этим поэтому буду рад выслушать любые предположения. Спасибо заранее. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 11:08 |
|
Temporary tables
|
|||
---|---|---|---|
#18+
Temp таблицы создаются только для данного коннекта. При обрыве коннекта или его завершении они удаляются. Посмотри, можел у тебя при большом количестве соебинений и запросов теряется соединение, а потом воостанавливается, а темпа там уже нет ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 11:15 |
|
Temporary tables
|
|||
---|---|---|---|
#18+
Кстате забыл добавить. Когда всё это было реализовано на PostgreSQL 7.1 то всё было без проблем. а теперь когда стоит 7.3.3 Появились подобные казусы. Вот я и думаю нет ли различий каких-либо в реализации темп таблиц между данными версиями. Просмотр changelog'ов ничего не дал ( хотя кончно может я что-то и пропустил ). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 11:21 |
|
Temporary tables
|
|||
---|---|---|---|
#18+
Конфигурация сервера такая же? У меня, на 500 пеньке часто обрывался конект при вливке данных и при работе бекендов. Поправил postgres.conf и все нормально заработало ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 15:57 |
|
Temporary tables
|
|||
---|---|---|---|
#18+
Вроде да. А что именно ты правил если не секрет ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 17:02 |
|
Temporary tables
|
|||
---|---|---|---|
#18+
Connection Parameters, Shared Memory Usage, Optimizer Parameters. При настройках по умолчанию (поставил себе временный сервак для тестирования, чтобы основной не дергать) при psql main p < ~/dump (локально) раза по два рвались конекшены. В бекенде в темп таблице хранились "выделенные" данные. Так при работе даже шести клиентов одновременно иногда разрывались соединения, потом поднимались, но темпов не было ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2003, 17:13 |
|
|
start [/forum/topic.php?desktop=1&fid=53&tid=2008146]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
158ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
39ms |
get tp. blocked users: |
2ms |
others: | 279ms |
total: | 525ms |
0 / 0 |