View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000981 | .NET API | Implementation Bug | public | 2010-03-11 09:45 | 2010-12-20 01:44 |
Reporter | ozgurberksoy | Assigned To | Randy Armstrong | ||
Priority | normal | Severity | minor | Reproducibility | sometimes |
Status | resolved | Resolution | fixed | ||
Summary | 0000981: .NET API 2.00 - Client Handle Problem with first data changed callback | ||||
Description | In "AddItems" method of "OpcCom.Da.Subscription", item handles delivered by clients are translated to internal handles (starting from 1 and increased by 1 for each item), and after "((IOPCItemMgt) m_group).AddItems" call "m_items" table is initialized with the item handles delivered by client. Problem occurs if a data change callback comes from server before/during "m_items" initialization. Callback is executed and client receives server handles from net api in data changed callback. (our client's item handles are starting from 0 and increased by 1 for each item and this is the cause of the shift on display) Here are the steps to reproduce the problem:
| ||||
Additional Information | Performing locking on AddItems and DataChange functions solves the problem, as callbacks won't be executed till "m_items" table is initialized. Please see attachment "OpcCom.Da.Subscription.cs". | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
|
The "m_items" table need to be initialized BEFORE the call to AddItems. (see OPC DA Specification IOPCItemMgt::AddItems: "Note that if an Advise is active, the client will begin receiving callbacks for active items. This can occur very quickly, perhaps even before the client has time to process the returned results. The client must be designed to deal with this.") |
|
Fixed as suggested. |
Date Modified | Username | Field | Change |
---|---|---|---|
2010-03-11 09:45 | ozgurberksoy | New Issue | |
2010-03-11 09:45 | ozgurberksoy | File Added: OpcCom.Da.Subscription.cs | |
2010-06-18 13:10 | Holger Witting | Note Added: 0001902 | |
2010-06-18 13:12 | Holger Witting | Note Edited: 0001902 | |
2010-12-20 01:44 | Randy Armstrong | Status | new => resolved |
2010-12-20 01:44 | Randy Armstrong | Resolution | open => fixed |
2010-12-20 01:44 | Randy Armstrong | Assigned To | => Randy Armstrong |
2010-12-20 01:44 | Randy Armstrong | Note Added: 0002201 |