abdelkimo / or-tools

Automatically exported from code.google.com/p/or-tools
1 stars 0 forks source link

Timer goes negative, prevents Timout from working #53

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago

There appears to be a race condition that causes the WallTimer to go negative. 
One of the impacts of this is that it renders the Timeout mechanism inoperable. 
 I reproduced this on Windows7 and Windows8 physical machines, a Win2008 VMware 
machine, and Win2008R2 and Win2012 servers on AWS.

If you run the attached test program, you will eventually see output from the 
SearchLog that shows a negative time. It consistently happens in far fewer 
iterations on my AWS server than my Win7 laptop.

C:\Apps\TestDrawEngine.x64>TestTimerIssue.exe 2>&1 |find "-"
[2014-11-03 03:40:47] Iteration [000001]
[2014-11-03 03:41:48] Iteration [000002]
[2014-11-03 03:42:48] Iteration [000003]
[2014-11-03 03:43:48] Iteration [000004]
[03:43:51] src/constraint_solver/search.cc:243: 200000 branches, -292369 ms, 
99993 failures, tree pos=14/32/47 minref=9 max=47
[03:43:52] src/constraint_solver/search.cc:243: 300000 branches, -290997 ms, 
149992 failures, tree pos=16/39/48 minref=9 max=48
[03:43:53] src/constraint_solver/search.cc:243: 400000 branches, -289562 ms, 
199992 failures, tree pos=17/45/49 minref=9 max=49
[03:43:55] src/constraint_solver/search.cc:243: 500000 branches, -288188 ms, 
249992 failures, tree pos=11/39/50 minref=9 max=50
[03:43:56] src/constraint_solver/search.cc:243: 600000 branches, -286813 ms, 
299993 failures, tree pos=14/44/47 minref=9 max=50
[03:43:57] src/constraint_solver/search.cc:243: 700000 branches, -285442 ms, 
349992 failures, tree pos=15/41/48 minref=9 max=50
[03:43:59] src/constraint_solver/search.cc:243: 800000 branches, -284065 ms, 
399992 failures, tree pos=17/44/49 minref=9 max=50

Original issue reported on code.google.com by e...@edmacdonald.com on 3 Nov 2014 at 2:11

Attachments:

GoogleCodeExporter commented 9 years ago
Fixed, thanks for the feedback.

Original comment by laurent....@gmail.com on 1 Jan 2015 at 12:04