PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

ActiveRecord::StatementInvalid:PG::Error:ERROR:не може да изпълни UPDATE в транзакционна грешка само за четене в Heroku

Репликата всъщност никога не е била рекламирана. Вижте коментарите.

Можете да разберете кога реплика следва главен сървър, защото:

SELECT pg_is_in_recovery();

ще върне true. Това не може да върне true в главен сървър, защото единственият път, когато главен сървър може да бъде в режим на възстановяване, е когато все още се стартира - и тогава не можете да се свържете с него, така че не можете да изпълните тази команда. Това е вярно от 9.2 и 9.3beta; това може да се промени в бъдещи версии, така че ако четете това и в по-нова версия, проверете за специална функция за проверка дали сървърът е реплика.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. не разбирам json_agg в този контекст

  2. Анотацията на Spring Data @CreatedDate не работи за мен

  3. Можем ли винаги да извличаме колона с дата като низ (varchar) с knex и postgres?

  4. NodeJS Postgres грешка getaddrinfo ENOTFOUND

  5. Създайте масив int8[] във функцията PostgreSQL C