View Issue Details

IDProjectCategoryView StatusLast Update
0029873Open CASCADEOCCT:Data Exchangepublic2018-07-14 12:41
Reporterkgv Assigned Tobugmaster  
PrioritynormalSeverityminor 
Status closedResolutionfixed 
Product Version6.6.0 
Target Version7.4.0Fixed in Version7.4.0 
Summary0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing
DescriptionThere are several issues with STEP files having external references:
- STEPCAFControl_Reader::Transfer() does NOT report failure if external files have not been found (see test case).
- testreadstep command reads STEP file without external references.
- If DOCUMENT_FILE refers to a subfolder, it is ignored and external files are not found. See "s1_pe_214.stp" referring to subfolder "s1_pe_214".

0000310=DOCUMENT_TYPE('');
#311=DOCUMENT_FILE('s1_pe_214/foot_asm.stp','S1_PE_TOP - FOOT','',0000310,'','');
0000312=DOCUMENT_REPRESENTATION_TYPE('digital',#311);
#313=PROPERTY_DEFINITION('external definition','',#311);
0000314=PROPERTY_DEFINITION_REPRESENTATION(#313,0000242);
#315=DESCRIPTIVE_REPRESENTATION_ITEM('data format','STEP AP214');
#316=REPRESENTATION_CONTEXT('','document parameters');
0000317=REPRESENTATION('document format',(#315),#316);
0000318=PROPERTY_DEFINITION('document property','',#311);
#319=PROPERTY_DEFINITION_REPRESENTATION(0000318,0000317);
#320=EXTERNAL_SOURCE(IDENTIFIER('foot_asm.stp'));
#321=IDENTIFICATION_ROLE('document source','source system');
#322=APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT('foot_asm.stp',#321,#320,
(#311));
#323=APPLIED_DOCUMENT_REFERENCE(#311,'',(0000247));
0000324=OBJECT_ROLE('mandatory','');
Steps To Reproduce
pload XDE VISUALIZATION
ReadStep D1 [locate_data_file trj4_xr1-db-214.stp]
XGetOneShape s1 D1
nbshapes s1
# OK - external files have been found and Shape is not empty

file copy -force [locate_data_file trj4_xr1-db-214.stp] test_copy.stp
ReadStep D2 test_copy.stp
XGetOneShape s2 D2
nbshapes s2
# KO - external files have NOT been found, the Shape is empty
# but ReadStep has not been reported any error!!!

TagsNo tags attached.
Test case numberNot needed

Activities

git

2018-07-10 14:46

administrator   ~0077419

Branch CR29873 has been created by skl.

SHA-1: 1e1fb6a42d838d6b02e7679d31d10a387393e2ad


Detailed log of new commits:

Author: skl
Date: Tue Jul 10 14:45:11 2018 +0300

    0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing

git

2018-07-11 11:10

administrator   ~0077444

Branch CR29873 has been updated forcibly by skl.

SHA-1: c01546f49ed23db64b3f3c2f3b015ba1464f362e

skl

2018-07-11 17:52

developer   ~0077461

Branch CR29873 is ready to be reviewed.

Results of Draw tests:
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-OCCT-Windows-64-VC10-opt-test-compare/3/
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-Products-Windows-64-VC10-opt-test-compare/3/
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-OCCT-Debian70-64-opt-test-compare/3/

gka

2018-07-11 19:12

developer   ~0077470

Branch CR29873 was reviewed

kgv

2018-07-11 20:06

developer   ~0077474

+  FILE* aFile = OSD_OpenFile(fullname, "r");

Opened file handles in several places are never closed.
Is it designed behavior?

kgv

2018-07-11 20:09

developer   ~0077475

Note that to check file existence only, it is usually done like this (without opening a file):
> OSD_File(aPath).Exists()

git

2018-07-12 07:23

administrator   ~0077484

Branch CR29873 has been updated forcibly by skl.

SHA-1: aebb9945799089d02f8b21f8185304a081e4f3b5

skl

2018-07-12 09:17

developer   ~0077485

Branch CR29873 is ready to be reviewed with using "OSD_File(aPath).Exists()".

Results of Draw tests:
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-OCCT-Windows-64-VC10-opt-test-compare/4/
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-Products-Windows-64-VC10-opt-test-compare/4/
http://jenkins-test-11.nnov.opencascade.com:8080/job/CR29873-master-SKL-OCCT-Debian70-64-opt-test-compare/5/

kgv

2018-07-12 09:54

developer   ~0077490

In addition, git commit does not describe important modifications in the code.

gka

2018-07-12 11:07

developer   ~0077498

Please correct this fix in according to given remarks.

git

2018-07-12 11:36

administrator   ~0077503

Branch CR29873 has been updated by skl.

SHA-1: 8cfedb8607ab1898926b54ca6005d24ace0b2276


Detailed log of new commits:

Author: skl
Date: Thu Jul 12 11:35:43 2018 +0300

    0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing
    
    Output information about failure during reading of external file is added (can be checked by using Draw command "tpstat" ).
    If reader can not find external file at the first found location it checks another information about file path and uses new location for import external file.

gka

2018-07-12 12:29

developer   ~0077510

Please precise in the commit message in what entity new location was searched

git

2018-07-12 12:37

administrator   ~0077512

Branch CR29873 has been updated forcibly by skl.

SHA-1: 5d8ee726c531f15e2294e78d35268350ae557e30

skl

2018-07-12 12:39

developer   ~0077513

Commit message is updated.

gka

2018-07-12 12:59

developer   ~0077516

Branch CR29873 was reviewed

bugmaster

2018-07-12 17:42

administrator   ~0077545

Combination -
OCCT branch : CR29873 SHA - aebb9945799089d02f8b21f8185304a081e4f3b5
Products branch : master SHA - 49c228d5213fed6561994d0148827917539e38c8
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:
Debian70-64:
OCCT
Total CPU difference: 17214.810000000103 / 17169.739999999776 [+0.26%]
Products
Total CPU difference: 7475.710000000031 / 7501.920000000043 [-0.35%]
Windows-64-VC10:
OCCT
Total CPU difference: 16982.487261398637 / 16852.39802749857 [+0.77%]
Products
Total CPU difference: 8240.206821499867 / 8212.11104139987 [+0.34%]


Image differences :
No differences that require special attention

Memory differences :
No differences that require special attention

bugmaster

2018-07-12 17:55

administrator   ~0077546

Branch was formed incorrectly

List of commits:
* 0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing
* 0025852: Text to BRep algorithm produces bad faces for circled symbols
* 0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing


git

2018-07-12 18:17

administrator   ~0077550

Branch CR29873_1 has been created by kgv.

SHA-1: 47c2b13cd4e12710ce69ee4450cdd74270ffac79


Detailed log of new commits:

Author: skl
Date: Tue Jul 10 14:45:11 2018 +0300

    0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing
    
    Output information about failure during reading of external file is added (can be checked by using Draw command "tpstat").
    If reader can not find external file at the first found location
    (using entity APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT) it checks another information about file path
    (using entity DOCUMENT_FILE related with early mentioned entity) and uses new location for import external file.

kgv

2018-07-12 18:18

developer   ~0077551

Please take branch CR29873_1.

git

2018-07-14 12:41

administrator   ~0077600

Branch CR29873_1 has been deleted by inv.

SHA-1: 47c2b13cd4e12710ce69ee4450cdd74270ffac79

git

2018-07-14 12:41

administrator   ~0077605

Branch CR29873 has been deleted by inv.

SHA-1: 5d8ee726c531f15e2294e78d35268350ae557e30

Related Changesets

occt: master 3b7f55e9

2018-07-10 11:45:11

skl


Committer: bugmaster Details Diff
0029873: Data Exchange - STEPCAFControl_Reader::Transfer() returns TRUE even when external files are missing

Output information about failure during reading of external file has been added (it can be checked by using Draw command "tpstat").
If the reader cannot find an external file at the first found location
(using entity APPLIED_EXTERNAL_IDENTIFICATION_ASSIGNMENT) it checks other information about file path
(using entity DOCUMENT_FILE related with the above-mentioned entity) and uses a new location for import of the external file.
Affected Issues
0029873
mod - src/STEPConstruct/STEPConstruct_ExternRefs.cxx Diff File
mod - tests/de/step_1/ZG4 Diff File
mod - tests/de/step_1/ZG5 Diff File
mod - tests/de/step_1/ZG6 Diff File
mod - tests/de/step_1/ZZ3 Diff File
mod - tests/de/step_1/ZZ4 Diff File
mod - tests/de/step_1/ZZ5 Diff File
mod - tests/de/step_1/ZZ6 Diff File
mod - tests/de/step_1/ZZ7 Diff File
mod - tests/de/step_1/ZZ8 Diff File

Issue History

Date Modified Username Field Change
2018-06-15 14:47 kgv New Issue
2018-06-15 14:47 kgv Assigned To => gka
2018-06-15 14:56 kgv Product Version 7.3.0 => 6.6.0
2018-07-04 09:06 kgv Assigned To gka => skl
2018-07-04 09:06 kgv Status new => assigned
2018-07-10 14:46 git Note Added: 0077419
2018-07-11 11:10 git Note Added: 0077444
2018-07-11 17:52 skl Note Added: 0077461
2018-07-11 17:52 skl Assigned To skl => gka
2018-07-11 19:11 gka Status assigned => resolved
2018-07-11 19:12 gka Note Added: 0077470
2018-07-11 19:12 gka Assigned To gka => bugmaster
2018-07-11 19:12 gka Status resolved => reviewed
2018-07-11 20:06 kgv Note Added: 0077474
2018-07-11 20:06 kgv Assigned To bugmaster => skl
2018-07-11 20:06 kgv Status reviewed => feedback
2018-07-11 20:09 kgv Note Added: 0077475
2018-07-12 07:23 git Note Added: 0077484
2018-07-12 09:17 skl Note Added: 0077485
2018-07-12 09:19 skl Assigned To skl => kgv
2018-07-12 09:20 skl Status feedback => resolved
2018-07-12 09:53 kgv Assigned To kgv => gka
2018-07-12 09:54 kgv Note Added: 0077490
2018-07-12 11:06 gka Assigned To gka => skl
2018-07-12 11:07 gka Note Added: 0077498
2018-07-12 11:07 gka Status resolved => assigned
2018-07-12 11:36 git Note Added: 0077503
2018-07-12 12:29 gka Note Added: 0077510
2018-07-12 12:37 git Note Added: 0077512
2018-07-12 12:39 skl Note Added: 0077513
2018-07-12 12:40 skl Assigned To skl => gka
2018-07-12 12:41 skl Status assigned => resolved
2018-07-12 12:59 gka Note Added: 0077516
2018-07-12 12:59 gka Assigned To gka => bugmaster
2018-07-12 12:59 gka Status resolved => reviewed
2018-07-12 17:42 bugmaster Test case number => Not needed
2018-07-12 17:42 bugmaster Note Added: 0077545
2018-07-12 17:42 bugmaster Status reviewed => tested
2018-07-12 17:55 bugmaster Note Added: 0077546
2018-07-12 17:55 bugmaster Assigned To bugmaster => skl
2018-07-12 17:55 bugmaster Status tested => assigned
2018-07-12 18:17 git Note Added: 0077550
2018-07-12 18:18 kgv Note Added: 0077551
2018-07-12 18:18 kgv Assigned To skl => bugmaster
2018-07-12 18:18 kgv Status assigned => resolved
2018-07-12 18:18 kgv Status resolved => reviewed
2018-07-12 18:47 bugmaster Status reviewed => tested
2018-07-14 12:26 bugmaster Changeset attached => occt master 3b7f55e9
2018-07-14 12:26 bugmaster Status tested => verified
2018-07-14 12:26 bugmaster Resolution open => fixed
2018-07-14 12:41 git Note Added: 0077600
2018-07-14 12:41 git Note Added: 0077605