Search
Resolved
as Not Reproducible Help for as Not Reproducible

1
Sign in to vote
0
Sign in to vote
Sign in
to vote
Type: Bug
ID: 505007
Opened: 10/28/2009 5:55:34 AM
Access Restriction: Public
1
Workaround(s)
0
User(s) can reproduce this bug
When I create an WF, one of my activities appears several times. In order to call the correct activity, I use more than one CorrelationParameter on the Activity Interface declaration.

It seems that a known effect of the compiler, not respecting the order of the attributes when compiling, scrambles the order of the Correlation Parameters, not allowing the WWF engine to correlate correctly with a different version of the DLL containing the Activity (no code changes has been on that activity).
Details (expand)

Product Version

.NET Framework 3.5 SP1
Product Language
English

Operating System
Windows Vista RTM/SP1/SP2
Operating System Language
English

Architecture
x86

Priority
(1=blocking, 2=important, 3=nice to have)
1

Severity
(1=major functionality issue, 2=important functionality issue, 3=nice to have)
2

Steps to Reproduce
I have this sample interface:

[ExternalDataExchange]
[CorrelationParameter("step")]
[CorrelationParameter("group")]
public interface IGetExchangeService
{
/// <summary>
/// Initialize the correlation
/// </summary>
/// <param name="step">Step Id</param>
/// <param name="group">Group Id</param>
[CorrelationInitializer]
void Initialize(string step, string group);

/* Rest of the definition */

/// <summary>
/// Action Event
/// </summary>
[CorrelationAlias("step", "e.Step")]
[CorrelationAlias("group", "e.Group")]
event EventHandler<ExchangeArgs> OnExchangeReceived;
}

Some times the compiler changes the order of the CorrelationParameter and this inhibits the correct correlation of the Activity who implements this Interface. (It seems that the correlation process takes the correlation attributes in order and not by name).


Actual Results
The correlation fails and the WF is discarded (without errors).
Expected Results
The correlation should take the Correlation Parameters by name, not by order.
If the WF is discarded, there should be an error indicating that this is the cause.
Component Usage
(any information on your scenario that may help in investigating your issue)
 

How often does this happen?
Sometimes Happens

Have you seen this problem in other versions?
I don't know if this issue existed previously

File Attachments
0 attachments
Sign in to post a comment.
Posted by Microsoft on 10/29/2009 at 5:04 AM
Thank you for your feedback, We are currently reviewing the issue you have submitted. If this issue is urgent, please contact support directly(http://support.microsoft.com)
Posted by Microsoft on 11/2/2009 at 3:14 PM
HiperiX, I need a little more information to move along with the investigation.

First, have you hooked the WorkflowRuntime.ServicesExceptionNotHandled event? There might be some feedback about the failure coming through this event. If so, the Exception property of the event args might have some helpful information.

Second, do you have a consistent way to reproduce this issue? I can't figure out a way to reliably get the attributes reordered and a consistent repro would help me debug.

Third, the code in EventQueueName which does the correlation value comparison uses a name based look-up and not an order based look-up. If the attribute ordering is the issue then it is manifesting itself in some other part of the correlation pipeline. Can you try turning off "Just My Code" debugging and break on all first chance exceptions? There might be some other issue popping up.

Thanks for your help. Just post your responses here in this Connect issue and we'll try to get to the bottom of it all.
Posted by Microsoft on 11/2/2009 at 4:16 PM
I was just informed that the correct process is to resolve this issue for now. When you have more data for us, please reactivate this issue. Thanks HiperiX.

Nate Talbert
Developer, Windows Workflow Foundation