View Issue Details

IDProjectCategoryView StatusLast Update
0026314Open CASCADEOCCT:Data Exchangepublic2019-10-23 11:58
ReporterinkAssigned Togka 
PrioritynormalSeverityminor 
Status closedResolutionreopened 
Summary0026314: Method XCAFDoc_ShapeTool::SetShape() works not correctly.
DescriptionIf you set the shape to the parts, sub-label of this part is not removed and the assembly, which contains a reference to a part is not updated.
Steps To Reproducepload ALL
box b 0 0 0 1 1 1
box b1 -10 -10 -10 10 10 10
box b2 1 1 1 10 10 10
NewDoc d
compound b1 c1
XAddShape d b 1
XAddShape d c1 1
DFB d
XShow d
XSetShape d 0:1:1:3 b2
XShow d
TagsNo tags attached.
Test case numberbugs xde bug26314

Attached Files

  • i7-4790.stp (1,432,210 bytes)

Relationships

related to 0028055 closedapn Add UpdateAssemblies() method for top-down update of assembly compounds 
parent of 0026925 closeddpasukhi Data Exchange - Exception can be raised if assembly is empty 
related to 0025441 closedbugmaster XCAFDoc_ShapeTool::UpdateAssembly() does not update the back-references 
related to 0028082 closedabv UpdateAssembly() method in shape tool is not recursive 

Activities

git

2015-06-04 14:41

administrator   ~0041941

Branch CR26314 has been created by ink.

SHA-1: 5b47dfc3f524700e46b96bd48a84007d9f5a6428


Detailed log of new commits:

Author: ink
Date: Thu Jun 4 14:40:31 2015 +0300

    0026314: Method SetShape working not correctly.

git

2015-06-05 13:16

administrator   ~0041971

Branch CR26314 has been updated forcibly by ink.

SHA-1: 67cfb6561d3484ed013d5b641e9371f5bf59bbdc

gka

2015-06-05 14:21

developer   ~0041977

Branch CR26314 is ready to be tested

git

2015-06-05 16:30

administrator   ~0041994

Branch CR26314 has been updated forcibly by apv.

SHA-1: 196fdae8317526deeafebbd79f010b0474a76dcc

apv

2015-06-05 16:31

tester   ~0041995

Branch CR26314 has been rebased on the current master

apv

2015-06-08 15:36

tester   ~0042021

Last edited: 2015-06-08 15:37

Dear BugMaster,

Branch CR26314 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: 196fdae8317526deeafebbd79f010b0474a76dcc

Number of compiler warnings:
occt component:
   Linux: 25 (25 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 37 (37 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
http://occt-tests/CR26314-master-occt-64/Debian70-64/summary.html
http://occt-tests/CR26314-master-occt-64/Windows-64-VC10/summary.html
bugs xde bug22962
http://occt-tests/CR26314-master-products-64/Debian70-64/summary.html
http://occt-tests/CR26314-master-products-64/Windows-64-VC10/summary.html
dxf doc_1 A3, A6, A7, A8, D4, E8, F1, H6, H8, J2, K3, K6, L3
dxf read bug22396

Testing on Linux:
Total MEMORY difference: 97152584 / 97130406 [+0.02%]
Total CPU difference: 18654.179999999957 / 18400.239999999994 [+1.38%]

Testing on Windows:
Total MEMORY difference: 56435593 / 56538976 [-0.18%]
Total CPU difference: 17340.18195429885 / 17210.90392559895 [+0.75%]

There are differences in images found by testdiff:
http://occt-tests/CR26314-master-products-64/Debian70-64/diff-Debian70-64.html
http://occt-tests/CR26314-master-products-64/Windows-64-VC10/diff-Windows-64-VC10.html
dxf read bug23611

git

2015-06-09 16:19

administrator   ~0042058

Branch CR26314 has been updated forcibly by ink.

SHA-1: 7e5d93ccd9d10b6626420730af6e3c461117cc8b

gka

2015-06-16 11:27

developer   ~0042154

Branch CR26314 is ready to be tested

git

2015-06-16 14:13

administrator   ~0042168

Branch CR26314 has been updated forcibly by apv.

SHA-1: b33bfe552a274f05a02e623aa729e4578fa819dd

apv

2015-06-16 14:14

tester   ~0042169

Branch CR26314 has been rebased on the current master.

git

2015-06-17 13:04

administrator   ~0042185

Branch CR26314 has been updated by apv.

SHA-1: 297f4e2d4d4d642d8876c88f08a284d283fda33a


Detailed log of new commits:

Author: apv
Date: Wed Jun 17 13:04:20 2015 +0300

    Test-cases for issues 0025441 and 0026314

git

2015-06-17 13:27

administrator   ~0042186

Branch CR26314 has been updated forcibly by ink.

SHA-1: 8fb6d9454daf2eec9a5c6d2a421ff01054542711

apv

2015-06-17 13:42

tester   ~0042189

Dear BugMaster,

Branch CR26314 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: b33bfe552a274f05a02e623aa729e4578fa819dd

Number of compiler warnings:
occt component:
   Linux: 25 (25 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 37 (37 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
Not detected

Testing cases:
bugs xde bug26314 - FAILED
http://occt-tests/CR26314-master-occt-64/Debian70-64/bugs/xde/bug26314.html
http://occt-tests/CR26314-master-occt-64/Windows-64-VC10/bugs/xde/bug26314.html

Testing on Linux:
Total MEMORY difference: 96572409 / 97541184 [-0.99%]
Total CPU difference: 18283.38000000002 / 18422.260000000082 [-0.75%]

Testing on Windows:
Total MEMORY difference: 56617926 / 56623130 [-0.01%]
Total CPU difference: 17424.718896198992 / 17102.311629498927 [+1.89%]

git

2015-06-17 14:37

administrator   ~0042196

Branch CR26314 has been updated by ink.

SHA-1: 3528ab2507c0f349032cbef95a8a67b253f4b390


Detailed log of new commits:

Author: ink
Date: Wed Jun 17 14:36:53 2015 +0300

    small correction

gka

2015-06-17 16:44

developer   ~0042200

Branch CR26314 is ready to be tested

git

2015-06-18 12:01

administrator   ~0042225

Branch CR26314 has been updated by apv.

SHA-1: 82dabd944fa80d44988da4ceb56ea073f2a5099f


Detailed log of new commits:

Author: apv
Date: Thu Jun 18 12:00:53 2015 +0300

    Small corrections of test-cases for issues 0025441 and 0026314

apv

2015-06-18 12:31

tester   ~0042226

Dear BugMaster,

Branch CR26314 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: 3528ab2507c0f349032cbef95a8a67b253f4b390

Number of compiler warnings:
occt component:
   Linux: 25 (25 on master)
   Windows: 0 (0 on master)
products component:
   Linux: 37 (37 on master)
   Windows: 0 (0 on master)

Regressions/Differences:
Not detected

Testing cases:
bugs xde bug26314 - OK
http://occt-tests/CR26314-master-occt-64/Debian70-64/bugs/xde/bug26314.html
http://occt-tests/CR26314-master-occt-64/Windows-64-VC10/bugs/xde/bug26314.html

Testing on Linux:
Total MEMORY difference: 96816352 / 96952890 [-0.14%]
Total CPU difference: 18233.14000000003 / 18238.510000000075 [-0.03%]

Testing on Windows:
Total MEMORY difference: 56620301 / 56625066 [-0.01%]
Total CPU difference: 17581.21909939906 / 17088.240339298918 [+2.88%]

git

2015-08-14 10:58

administrator   ~0044231

Branch CR26314 has been deleted by inv.

SHA-1: 82dabd944fa80d44988da4ceb56ea073f2a5099f

Roman Lygin

2015-11-24 18:35

updater   ~0048539

This fix broke the following logic that used to work in pre-7.0.

In pre-7.0 one could create a structure of labels using plain OCAF/XDE API:
-assembly
 -instance
  -part (with shape)
and call ShapeTool::UpdateAssembly (asm_label). The latter would create a valid shape to be attached to asm_label.

Current implementation throws an exception:
  TopoDS_Shape aShape = GetShape(L); //<-- returns null
  Standard_Boolean isFree = aShape.Free(); //exception is thrown

The implementation assumes that the asm_label always contains some non-null shape.

This change can be worked around in user code by creating an empty compound.

git

2016-02-17 10:56

administrator   ~0050859

Branch CR26314 has been created by abv.

SHA-1: ab3951c801a23b01038cf80c43ea41cc2e987558


Detailed log of new commits:

Author: abv
Date: Tue Feb 16 14:53:16 2016 +0300

    Revert "0026314: Method SetShape working not correctly."
    
    This reverts commit e2df45413ea1d506d911c6f29dacf42c80ca8a35.

abv

2016-02-17 10:57

manager  

i7-4790.stp (1,432,210 bytes)

abv

2016-02-17 11:06

manager   ~0050860

I have reverted this change and committed it to branch CR26314, please test and integrate.

The reason of reversion is that this change causes serious performance regression in XDE when dealing with assemblies, as assembly gets updated in the process of filling its structure, and this leads to deep and useless recursive updates. For instance, on file i7-4790.stp (attached), reading on current master takes 11 sec, while on CR26314 (and on previous versions of OCCT) only 3.5 sec.

abv

2016-02-17 11:06

manager   ~0050861

We shall revise this fix and bring it to operable state after OCCT 7 release

git

2016-02-17 13:05

administrator   ~0050867

Branch CR26314 has been updated forcibly by inv.

SHA-1: 9baa853415d8cf9a46d4ac9106b6860d4e8eb8c2

mkv

2016-02-17 18:34

tester   ~0050915

Dear BugMaster,
Branch CR26314 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested on Release mode.
SHA-1: 9baa853415d8cf9a46d4ac9106b6860d4e8eb8c2

Number of compiler warnings:

occt component :
Linux: 0 (0 on master)
Windows: 0 (0 on master)
MacOS : 0 (0 on master)

products component :
Linux: 36 (36 on master)
Windows: 0 (0 on master)

Regressions/Differences/Improvements:
No regressions/differences

Testing cases:
Not needed

Testing on Linux:
occt component :
Total MEMORY difference: 90473352 / 89361649 [+1.24%]
Total CPU difference: 19432.299999999992 / 19290.179999999964 [+0.74%]
products component :
Total MEMORY difference: 25594787 / 25568818 [+0.10%]
Total CPU difference: 5331.849999999989 / 5408.809999999997 [-1.42%]

Testing on Windows:
occt component :
Total MEMORY difference: 57344998 / 57374211 [-0.05%]
Total CPU difference: 17924.686501098957 / 18532.903199898905 [-3.28%]
products component :
Total MEMORY difference: 17241216 / 17255879 [-0.08%]
Total CPU difference: 4996.088025999947 / 5203.382154799955 [-3.98%]

There are no differences in images found by testdiff.

mkv

2016-02-17 18:34

tester   ~0050916

Dear BugMaster,
Branch CR26314 is TESTED.

abv

2016-02-17 18:44

manager   ~0050918

Reverse completed, the issue should be re-considered

abv

2019-09-14 08:04

manager   ~0087079

This issue is not relevant since more optimal approach has been implemented within 0028055 (in OCCT 7.2.0), closing it

git

2019-10-23 11:58

administrator   ~0088491

Branch CR26314 has been deleted by kgv.

SHA-1: 9baa853415d8cf9a46d4ac9106b6860d4e8eb8c2

Related Changesets

occt: master e2df4541

2015-06-18 10:54:09

ink


Committer: bugmaster Details Diff
0026314: Method SetShape working not correctly.

Test-cases for issues 0025441 and 0026314
small correction

Small corrections of test-cases for issues 0025441 and 0026314
Affected Issues
0026314
mod - src/XCAFDoc/XCAFDoc_ShapeTool.cdl Diff File
mod - src/XCAFDoc/XCAFDoc_ShapeTool.cxx Diff File
mod - src/XDEDRAW/XDEDRAW_Shapes.cxx Diff File
mod - tests/bugs/xde/bug22962 Diff File
add - tests/bugs/xde/bug25441 Diff File
add - tests/bugs/xde/bug26314 Diff File

Issue History

Date Modified Username Field Change
2015-06-04 14:39 ink New Issue
2015-06-04 14:39 ink Assigned To => abv
2015-06-04 14:41 git Note Added: 0041941
2015-06-04 14:41 ink Assigned To abv => gka
2015-06-04 14:41 ink Status new => resolved
2015-06-04 14:42 ink Relationship added related to 0025441
2015-06-05 13:16 git Note Added: 0041971
2015-06-05 14:17 kgv Summary Method SetShape working not correctly. => Method XCAFDoc_ShapeTool::SetShape() works not correctly.
2015-06-05 14:21 gka Note Added: 0041977
2015-06-05 14:21 gka Assigned To gka => bugmaster
2015-06-05 14:21 gka Status resolved => reviewed
2015-06-05 15:05 apv Assigned To bugmaster => apv
2015-06-05 16:30 git Note Added: 0041994
2015-06-05 16:31 apv Note Added: 0041995
2015-06-08 15:36 apv Note Added: 0042021
2015-06-08 15:36 apv Assigned To apv => ink
2015-06-08 15:36 apv Status reviewed => assigned
2015-06-08 15:37 apv Note Edited: 0042021
2015-06-09 16:19 git Note Added: 0042058
2015-06-09 16:20 ink Assigned To ink => gka
2015-06-09 16:20 ink Status assigned => resolved
2015-06-16 11:27 gka Note Added: 0042154
2015-06-16 11:27 gka Assigned To gka => bugmaster
2015-06-16 11:27 gka Status resolved => reviewed
2015-06-16 12:04 mkv Assigned To bugmaster => apv
2015-06-16 14:13 git Note Added: 0042168
2015-06-16 14:14 apv Note Added: 0042169
2015-06-17 13:00 apv Test case number => bugs xde bug26314
2015-06-17 13:04 git Note Added: 0042185
2015-06-17 13:27 git Note Added: 0042186
2015-06-17 13:42 apv Note Added: 0042189
2015-06-17 13:42 apv Assigned To apv => ink
2015-06-17 13:42 apv Status reviewed => assigned
2015-06-17 14:37 git Note Added: 0042196
2015-06-17 14:38 ink Assigned To ink => gka
2015-06-17 14:38 ink Status assigned => resolved
2015-06-17 16:44 gka Note Added: 0042200
2015-06-17 16:44 gka Assigned To gka => bugmaster
2015-06-17 16:44 gka Status resolved => reviewed
2015-06-17 17:26 apv Assigned To bugmaster => apv
2015-06-18 12:01 git Note Added: 0042225
2015-06-18 12:31 apv Note Added: 0042226
2015-06-18 12:31 apv Assigned To apv => bugmaster
2015-06-18 12:31 apv Status reviewed => tested
2015-06-19 11:49 bugmaster Changeset attached => occt master e2df4541
2015-06-19 11:49 bugmaster Status tested => verified
2015-06-19 11:49 bugmaster Resolution open => fixed
2015-08-14 10:58 git Note Added: 0044231
2015-11-24 18:35 Roman Lygin Note Added: 0048539
2015-11-25 11:05 gka Relationship added parent of 0026925
2016-02-17 10:56 git Note Added: 0050859
2016-02-17 10:57 abv File Added: i7-4790.stp
2016-02-17 11:06 abv Note Added: 0050860
2016-02-17 11:06 abv Status verified => feedback
2016-02-17 11:06 abv Resolution fixed => reopened
2016-02-17 11:06 abv Note Added: 0050861
2016-02-17 11:06 abv Target Version 7.0.0 => 7.1.0
2016-02-17 13:05 git Note Added: 0050867
2016-02-17 13:07 bugmaster Assigned To bugmaster => mkv
2016-02-17 13:07 bugmaster Assigned To mkv => bugmaster
2016-02-17 13:07 bugmaster Status feedback => reviewed
2016-02-17 13:09 bugmaster Assigned To bugmaster => mkv
2016-02-17 18:34 mkv Note Added: 0050915
2016-02-17 18:34 mkv Note Added: 0050916
2016-02-17 18:34 mkv Assigned To mkv => bugmaster
2016-02-17 18:34 mkv Status reviewed => tested
2016-02-17 18:44 abv Note Added: 0050918
2016-02-17 18:44 abv Assigned To bugmaster => gka
2016-02-17 18:44 abv Status tested => assigned
2016-10-26 11:10 gka Target Version 7.1.0 => 7.2.0
2016-11-10 11:40 ssv Relationship added related to 0028082
2017-07-27 10:38 abv Target Version 7.2.0 => 7.4.0
2019-09-04 12:58 abv Target Version 7.4.0 => 7.5.0
2019-09-14 08:02 abv Relationship added related to 0028055
2019-09-14 08:04 abv Note Added: 0087079
2019-09-14 08:04 abv Status assigned => closed
2019-09-14 08:04 abv Target Version 7.5.0 =>
2019-10-23 11:58 git Note Added: 0088491