Re: Duplicate key violation on upsert
От | Matt Magoffin |
---|---|
Тема | Re: Duplicate key violation on upsert |
Дата | |
Msg-id | 03EC7E36-EA7F-452A-B0A9-2F0FBB73E914@msqr.us обсуждение исходный текст |
Ответ на | Re: Duplicate key violation on upsert (Adrian Klaver <adrian.klaver@aklaver.com>) |
Ответы |
Re: Duplicate key violation on upsert
|
Список | pgsql-general |
On 21/03/2020, at 4:00 AM, Adrian Klaver <adrian.klaver@aklaver.com> wrote:On 3/20/20 2:17 AM, Matt Magoffin wrote:Hello,
Indexes:
"da_datum_pkey" UNIQUE, btree (node_id, ts, source_id) CLUSTER, tablespace "solarindex"
"da_datum_reverse_pkey" UNIQUE, btree (node_id, ts DESC, source_id), tablespace "solarindex"
"da_datum_x_acc_idx" UNIQUE, btree (node_id, source_id, ts DESC, jdata_a) WHERE jdata_a IS NOT NULL, tablespace "solarindex"
The error/query looks like:
ERROR: duplicate key value violates unique constraint “_hyper_1_1931_chunk_da_datum_x_acc_idx"
What is the above index UNIQUE over?
What is da_datum_x_acc_idx index below indexed over?
The _hyper_1_1931_chunk_da_datum_x_acc_idx index has the same definition as the da_datum_x_acc_idx above (it is defined on a child table). That is, they are both essentially:
UNIQUE, btree (node_id, source_id, ts DESC, jdata_a) WHERE jdata_a IS NOT NULL
The da_datum_pkey index is what the ON CONFLICT cause refers to, so (node_id, ts, source_id) is UNIQUE as well.
— m@
В списке pgsql-general по дате отправления: