ERROR: out of shared memory

TeamCity 2020.2 with PostgreSQL 9.6 on Windows Server 2019 Standard with 32 GB RAM memory.

After a large commit with a lot of files on Git (Boost library), TeamCity gives the following error:

Error collecting changes for VCS repository '"Development" {instance id=7, parent internal id=1, parent id=BuildX_Development, description: "http://xx.x.x.xxx:3000/administrator/Xxxxxx.git#refs/heads/development"}'
jetbrains.buildServer.serverSide.db.UnexpectedDBException: Unexpected exception: SQL error when doing 'DML query'
ERROR: out of shared memory
Hint: You might need to increase max_locks_per_transaction. while performing SQL query: SQL DML: insert into vcs_change ( modification_id, file_num, vcs_file_name, vcs_file_name_hash, relative_file_name_pos, relative_file_name, relative_file_name_hash, change_type, change_name, before_revision, after_revision ) values ( ?, ?, ?, ?, ?, ?, ?, ?, substr(?, 1, 64), substr(?, 1, 200), substr(?, 1, 200) ) | PARAMETERS: 14141, 11959, "VMS/3rdParty libs/Boost/boost_1_75_0/boost/spirit/home/karma/detail/string_compare.hpp", null, 0, null, null, 1, "added", "5e170b040be422b7cb2388a159487295c0544483", "52341b77d7f77dca6702a5203e3594d6e4534e0f": org.postgresql.util.PSQLException: ERROR: out of shared memory Hint: You might need to increase max_locks_per_transaction.

Increasing PostgreSQL max_locks_per_transaction from 64 to 2000 did not help.

We suspect this is caused by the way TeamCity creates many object in the same transaction

Do you have any suggestions or bugfixes?

If TeamCity only stores the filenames for informational purposes, it would be nice if there was an option to turn this off.

0

Please sign in to leave a comment.