Ao rodar a DDL (ver anexo) com BEGIN e ROLLBACK eu recebo um erro.
Alguém por favor poderia me explicar o por que isto acontece? Uma vez que a
coluna da linha 23 não existe na DB.
Obrigado!
*Query: *
(VER ANEXO)
*ERRO:*
psql:file.sql:23: ERROR: deadlock detected
*file.sql linha 23:*
> ALTER TABLE public.ja_clients
> DROP COLUMN IF EXISTS bank_account_id;
BEGIN;
ALTER TABLE integrations.accounts
DROP COLUMN IF EXISTS myob_settings,
ADD COLUMN myob_settings JSON;
COMMENT ON COLUMN integrations.accounts.myob_settings IS 'Settings for MYOB';
ALTER TABLE integrations.bill_items
DROP COLUMN IF EXISTS myob_id,
ADD COLUMN myob_id integrations.FOREIGN_IDENTIFIER;
COMMENT ON COLUMN integrations.bill_items.myob_id IS 'Foreign key for MYOB';
ALTER TABLE integrations.billables
DROP COLUMN IF EXISTS myob_id,
ADD COLUMN myob_id integrations.FOREIGN_IDENTIFIER;
COMMENT ON COLUMN integrations.billables.myob_id IS 'Foreign key for MYOB';
ALTER TABLE integrations.customers
DROP COLUMN IF EXISTS myob_id,
ADD COLUMN myob_id integrations.FOREIGN_IDENTIFIER;
COMMENT ON COLUMN integrations.customers.myob_id IS 'Foreign key for MYOB';
ALTER TABLE integrations.tax_aggregates
DROP COLUMN IF EXISTS myob_id,
ADD COLUMN myob_id integrations.FOREIGN_IDENTIFIER;
COMMENT ON COLUMN integrations.tax_aggregates.myob_id IS 'Foreign key for
MYOB';
ALTER TABLE integrations.taxes
DROP COLUMN IF EXISTS myob_id,
ADD COLUMN myob_id integrations.FOREIGN_IDENTIFIER;
COMMENT ON COLUMN integrations.taxes.myob_id IS 'Foreign key for MYOB';
ALTER TABLE integrations.accounts
DROP CONSTRAINT IF EXISTS cc_at_least_one_setting_needed,
ADD CONSTRAINT cc_at_least_one_setting_needed CHECK
((("qb_settings" IS NOT NULL) :: INTEGER + ("xero_settings" IS NOT NULL) ::
INTEGER + ("freshbooks_settings" IS NOT NULL) :: INTEGER + ("myob_settings" IS
NOT NULL) :: INTEGER + ("ppy_settings" IS NOT NULL) :: INTEGER) > 0);
ALTER TABLE integrations.bill_items
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("unleashed_id_purchase" IS NOT
NULL) :: INTEGER + ("myob_id" IS NOT NULL) :: INTEGER + ("ppy_id" IS NOT NULL)
:: INTEGER) > 0);
ALTER TABLE integrations.billables
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("unleashed_id" IS NOT NULL) ::
INTEGER + ("csv_data" IS NOT NULL) :: INTEGER + ("myob_id" IS NOT NULL) ::
INTEGER) > 0);
ALTER TABLE integrations.bills
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("unleashed_response" IS NOT NULL)
:: INTEGER + ("myob_id" IS NOT NULL) :: INTEGER) > 0);
ALTER TABLE integrations.customers
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("csv_data" IS NOT NULL) :: INTEGER
+ ("myob_id" IS NOT NULL) :: INTEGER + ("ppy_id" IS NOT NULL) :: INTEGER) > 0);
ALTER TABLE integrations.invoices
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("myob_id" IS NOT NULL) :: INTEGER)
> 0);
ALTER TABLE integrations.tax_aggregates
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("qb_id" IS NOT NULL) :: INTEGER + ("xero_id" IS NOT NULL) :: INTEGER +
("freshbooks_id" IS NOT NULL) :: INTEGER + ("myob_id" IS NOT NULL) :: INTEGER +
("ppy_id" IS NOT NULL) :: INTEGER) > 0);
ALTER TABLE integrations.taxes
DROP CONSTRAINT IF EXISTS cc_at_least_one_mapping_needed,
ADD CONSTRAINT cc_at_least_one_mapping_needed CHECK
((("freshbooks_id" IS NOT NULL) :: INTEGER + ("myob_id" IS NOT NULL) ::
INTEGER) > 0);
DROP INDEX IF EXISTS integrations.ix_bill_items_myob_ids;
CREATE INDEX ix_bill_items_myob_ids ON integrations.bill_items USING BTREE
(myob_id)
WHERE myob_id IS NOT NULL;
DROP INDEX IF EXISTS integrations.ix_billables_myob_ids;
CREATE INDEX ix_billables_myob_ids ON integrations.billables USING BTREE
(myob_id)
WHERE myob_id IS NOT NULL;
DROP INDEX IF EXISTS integrations.ix_customers_myob_ids_ids;
CREATE INDEX ix_customers_myob_ids_ids ON integrations.customers USING BTREE
(myob_id)
WHERE myob_id IS NOT NULL;
DROP INDEX IF EXISTS integrations.ix_tax_aggregates_myob_ids_ids;
CREATE INDEX ix_tax_aggregates_myob_ids_ids ON integrations.tax_aggregates
USING BTREE (myob_id)
WHERE myob_id IS NOT NULL;
DROP INDEX IF EXISTS integrations.ix_taxes_myob_ids;
CREATE INDEX ix_taxes_myob_ids ON integrations.taxes USING BTREE (myob_id)
WHERE myob_id IS NOT NULL;
ROLLBACK;_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral