Ticket #7 (closed defect: fixed)

Opened 11 years ago

Last modified 11 years ago

Call to ICapeUnit not supported in COLTT

Reported by: michelpons Owned by: michaelhalloran
Priority: minor Milestone:
Component: COLoggers Version: 1.08.3
Keywords: Cc: michaelhalloran

Description

With a tailored-made CAPE-OPEN Unit Operation in PRO/II I get a crash that may be already documented as a bug. Still what is puzzling me is the following line in the log:

Unit <Anonymous> : Call to ICapeUnit not supported in COLTT

How can this be?

Attachments

Screenshots.zip (71.2 KB) - added by michelpons 11 years ago.
Zipped RTF document showing the crash
proii_091109_102903.log (2.3 KB) - added by michelpons 11 years ago.
COLTT log file showing line about ICapeUnit not supported
proii_091109_110915_v107.log (27.4 KB) - added by michelpons 11 years ago.
Log file obtained with COLTT v1.07
proii_102109_180159.log (2.4 KB) - added by michelpons 11 years ago.
Log file obtained with version 1.08.3

Change History

Changed 11 years ago by michelpons

Zipped RTF document showing the crash

Changed 11 years ago by michelpons

COLTT log file showing line about ICapeUnit not supported

comment:1 Changed 11 years ago by michelpons

  • Owner changed from Michael Halloran to michaelhalloran
  • Status changed from new to assigned

comment:2 Changed 11 years ago by michelpons

The log of the same scenario with COLTT v1.07 is also showing, a number of times, the line about call to ICapeUnit not supported by COLTT. However there is no crash of PRO/II. File proii_091109_110915_v107.log is the file obtained with COLTT 1.07.

Changed 11 years ago by michelpons

Log file obtained with COLTT v1.07

comment:3 Changed 11 years ago by michaelhalloran

Michel,
Does this only happen with PRO/II? If so and given that it happens with 1.07 and 1.08 and that ICapeUnit obviously is supported by COLTT and the UNIT - see the get_Ports call later on - I think that PRO/II might be asking for the 0.93 version of CAPE-OPEN before asking for the 1.0 version. ICapeUnit in 0.93 has a different GUID which would fail in either version of COLTT but the description that goes with the GUID is just \"ICapeUnit\" as reported by COLTT. So could you check this with Simsci? We could change COLTT to add the version of the interface when it reports that a CAPE-OPEN interface is not supported.

comment:4 Changed 11 years ago by michelpons

I think you are right about v0.93. My recollection is that this has happened so far only with PRO/II. For a long period of time PRO/II has been compliant only with v0.93. For instance the SimSci Mixer example that is deployed together with PRO/II is compliant with v0.93 only. I think the only thing to do is indeed to state, which version of the ICapeUnit interface is called. That would be much clearer to anybody reading the log. I will however ask SimSci developers.

comment:5 Changed 11 years ago by michelpons

Michael,

SimSci-Esscor has provided me with a code snippet of how PRO/II checks the version of a UO:

IUnknown* lp;
_iVersion = 0;
_p100 = NULL;
_p093 = NULL;
hr = lp->QueryInterface(uuidof(CAPEOPEN100::ICapeUnit), (void)&_p100);
if (SUCCEEDED(hr))
{

_iVersion = 100;

}
else
{

hr = lp->QueryInterface(uuidof(CAPEOPEN093::ICapeUnit), (void)&_p093);
if (SUCCEEDED(hr))
{

_iVersion = 93;

}

}

According to them, they first test on 1.0 and if it does not succeed on 0.93.
On the other hand I installed OLEVIEW and looked at the CAPE-OPEN UO. The UO displays ICapeUnit interface with a 1.0 UUID (678C0998-0100-...). So I think it is indeed necessary to report in the log about the version number of the ICapeUnit interface. But I am curious to see what happens then because normally the UO should be considered as a 1.0 UO, not a 0.93 UO.

comment:6 Changed 11 years ago by michaelhalloran

  • Status changed from assigned to closed
  • Version changed from 1.08.2 to 1.08.3
  • Resolution set to fixed

Logger adds requested GUID into the log when QueryInterface for a CAPE-OPEN interface fails. Included in 1.08.3, builds after 18/10/09.

Needs to be retested with PRO/II.

Changed 11 years ago by michelpons

Log file obtained with version 1.08.3

comment:7 Changed 11 years ago by michelpons

I made a test with COLTT 1.08.3 in PRO/II 8.3 using the tailored-made VB6 UO. The log file (see proii_102109_180159.log attached) now displays the following line:

Unit <Anonymous> : Call to ICapeUnit with GUID {678C0998-0093-11D2-A67D-00105A42887F} not supported in COLTT

It explains now that PRO/II attempts to call on the 0.93 ICapeUnit interface and that seems sufficient as explanation at this stage. Hence the issue mau be closed.

Note: See TracTickets for help on using tickets.