Утечка соединений HikariCP из-за длительных запросов INSERT MySQLJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Утечка соединений HikariCP из-за длительных запросов INSERT MySQL

Сообщение Anonymous »

Я столкнулся с проблемой, из-за которой запросы INSERT к таблице MySQL застревают в «ожидании блокировки», и даже после innodb_lock_wait_timeout (50 с) соединения не возвращаются к HikariCP, что в конечном итоге исчерпывает пул.
Сценарий:
Выполнено несколько повторяющихся вставок в одну и ту же таблицу. (file_record_v2, уникальный file_id) с буфером в 2–3 минуты между каждым запросом.

Код: Выделить всё

INSERT INTO file_record_v2
(iso_country_code,
created_at,
modified_at,
bucket,
file_id,
file_key,
file_name,
path,
status,
upload_date,
uploaded_by)
VALUES      ('IN',
'2025-10-01 17:22:39.867',
'2025-10-01 17:22:39.867',
'Fo/89NveRaWnfjgvfsmrIE5ca7kQ2LkqvV9AKTmn0Qw=',
'777a7379-6c96-35d1-b47e-17b1708258f5',
'abcdef',
'1759316708189.csv',
NULL,
'success',
'2025-10-01',
'admin@gmail.com');
< /code>
[b] Что происходит: < /strong> < /p>
Первая вставка преуспела.
2 -й запрос запросов мгновенно бросает исключение - java.sql.sqlintegrityConstraintviolationException: дублировать запись ...
После того, как все последующие вставки. Вошли в 50 -й секунды (все 50 -й секунды (все это касается 50 -й секунды.innodb_lock_wait_timeout
).
Медленные журналы MySQL:[/b]
> User@Host: admin[admin] @ [xx.xxx.xx.216] thread_id: 3225252 server_id: 2921685337
> Query_time: 50.939886 Lock_time: 50.939609 Rows_sent: 0 Rows_examined: 0 use
> shard0; SET timestamp=1759319339; insert into file_record_v2
> (iso_country_code, created_at, modified_at, bucket, file_id, file_key,
> file_name, path, status, upload_date, uploaded_by) values ('IN',
> '2025-10-01 17:18:59.548', '2025-10-01 17:18:59.548',
> 'Fo/89NveRaWnfjgvfsmrIE5ca7kQ2LkqvV9AKTmn0Qw=',
> '777a7379-6c96-35d1-b47e-17b1708258f5', 'abcdef', '1759316708189.csv',
> null, 'success', '2025-10-01', 'admin@gmail.com');
< /code>
Временная шкала всех запросов:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/797 ... rt-queries
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»