We use ORM sequelize.js . My transactions are here ;
First I started conversation between two person ;
sql: 'INSERT INTO "XXXXX" ("id","customer","createdAt","updatedAt","CompanyId") VALUES (DEFAULT,\'905322653555\',\'2017-01-17 19:13:37.751 +00:00\',\'2017-01-17 19:13:37.751 +00:00\',\'1\') RETURNING *;' },
name: 'error', length: 274, severity: 'ERROR', code: '40001', detail: 'Reason code: Canceled on identification as a pivot, during write.', hint: 'The transaction might succeed if retried.', position: undefined, internalPosition: undefined, internalQuery: undefined, where: undefined, schema: undefined, table: undefined, column: undefined, dataType: undefined, constraint: undefined, file: 'predicate.c', line: '4605', routine: 'OnConflict_CheckForSerializationFailure',
Secondly ; i inserted messages as below;
Begin;
'INSERT INTO "YYYYY" ("id","body","from","to","state","data","xId","createdAt","updatedAt","CompanyId","MessageTypeId","ConvId") VALUES (DEFAULT,\'messagetext\',\'905309788255\',\'905309788200\',\'customer\',NULL,\'463DA712296218E0D4\',\'2017-01-17 06:43:19.228 +00:00\',\'2017-01-17 06:43:19.228 +00:00\',\'1\',1,23286) RETURNING *;'
commit;
original: { error: could not serialize access due to read/write dependencies among transactions at Connection.parseE (/app/node_modules/pg/lib/connection.js:554:11) at Connection.parseMessage (/app/node_modules/pg/lib/connection.js:381:17) at Socket.<anonymous> (/app/
Best regards ,
Neslişah Demirci |Database AdministratorAyazağa cad. No:4 Uniq İstanbul Plaza
Gönderen: John R Pierce <pierce@hogranch.com> adına pgsql-general-owner@postgresql.org <pgsql-general-owner@postgresql.org>
Gönderildi: 18 Ocak 2017 Çarşamba 08:10
Kime: pgsql-general@postgresql.org
Konu: Re: [GENERAL] postgresql : could not serialize access due to read/write dependencies among transactions
On 1/17/2017 8:54 PM, Neslisah Demirci wrote:
could not serialize access due to read/write dependencies among transactions
only way to answer this would be to know what the various concurrent transactions are doing.
A message app like whatsapp i decided to use isolation level serializable if i use other transaction levels many conversations started with same number (think about whatsapp web sidebar multipling with same number every message).
again, we'd need to know what your transactions are doing. what you're describing sounds inherently incorrect, like you're doing too much in the application and not enough in the database
I also add an index to my query and my query's execution plan don't use seq scan .
that has no bearing on the above problems.
--
john r pierce, recycling bits in santa cruz