Мене дуже турбує ця дивна поведінка, яку я бачу у auto_increment
значенні, записаному в bidID таблиці ставок після виконання масової вставки за допомогою збереженої процедури:
INSERT INTO Bids (itemID, buyerID, bidPrice)
SELECT itemID, rand_id(sellerID, user_last_id), FLOOR((1 + RAND())*askPrice)
FROM Items
WHERE closing BETWEEN NOW() AND NOW() + INTERVAL 1 WEEK ORDER BY RAND() LIMIT total_rows;
Наприклад, якщо auto_increment
значення bidID на початку становить 101, а я вставив 100 рядків, кінцеве значення стає 213 замість 201. Однак bidID цих вставлених рядків працює послідовно до максимуму 201.
Перевіривши наступне,
SHOW VARIABLES LIKE 'auto_inc%';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| auto_increment_increment | 1 |
| auto_increment_offset | 1 |
+--------------------------+-------+
Я поняття не маю, чому це відбувається. Що може спричинити стрибок auto increment
вартості?
show variables like '%innodb_autoinc_lock_mode%';
результатом?