Sync bugs

10 posts, 0 answers
  1. Ola
    Ola avatar
    12 posts
    Member since:
    Nov 2010

    Posted 12 May 2011 Link to this post

    Hi,

    I've come across a problem when trying to sync bugs from TeamPulse to TFS, I get the error message: "Input string was not in correct format". In the log it says:
    --------------------------------------
    2011-05-12 14:07:23,001 [5] DEBUG  - Created SyncAction of ChangeType 'Add' for EntityType 'Bug' with Id '9'.  
    2011-05-12 14:07:23,002 [5] DEBUG  - ... Added SyncActionField for target field name 'System.Title' with desired value of 'Product Administration - New Category'.  
    2011-05-12 14:07:23,004 [5] DEBUG  - ... Converted Status from 'Not Done' to 'Not Done' for Bug #9 using ValueMapping 'BugStatusMapping'.  
    2011-05-12 14:07:23,004 [5] DEBUG  - ... Added SyncActionField for target field name 'System.State' with desired value of 'Not Done'.  
    2011-05-12 14:07:23,004 [5] DEBUG  - ... Added SyncActionField for target field name 'Microsoft.VSTS.Common.Severity' with desired value of '3 - Medium'.  
    2011-05-12 14:07:23,004 [5] DEBUG  - ... Added SyncActionField for target field name 'System.AreaPath' with desired value of 'All'.  
    2011-05-12 14:07:23,004 [5] DEBUG  - ... Added SyncActionField for target field name 'System.IterationPath' with desired value of 'Ver. 4.3.5'.  
    2011-05-12 14:07:23,005 [5] ERROR TeamPulse.Integration.Core.Services.SynchronizationService - Error syncing stories.  System.FormatException: Input string was not in a correct format.
       at System.Number.ParseSingle(String value, NumberStyles options, NumberFormatInfo numfmt)
       at TeamPulse.Integration.Core.Synchronization.SyncSetAgent.ApplyFieldFormatConversion(Object fieldValueToConvert, String sourceFieldType, String targetFieldType)
       at TeamPulse.Integration.Core.Synchronization.SyncSetAgent.GenerateSyncSetFromTeamPulseDeltaSet(SyncConfiguration syncConfig, DeltaSet teamPulseDeltaSet, String username)
       at TeamPulse.Integration.Core.Synchronization.SyncSetAgent.GenerateSyncSet(SyncConfiguration syncConfig, DeltaSet sourceDeltaSet, DeltaSet targetDeltaSet, String username)
       at TeamPulse.Integration.Core.Services.SynchronizationService.SyncStories(Int32 projectId, String username)
    -----------------------------------------------------------------------------------------

    /Ola
  2. Ryan
    Admin
    Ryan avatar
    164 posts

    Posted 16 May 2011 Link to this post

    Hello Ola,

    It appears that the TeamPulse sync service is having a hard time parsing a Priority on a bug. Our best guess is that you are using a non-whole number or fractional number in a priority field and that the parser is getting tripped up between using a comma instead of a period to represent that (or vice-versa). Would you happen to know what culture or language format your TeamPulse server is set to?

    As a non-ideal work around, removing the comma or decimal from the priority should allow the sync to work.

    Greetings,
    Ryan
    the Telerik team
    TeamPulse R1 Officially Released!
    Do you want to be able to directly talk to our professionals and ask questions about the things that interest you?
    Reserve a seat for the TeamPulse Weekly Live Demo today!
  3. Ola
    Ola avatar
    12 posts
    Member since:
    Nov 2010

    Posted 18 May 2011 Link to this post

    Hi and thank you for your reply,

    In Team Pulse, I can't set the priority to a decimal value - it's a dropdown with the values 1,2,3,4.
    The culture on the TeamPulse server is Swedish/Sweden. I've had an other issue with the decimal separator, it might have something to do with that.

    /Ola
  4. Ryan
    Admin
    Ryan avatar
    164 posts

    Posted 19 May 2011 Link to this post

    Hello Ola,

    Yes, I still think it is something to do with the culture settings. We have a bug logged for this and it should be fixed for our next release.

    In the meantime, I have another workaround for you. Again, it is not ideal, but hopefully it will allow you to sync. You can turn off syncing for just the Priority field on bugs. To do this you will need to modify your sync mappings by following the steps laid out in the documentation: Editing Synchronization Mappings. (Please save a local backup of these settings before you modify them.)

    You will need to find a line in the mappings in the Bugs section that looks like the following, and remove it.

    <FieldMapping TeamPulseFieldName="Priority" TeamPulseFieldType="single" DestinationFieldName="Microsoft.VSTS.Common.Priority" DestinationFieldDisplayName="Priority" DestinationFieldType="integer" />


    Kind regards,
    Ryan
    the Telerik team
    TeamPulse R1 Officially Released!
    Do you want to be able to directly talk to our professionals and ask questions about the things that interest you?
    Reserve a seat for the TeamPulse Weekly Live Demo today!
  5. Ola
    Ola avatar
    12 posts
    Member since:
    Nov 2010

    Posted 26 May 2011 Link to this post

    Hi,

    The workaround solves my problem. But this issue seems to apply to more than just Bugs and Priority. I recently changed a lot of estimations on Stories in TeamPulse, when I tried to sync I got the same error - "(FieldName='Story Points' | Value='3.000' | Status='InvalidType')". Is there any way I can help you with this problem, I realize it depends on localization. Can I set up the database to use a different Collation or use another regional setting on the server?

    The Bug issue was managable, but not being able to use the estimation on stories is a big fall back for our team.
    /Ola
  6. Ryan
    Admin
    Ryan avatar
    164 posts

    Posted 26 May 2011 Link to this post

    Hi Ola,

    If possible, changing your regional settings on the server to English (United States) should *fingers crossed* fix the problem. 

    Greetings,
    Ryan
    the Telerik team
    TeamPulse R1 Officially Released!
    Do you want to be able to directly talk to our professionals and ask questions about the things that interest you?
    Reserve a seat for the TeamPulse Weekly Live Demo today!
  7. Ola
    Ola avatar
    12 posts
    Member since:
    Nov 2010

    Posted 30 May 2011 Link to this post

    Hi again,

    I tried changing to English (United States) in regional settings, both on the TFS server and the TeamPulse server. This did not change the behaviour though. When I create the Story in TFS (Sharepoint), the sync completes without error, but if I try to sync a new story from TeamPulse or edit a previously synced story, the error occurs.

    /Ola
  8. Jordan
    Admin
    Jordan avatar
    123 posts

    Posted 31 May 2011 Link to this post

    Hi Ola,

    Have you restarted the Integration Service after you changed the culture? The service have to be restarted to get the new culture.

    Regards,
    Jordan
    the Telerik team
    TeamPulse R1 Officially Released!
    Do you want to be able to directly talk to our professionals and ask questions about the things that interest you?
    Reserve a seat for the TeamPulse Weekly Live Demo today!
  9. Ola
    Ola avatar
    12 posts
    Member since:
    Nov 2010

    Posted 31 May 2011 Link to this post

    Hi,

    I didn't have the Integration Services installed, after installing them I had to restart the server and after doing that the sync worked! :)
    I don't know if the solution was to restart the server or installing the integration services or both, but now it works!

    Thank you!

    /Ola
  10. Jordan
    Admin
    Jordan avatar
    123 posts

    Posted 31 May 2011 Link to this post

    Hello Ola,

    I'm glad that you finally solve your problems.

    When I said integration service I was talking about the TeamPulse.IntegrationService. This is a windows service that is coming with TeamPulse and handles the synchronization.

    Greetings,
    Jordan
    the Telerik team
    TeamPulse R1 Officially Released!
    Do you want to be able to directly talk to our professionals and ask questions about the things that interest you?
    Reserve a seat for the TeamPulse Weekly Live Demo today!
Back to Top