質問: "INSERT INTO `hoge1` ( `id`, `customer_code`, `spot_code`, `spot_1`, `spot_2`, `place_1`, `place_2`, `center_id`, `center_name`, `business_id`, `business_name`, `create_date`, `update_date` ) VALUES "; } ``` 【2015/12/29 追記】 トランザクションを試して様子を見ていましたが問題が再発しました。 ※レコード内容まではログをとっておらず、insertの発行回数だけ取得していましたが、 5000 * 11で約55000件なのに、レコードは10万件になっていました。
回答: テーブルロックでトランザクションを掛けてはいかがでしょうか? 上記ソースだとコンストラクタ、デストラクタに仕掛けるのが手軽に検証できますね。 または、クエリが一意ということで、二重登録になるケースがわかりませんが、 一意であるべきフィールドにユニーク制約を設定しておくのも良いかと思います。 上記で重複エラーになるかどうかを検証すれば、二重にバッチが走っているかもわかると思います。 より原因究明に近づくことでしょう。