Je viens de rencontrer un problème que je n'arrive pas à résoudre.
J'ai une table de base de données project_queues
qui est utilisé comme une file d'attente, où je stocke quelques enregistrements. Lorsque les enregistrements sont traités, ils sont supprimés. La suppression est invoquée par la construction de rails record.destroy
dans une boucle qui déclenche DELETE record FROM table
sur la base de données MySql.
Mais j'ai remarqué que dans le tableau project_queues
les autoIncrément Id (clé primaire) a été réinitialisé à 1 . (Ce qui a endommagé mes références dans la table d'audit. Le même enregistrement renvoie maintenant à plusieurs files d'attente différentes).
show create table project_queues;
CREATE TABLE `project_queues` (
`id` int(11) NOT NULL AUTO_INCREMENT,
...
...
`created_at` datetime NOT NULL,
`updated_at` datetime NOT NULL,
PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=1
Je n'utilise pas TRUNCATE project_queues
ou abandonner la construction du tableau et le recréer dans le code.
Quelqu'un a-t-il rencontré le même problème que moi ? Je ne trouve pas non plus d'anomalies dans le journal.
J'utilise Rails 5.2.3 , MariaDB 10.1 .
La connexion entre l'application et la base de données applique ces modes SQL :
- NO_AUTO_VALUE_ON_ZERO
- STRICT_ALL_TABLES
- NO_AUTO_CREATE_USER
- PAS DE SUBSTITUTION DE MOTEUR
- NO_ZERO_DATE
- NO_ZERO_IN_DATE
- ERREUR_POUR_LA_DIVISION_PAR_ZÉRO
Mais je ne pense pas que cela ait un rapport avec l'IA.