View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0023983 | Open CASCADE | OCCT:Tests | public | 2013-05-22 12:43 | 2015-05-14 15:32 |
Reporter | apn | Assigned To | bugmaster | ||
Priority | normal | Severity | minor | ||
Status | closed | Resolution | fixed | ||
Platform | Windows | OS | VC++ 2008 | ||
Product Version | 6.6.0 | ||||
Target Version | 6.9.0 | Fixed in Version | 6.9.0 | ||
Summary | 0023983: Cpulimit doesn't kill test cases | ||||
Description | Problem is reproduced on product testgroup emesh/standard. Begin file contains "cpulimit 1000", but some cases is not killed and they hang and execute by hours. | ||||
Tags | No tags attached. | ||||
Test case number | Not needed | ||||
|
Please indicate which particular tests exhibit this problem, whether this behavior is reproduced on master or in some branch, is it regular or random, and provide other relevant details if you know. |
|
This problem is reproduced on Windows platform in random mode on all testing branches. Various tests exhibit this problem (A7, A8, B4, etc). Every time process hangs on various test cases. test grids: emesh standard dxf doc_2 sat doc_1 |
|
As we discussed, most likely cpulimit command does not kill the process because it does not run CPU, possibly waiting for some event or entering deadlock. Taking that this happens in product tests only, but in different groups, the license module should be suspected first. Hence my proposal is: 1. To extend cpulimit command so that it controls also (or instead?) elapsed time 2. To investigate (debug) hanging test cases and fix the hang-up reason |
|
Would it be possible next time some test hangs to attach a debugger to the process and let me check what happens? |
|
I've modified command cpulimit and tested it on group emesh. Tests were killed by elapsed time. Please, could you review this changes? Changes are in branch CR23983. |
|
Please change the code to allow for resetting the elapsed timer (as it is done for CPU timer). In your current version, OSD_Timer runs inside CpuFunc and never reset. I suggest it should be made a global variable (instead of ELAP_CURRENT, now unused) and reset + started in cpulimit function. Further please enable elapsed time control on Linux. Minor remarks: - Replace 'ELAP' by 'elapsed' in messages - The code has extra indentation around line 415 and below; please adjust - There is no need to have ELAP_LIMIT as separate variable, as it is always equal to CPU_LIMIT |
|
Branch CR23983 has been updated forcibly by ski. SHA-1: c342cd37d6663c92071048240c0f51369c06821a |
|
Branch CR23983 has been updated forcibly by ski. SHA-1: 4b84cfd5ecd9e7e3cc9bc779dc1aa152e42454fe |
|
Elapsed time control on Linux was enabled. Remarks were applied (resetting of elapsed timer, unused variables were removed) Changes are located in branch CR23983 Please, review. |
|
Reviewed, please test. Minor remarks: instance of OSD_Timer is defined before inclusion of OSD_Timer.hxx, this means (if the code compiles) that that inclusion is unnecessary. Definition of aTimer should be better moved to lines ~ 64 where other static vars are defined. |
|
Branch CR23983 has been updated forcibly by ski. SHA-1: dd792688eadd879149f8b594b4c4726921ce7b37 |
|
Branch CR23983 has been updated forcibly by apv. SHA-1: b787f41a9407b863c4c573b3abb453072cd44039 |
|
Branch CR23983 has been rebased on the current master |
|
Branch CR23983 has been updated by ski. SHA-1: 7c08ddb6dc2b49641cd4e50d65aab3d8702a95b8 Detailed log of new commits: Author: ski Date: Tue Dec 2 19:39:24 2014 +0300 Correction of thread terminating on linux. |
|
Dear BugMaster, Branch CR23983 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested. SHA-1: 7c08ddb6dc2b49641cd4e50d65aab3d8702a95b8 Number of compiler warnings: occt component: Linux: 18 (18 on master) Windows: 0 (0 on master) products component : Linux: 11 (11 on master) Windows: 0 (1 on master) Regressions/Differences: Not detected Testing cases: Not needed Testing on Linux: Total MEMORY difference: 363441172 / 363569648 Total CPU difference: 46738.29000000009 / 47718.53000000004 Testing on Windows: Total MEMORY difference: 277345112 / 276568708 Total CPU difference: 36345.484375 / 40656.6875 |
|
Branch CR23983 has been deleted by inv. SHA-1: 7c08ddb6dc2b49641cd4e50d65aab3d8702a95b8 |
occt: master 0b309a75 2014-12-04 12:09:23
Committer: bugmaster Details Diff |
0023983: Cpulimit doesn't kill test cases Modified command cpulimit using OSD_Timer and method ElapsedTime() Enabled elapsed time control on Linux. Added resetting of elapsed timer. Unused variables were removed Definition of OSD_Timer aTimer was replaced. Correction of thread terminating on linux. |
Affected Issues 0023983 |
|
mod - src/Draw/Draw_BasicCommands.cxx | Diff File |
Date Modified | Username | Field | Change |
---|---|---|---|
2013-05-22 12:43 | apn | New Issue | |
2013-05-22 12:43 | apn | Assigned To | => mkv |
2013-05-22 12:43 | apn | Assigned To | mkv => isn |
2013-05-22 12:43 | apn | Status | new => assigned |
2013-05-22 12:53 |
|
Note Added: 0024461 | |
2013-05-22 12:53 |
|
Assigned To | isn => mkv |
2013-05-22 12:53 |
|
Status | assigned => feedback |
2013-05-22 12:54 |
|
Assigned To | mkv => apn |
2013-05-23 12:29 | apn | Note Added: 0024487 | |
2013-05-23 12:30 | apn | Assigned To | apn => abv |
2013-05-29 13:13 | apn | Note Edited: 0024487 | |
2013-05-31 08:15 |
|
Note Added: 0024575 | |
2013-05-31 08:15 |
|
Assigned To | abv => szv |
2013-05-31 08:15 |
|
Status | feedback => assigned |
2013-05-31 14:21 |
|
Note Added: 0024582 | |
2013-05-31 14:21 |
|
Assigned To | szv => mkv |
2013-05-31 14:21 |
|
Status | assigned => feedback |
2013-06-04 12:49 | apn | Note Added: 0024626 | |
2013-06-04 12:49 | apn | Note Edited: 0024626 | |
2013-06-04 12:50 | apn | Assigned To | mkv => abv |
2013-06-07 08:58 |
|
Note Added: 0024683 | |
2013-06-07 08:58 |
|
Assigned To | abv => apn |
2013-06-07 08:58 |
|
Status | feedback => assigned |
2013-12-20 09:04 | kgv | Target Version | 6.7.0 => 6.7.1 |
2014-04-04 18:27 |
|
Target Version | 6.7.1 => 6.8.0 |
2014-09-26 10:58 |
|
Target Version | 6.8.0 => 7.1.0 |
2014-10-31 12:54 | git | Note Added: 0033933 | |
2014-10-31 14:20 | git | Note Added: 0033945 | |
2014-10-31 14:23 |
|
Note Added: 0033946 | |
2014-10-31 14:23 |
|
Assigned To | apn => abv |
2014-10-31 14:23 |
|
Status | assigned => resolved |
2014-12-02 09:54 |
|
Note Added: 0034900 | |
2014-12-02 09:54 |
|
Assigned To | abv => bugmaster |
2014-12-02 09:54 |
|
Status | resolved => reviewed |
2014-12-02 11:10 |
|
Assigned To | bugmaster => apv |
2014-12-02 11:36 | git | Note Added: 0034904 | |
2014-12-02 12:00 | git | Note Added: 0034906 | |
2014-12-02 12:01 |
|
Note Added: 0034907 | |
2014-12-02 19:40 | git | Note Added: 0034943 | |
2014-12-03 14:27 |
|
Note Added: 0034970 | |
2014-12-03 14:27 |
|
Assigned To | apv => bugmaster |
2014-12-03 14:27 |
|
Status | reviewed => tested |
2014-12-03 14:27 |
|
Test case number | => Not needed |
2014-12-05 14:42 | bugmaster | Changeset attached | => occt master 0b309a75 |
2014-12-05 14:42 | bugmaster | Status | tested => verified |
2014-12-05 14:42 | bugmaster | Resolution | open => fixed |
2015-01-19 16:23 | bugmaster | Target Version | 7.1.0 => 6.9.0 |
2015-01-26 12:36 | git | Note Added: 0036602 | |
2015-05-14 15:29 |
|
Status | verified => closed |
2015-05-14 15:32 |
|
Fixed in Version | => 6.9.0 |