Вопросы с тегом «postgresql»

Все версии PostgreSQL. Добавьте дополнительный тег для конкретной версии, такой как postgresql-11, если этот контекст важен.

1
Блокировка в Postgres для комбинации UPDATE / INSERT
У меня есть две таблицы. Одним из них является таблица журнала; другой содержит, по сути, коды купонов, которые можно использовать только один раз. Пользователь должен иметь возможность использовать купон, который вставит строку в таблицу журнала и пометит купон как использованный (обновив usedстолбец до true). Естественно, здесь есть очевидная проблема состояния …

2
Как часто будет запускаться триггер FOR EACH STATEMENT, если операция вызвана ограничением FK с помощью UPDATE CASCADE?
Я понимаю, что триггер в таблице t, определенной с помощью, FOR EACH STATEMENTбудет запущен один раз, когда я выполню UPDATE t .... Теперь, когда tопределено с помощью FOREIGN KEY ... REFERENCES a ... ON UPDATE CASCADE, и я обновляю N строк a, вызовет ли триггер вызов один раз или N …

1
Снимки хранилища для последовательного резервного копирования postgresql - разные объемы данных и журналов
Мы запускаем много виртуальных машин Linux в среде vmware / shared storage, каждая из которых работает со своим собственным экземпляром postgreSQL (смесь 9.0 и 9.3). В настоящее время вся виртуальная машина находится в одном корневом разделе / ​​томе, и мы добились большого успеха (~ 8 лет), используя снимки на основе …

2
Как получить контекст исключения для вручную вызванного исключения в PL / pgSQL?
В Postgres мы получаем «трассировку стека» исключений, используя этот код: EXCEPTION WHEN others THEN GET STACKED DIAGNOSTICS v_error_stack = PG_EXCEPTION_CONTEXT; Это прекрасно работает для «естественных» исключений, но если мы возбуждаем исключение, используя RAISE EXCEPTION 'This is an error!'; ... тогда нет трассировки стека. Согласно записи в списке рассылки , это …

3
Адрес электронной почты уникальный или первичный ключ?
Я новичок в базах данных. Я прочитал вокруг и обнаружил, что, вероятно, не очень хорошая идея использовать адрес электронной почты в качестве первичного ключа, потому что сравнение строк медленнее, что влияет на производительность в сложных объединениях, и если электронное письмо изменится, мне придется изменить все внешние ключи, что требует много …

1
Занятый стол не пылесосится
Мы используем Postgres 9.2 в Windows для хранения низкочастотных временных рядов: мы вставляем около 2000 строк в секунду каждую секунду 24 часа, 7 дней в неделю без простоев. Существует DELETEтаблица, которая запускается на столе каждые 10 минут или около того, чтобы поддерживать длину таблицы на фиксированном количестве дней. В итоге …

1
Как контрольные суммы данных взаимодействуют с потоковой репликацией?
Контрольные суммы данных - это новая функция, представленная в 9.3, и: появился новый параметр GUC «ignore_checksum_failure», который заставит PostgreSQL продолжить обработку транзакции, даже если обнаружено повреждение В случае сбоя контрольной суммы на ведущем устройстве репликации будут ли эти поврежденные данные реплицироваться на ведомые или будет остановлена ​​репликация. Это зависит от …

1
Фиксация транзакций PostgreSQL в течение нескольких часов
Я столкнулся с проблемой, из-за которой у меня есть два подключения пользователя к моему серверу PostgreSQL, которые работали около 4 часов и находились в состоянии фиксации в течение достаточно долгого времени (по крайней мере, 1 час, когда я смотрел его) , Эти соединения блокируют выполнение других запросов, но сами по …

1
Какие привилегии необходимы для выполнения триггерной функции в PostgreSQL 8.4?
Какие привилегии необходимы для выполнения триггерной функции в PostgreSQL 8.4? Кажется, что привилегии, установленные для роли, не имеют значения для выполнения триггерной функции. Я думаю, что однажды я видел, что привилегии, необходимые для выполнения функции триггера, являются привилегией EXECUTE, но для владельца таблицы, а не для фактической роли, выполняющей действие, …

1
Как получить агрегат оконной функции в Postgres?
У меня есть таблица, содержащая два столбца перестановок / комбинаций целочисленных массивов, и третий столбец, содержащий значение, например, так: CREATE TABLE foo ( perm integer[] NOT NULL, combo integer[] NOT NULL, value numeric NOT NULL DEFAULT 0 ); INSERT INTO foo VALUES ( '{3,1,2}', '{1,2,3}', '1.1400' ), ( '{3,1,2}', '{1,2,3}', …

1
Как я могу запросить очистку журналов транзакций postgresql?
У меня следующая проблема: «Вертикальный» дистрибутив Linux (Sophos UMT) поставляется с PostgreSQL 9.2 для хранения его конфигурации. К сожалению, со времени последнего обновления создается впечатление, что журналы транзакций (WAL) некоторых экземпляров растут без каких-либо сбросов. Это приводит к тому, что папка pg_xlog растет на несколько порядков больше, чем базовая папка. …
11 postgresql 

1
Postgres: количество (*) против количества (id)
Я видел в документации разницу между count(*)а count(pk). Я использовал count(pk)(где pkэто SERIAL PRIMARY KEY), не зная о существовании count(*). Мой вопрос касается внутренних оптимизаций Postgres. Достаточно ли умен, чтобы понять, что a SERIAL PRIMARY KEYбудет существовать в каждой строке и никогда не быть ложным, и просто считать строки, или …

2
Алгоритм нахождения самого длинного префикса
У меня есть две таблицы. Первый - это таблица с префиксами code name price 343 ek1 10 3435 nt 4 3432 ek2 2 Во-вторых, записи звонков с номерами телефонов number time 834353212 10 834321242 20 834312345 30 Мне нужно написать скрипт, который находит самый длинный префикс из префиксов для каждой …

1
Ошибка: функция set_valued, вызываемая в контексте, которая не может принять набор. О чем это?
Я использую Postgresql 9.1, с Ubuntu 12.04. Вдохновленный ответ Крейга на мой вопрос Конкатенацию setof типа или setof записи , я думал , я бы хорошо с использованием return query, setof recordи генератор серии в этой функцию plpgsql: create or replace function compute_all_pair_by_craig(id_obj bigint) returns setof record as $$ begin …

1
PostgreSQL pg_stat_activity показывает COMMIT
Недавно мы заменили наш сервер баз данных на модернизированный компьютер с четырьмя четырехъядерными процессорами и 32 ГБ оперативной памяти. Мы также переназначили нашу старую коробку в качестве ведомой с потоковой репликацией. Оба бокса работают под управлением CentOS 6.3 и PostgreSQL 9.2. Postgres - единственное, что работает на каждой из коробок. …
11 postgresql 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.