View Issue Details

IDProjectCategoryView StatusLast Update
0031038Open CASCADEOCCT:DRAWpublic2021-06-15 15:47
ReporterabvAssigned Tobugmaster  
PrioritynormalSeverityfeature 
Status closedResolutionfixed 
Target Version7.5.0Fixed in Version7.5.0 
Summary0031038: Draw - adaptations for running tests with CLang address sanitizer
DescriptionRunning tests with CLang sanitizers is very slow, and some adaptations are needed to do that effectively.
Steps To ReproduceSee Debug Hints and Tips dev guide
TagsNo tags attached.
Test case numberNot required

Relationships

related to 0032404 closedbugmaster Draw - problems with definition of cpulimit in tests 
child of 0030557 newdpasukhi Coding - eliminate errors reported by -fsanitize 

Activities

git

2019-10-06 09:34

administrator   ~0087884

Branch CR31038 has been created by abv.

SHA-1: f8ad0cb7807c2eb9965ba992235b799d1b7f3eea


Detailed log of new commits:

Author: abv
Date: Sun Oct 6 09:33:53 2019 +0300

    0031038: Draw - adaptations for running tests with CLang address sanitizer

Author: abv
Date: Tue Sep 24 08:32:09 2019 +0300

    0030993: Modeling Algorithms - heap-use-after-free reported by Clang address sanitizer in BRepFeat_MakeRevolutionForm::Perform()
    
    Use of reference to object removed from the list after that removal is avoided

kgv

2019-10-06 09:52

developer   ~0087886

> make sure that if CMAKE_CXX_COMPILER is set to C++ compiler (e.g. "clang++-6.0") > and CMAKE_C_COMPILER is set to C compiler (e.g. "clang-6.0")
and -> then?

> The tool must have exaclty that name.
exaclty

> Be prepared that it works muck slower
muck

>+> sudo ln -s /usr/bin/llvm-symbolizer-6.0 /usr/bin/llvm-symbolizer
``` I suppose is needed.

> +// Returne time in seconds defined by argument string,
Returns

git

2019-10-15 20:58

administrator   ~0088147

Branch CR31038 has been updated by abv.

SHA-1: 786568ae90fdd9ce3778b553aa611d1ce21c1052


Detailed log of new commits:

Author: abv
Date: Tue Oct 15 20:57:42 2019 +0300

    # corrections

git

2019-11-06 08:43

administrator   ~0088740

Branch CR31038_1 has been created by abv.

SHA-1: 499d37cfdb16d42f36c74e659ddf2b24e38e8e52


Detailed log of new commits:

Author: abv
Date: Sun Oct 6 09:33:53 2019 +0300

    0031038: Draw - adaptations for running tests with CLang address sanitizer
    
    New optional environment variable CSF_CPULIMIT_FACTOR is introduced, allowing scaling the argument given to DRAW command cpulimit by specified factor.
    
    Command testgrid is extended by two new options:
    - -skipped: to re-run tests skipped in specified log
    - -skip: to skip specified number of tests in the beginning of test sequence
    
    Temporary Tcl scripts generated by test system are now removed from the test log directories immediately after the test execution, to save disk space.
    
    Advises on use of CLang sanitizers are added in guide "Debugging hints and tips".

abv

2019-11-06 08:44

manager   ~0088741

The patch is pushed to CR31038_1, please review

kgv

2019-11-06 10:57

developer   ~0088745

         # prepare command file for running test case in separate instance of DRAW
-        set fd_cmd [open $logdir/$group/$grid/${casename}.tcl w]
+       set file_cmd "$logdir/$group/$grid/${casename}.tcl"
+        set fd_cmd [open $file_cmd w]

Broken indentation.

No other remarks.

git

2019-11-06 18:14

administrator   ~0088754

Branch CR31038_1 has been updated forcibly by abv.

SHA-1: bc966a93296a6c109625b3efab6bd4917fbb311a

bugmaster

2019-11-07 10:47

administrator   ~0088768

Tested in framework of WEEK-45

Combination -
OCCT branch : WEEK-45
master SHA - a1a9b249523438cf9b3d510fb4ff74bd4a5675b6
5f5b1aed1c6e139bbd34314eca77ae7abcd8895c
Products branch : WEEK-45 SHA - f88bc93e3637c4c42f3c154c0b0e167d4e297ae6
was compiled on Linux, MacOS and Windows platforms and tested in optimize mode.

Number of compiler warnings:
No new/fixed warnings

Regressions/Differences/Improvements:
No regressions/differences

CPU differences:
Debian80-64:
OCCT
Total CPU difference: 16844.70000000007 / 16848.430000000117 [-0.02%]
Products
Total CPU difference: 10837.970000000065 / 10873.690000000062 [-0.33%]
Windows-64-VC14:
OCCT
Total CPU difference: 18366.671875 / 18319.515625 [+0.26%]
Products
Total CPU difference: 12848.578125 / 12848.859375 [-0.00%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

git

2019-11-10 11:41

administrator   ~0088834

Branch CR31038_1 has been deleted by inv.

SHA-1: bc966a93296a6c109625b3efab6bd4917fbb311a

git

2019-11-10 11:42

administrator   ~0088871

Branch CR31038 has been deleted by inv.

SHA-1: 786568ae90fdd9ce3778b553aa611d1ce21c1052

Related Changesets

occt: master f9797095

2019-10-06 06:33:53

abv


Committer: bugmaster Details Diff
0031038: Draw - adaptations for running tests with CLang address sanitizer

New optional environment variable CSF_CPULIMIT_FACTOR is introduced, allowing scaling the argument given to DRAW command cpulimit by specified factor.

Command testgrid is extended by two new options:
- -skipped: to re-run tests skipped in specified log
- -skip: to skip specified number of tests in the beginning of test sequence

Temporary Tcl scripts generated by test system are now removed from the test log directories immediately after the test execution, to save disk space.

Advises on use of CLang sanitizers are added in guide "Debugging hints and tips".
Affected Issues
0031038
mod - dox/dev_guides/debug/debug.md Diff File
mod - src/Draw/Draw_BasicCommands.cxx Diff File
mod - src/DrawResources/TestCommands.tcl Diff File
rm - tests/demo/begin Diff File

Issue History

Date Modified Username Field Change
2019-10-06 09:33 abv New Issue
2019-10-06 09:33 abv Assigned To => apn
2019-10-06 09:33 abv Relationship added child of 0030557
2019-10-06 09:34 git Note Added: 0087884
2019-10-06 09:52 kgv Note Added: 0087886
2019-10-15 20:58 git Note Added: 0088147
2019-11-04 22:32 abv Assigned To apn => abv
2019-11-06 08:43 git Note Added: 0088740
2019-11-06 08:44 abv Note Added: 0088741
2019-11-06 08:44 abv Assigned To abv => kgv
2019-11-06 08:44 abv Status new => resolved
2019-11-06 08:44 abv Steps to Reproduce Updated
2019-11-06 10:57 kgv Note Added: 0088745
2019-11-06 10:57 kgv Assigned To kgv => bugmaster
2019-11-06 10:57 kgv Severity minor => feature
2019-11-06 10:57 kgv Status resolved => reviewed
2019-11-06 18:14 git Note Added: 0088754
2019-11-07 10:47 bugmaster Note Added: 0088768
2019-11-07 10:47 bugmaster Status reviewed => tested
2019-11-07 10:58 bugmaster Test case number => Not required
2019-11-10 11:18 bugmaster Changeset attached => occt master f9797095
2019-11-10 11:18 bugmaster Status tested => verified
2019-11-10 11:18 bugmaster Resolution open => fixed
2019-11-10 11:41 git Note Added: 0088834
2019-11-10 11:42 git Note Added: 0088871
2020-12-02 16:40 emo Fixed in Version => 7.5.0
2020-12-02 17:12 emo Status verified => closed
2021-06-15 15:47 kgv Relationship added related to 0032404