OCA/connector-magento — pull request #17 by guewen (2014-07-17 14:31:37+00:00)
Title: Add a 'to date' boundary to batch jobs

Currently, the batch jobs have a 'from date' boundary only, which is
incremented each time a new batch job is created.

This may cause an issue when many batch jobs are created and don't have
the time to be processed: the same records will be imported several
times.

Example with 4 batch jobs with an interval of 10 minutes (the 30 seconds
difference is a buffer because Magento may commit a new record 'created_at' with a
delay) :

Batch job 1 from 2014-07-17 10:00:00
Batch job 2 from 2014-07-17 10:09:30
Batch job 3 from 2014-07-17 10:19:00
Batch job 4 from 2014-07-17 10:28:30

A product A is modified on Magento at 2014-07-17 10:25:00
None of the batch job could been executed so far (maybe an interruption
or a high load). When the batch job 1 will be processed, it will see
that product A has been modified later than 10:00 so it creates an
import job. Turn of batch job 2, it sees the product modified after
10:10, creates an import job... and so on.

This patch adds a 'to' boundary so the batch jobs become:

Batch job 1 from 2014-07-17 10:00:00 to 2014-07-17 10:10:00
Batch job 2 from 2014-07-17 10:09:30 to 2014-07-17 10:19:30
Batch job 3 from 2014-07-17 10:19:00 to 2014-07-17 10:19:00
Batch job 4 from 2014-07-17 10:28:30 to 2014-07-17 10:28:30

Thus, in the same situation than before, only the batch job 3 would see
the record.