rptrecord created as MyISAM
Closed this issue · 5 comments
Mrten commented
Leaving aside that MyISAM is an outdated engine it also prevents usage on Percona Cluster:
DBD::mysql::db do failed: Percona-XtraDB-Cluster prohibits use of DML command on a table (email.rptrecord) that resides in non-transactional storage engine with pxc_strict_mode = ENFORCING or MASTER at ./dmarcts-report-parser line 720.
Mrten commented
Changing to InnoDB makes that work. Then:
Cannot add report data to database (Percona-XtraDB-Cluster prohibits use of DML command on a table (email.rptrecord) without an explicit primary key with pxc_strict_mode = ENFORCING or MASTER). Skipped.
An
ALTER TABLE `rptrecord` ADD `id` INT NOT NULL AUTO_INCREMENT FIRST, ADD PRIMARY KEY (`id`);
later everything works OK.
techsneeze commented
Totally valid point! However, I don't believe anything in this specific project is creating it that way. We're relying on an external projects script, referenced in the readme, to create those. Regardless, this is great to have documented for reference, if others run into the same problem. Perhaps someday we'll write a new script from scratch, but for legacy reasons have been attempting to be complimentary to the original project.
techsneeze commented
Yikes! That's embarrassing! I totally forgot that had been included.
Mrten commented
no probs 😃 thanks for the merge!