Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Cannot Reproduce
-
1.0.13, 1.1.2
-
None
-
2018-06, 2018-07, 2018-08, 2018-09, 2018-10, 2018-11, 2018-12, 2018-13, 2018-14, 2018-15, 2018-16, 2018-17, 2018-18, 2018-19, 2018-20, 2018-21
Description
If two cpimport jobs are submitted closely such that they both run together and they are for the same single table, then there's a chance both will fail because the lock system may have a bug.
The theory is that cpimport without a -P <pm list> option tries to lock the table without a dbroot list. TableLockServer::lock() doesn't find a lock that already exists because there's no dbroot overlap.
Recommend we modify TableLockInfo::overlaps() – used by lock() – to return true if the dbrootlist is empty().