Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unable to migrate in Azure DevOps Server 2019: VS403417 #66

Open
tbergstedt opened this issue Jun 20, 2019 · 4 comments
Open

Unable to migrate in Azure DevOps Server 2019: VS403417 #66

tbergstedt opened this issue Jun 20, 2019 · 4 comments
Labels
bug waiting Waiting for reply by author

Comments

@tbergstedt
Copy link

We are testing migration in Azure DevOps Server 2019 and are having trouble making it work. For every workitem, we receive the error
VS403417: ChangedBy value cannot be empty when BypassRules is specified

When debugging, it seems to us that Microsoft has changed returning "identity fields" from a string {first name} {last name} <{user-id}> to a complete Microsoft.VisualStudio.Services.WebApi.IdentityRef. When we "hack" in Common\Migration\Phase1\WitBatchRequestGenerators\BaseWitBatchRequestGenerator.cs to instead return the old type of value using the code below, it works again:

if(sourceField.Value.GetType() == typeof(Microsoft.VisualStudio.Services.WebApi.IdentityRef)){
  var identity = (Microsoft.VisualStudio.Services.WebApi.IdentityRef)sourceField.Value;
  string updatedIdentityFieldValue = identity.DisplayName + " <" + identity.UniqueName + ">";
  KeyValuePair<string, object> updatedField = new KeyValuePair<string, object>
}

We know this not a viable solution to the problem. But we wanted to notify you that there might be a general problem using this tool in Azure DevOps Server 2019, and we feel we are not proficient enough in you tool to make the correct changes ourselves.

(Btw, we are still using TFS 2018 in our production environment, so the migration works fine there without using this "hack").

@tbergstedt tbergstedt changed the title Unable to migrate in Azure DevOps 2019: VS403417 Unable to migrate in Azure DevOps Server 2019: VS403417 Jun 20, 2019
@obvioussean
Copy link
Member

Thank you for reporting this. I'll investigate, since the API version we're using should not be returning IdentityRef.

@obvioussean
Copy link
Member

@tbergstedt I'm unable to reproduce this. Have you made any other changes to the migrator? By using the m131 package it should not have any issues with returning an IdentityRef. And for sure you're migrating between two TFS 2019 servers?

@obvioussean obvioussean added the waiting Waiting for reply by author label Sep 12, 2019
@dingzhanjun
Copy link

dingzhanjun commented Sep 19, 2019

I am on 2019 and having the same issue too,

@jackpoz
Copy link

jackpoz commented Oct 1, 2020

This issue happened to me today too using another software but with the exact same error. While troubleshooting I changed WorkItemStoreFlags from BypassRules to None and received a different error about the work item type being disabled. I checked in the process, re-enabled it and that fixed the "ChangedBy value cannot be empty when BypassRules is specified" issue.

Hope this will help people reaching this github issue when googling 😃

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug waiting Waiting for reply by author
Projects
None yet
Development

No branches or pull requests

4 participants