Getting error while appeniding identifiers

pooja.cm
pooja.cm Newcomer
Hi,
Could you please help on the below issue?

When we are appending instrument list using the API getting error ‘Could not find InstrumentList with an Id of "0x072a5b7fbef6b1f7"’ occasionally.

We are using below sequence while appending instrument list

1.instrumentIdentifierList.Add(new InstrumentIdentifier { Identifier = sIdentifier, IdentifierType = GetIdentifierType(sIdentifierType) });
2.pricesnapInstrumentList = new InstrumentList { Name = sScheduledRequestName };
3._extractionsContext.InstrumentListOperations.Create(pricesnapInstrumentList);
4._extractionsContext.InstrumentListOperations.AppendIdentifiers(pricesnapInstrumentList, instrumentIdentifierList, false);

Below is the stack trace

End of stack trace from previous location where exception was thrown --- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at ThomsonReuters.Dss.Core.RestApi.Threading.Tasks.AsyncHelper.RunSync[TResult](Func`1 func) in d:\BuildAgent\work\5085137dd0574126\src\Core\Threading\Tasks\AsyncHelper.cs:line 25 at ThomsonReuters.Dss.Api.Core.OperationsBase.InvokeSynchronously[T](Func`1 action) in d:\BuildAgent\work\5085137dd0574126\src\ServiceLayer\ServiceLayer.Client\Core\OperationsBase.cs:line 397 at ThomsonReuters.Dss.Api.Core.OperationsBase.Execute[T](DssDataServiceContext context, Uri uri, String httpMethod, Boolean isSingle, OperationParameter[] parameters, String queryOptions) in d:\BuildAgent\work\5085137dd0574126\src\ServiceLayer\ServiceLayer.Client\Core\OperationsBase.cs:line 238 at ThomsonReuters.Dss.Api.Extractions.InstrumentListOperations.AppendIdentifiers(InstrumentList instrumentList, IEnumerable`1 identifiers, Boolean keepDuplicates) in d:\BuildAgent\work\5085137dd0574126\src\Api\RestApi.Client\ExtractionsClientApi.generated.cs:line 11950

Regadrs,
Pooja CM

Best Answer

  • @Pooja,

    The DSS C# library normally uses DSS REST API to communicate with DSS server. The InstrumentList ID is provided in response body of /Extractions/InstrumentLists/Create endpoint, so the issue should not be the scenario that the Instrument List is not successfully created on DSS with step#3

    I suspect that the pricesnapInstrumentList object might somehow be cleaned up by GC, so I ask you to try adding the GC.KeepAlive.

Answers

  • Hi @pooja.cm,

    Was the step4 called immediately after the step3?

    Could you try adding the GC.KeepAlive() for the pricesnapInstrumentList object? Below is the sample of code.

        _extractionsContext.InstrumentListOperations.Create(pricesnapInstrumentList);
        _extractionsContext.InstrumentListOperations.AppendIdentifiers(pricesnapInstrumentList, instrumentIdentifierList, false);

        GC.KeepAlive(pricesnapInstrumentList);
  • pooja.cm
    pooja.cm Newcomer
    Hi @veerapath
    Yes step 4 is called immediately after step3. There is no explicit delay. I thought these are synchronous call.
    Sure will try this. Actually we are not getting this on our dev environment. We are getting this on our UAT and PROD environment that to not all ways

    Thank you,
    Pooja CM
  • pooja.cm
    pooja.cm Newcomer
    Hi @veerapath
    Can you please advise if adding a delay between step 3 and step 4 would help? And are these call are synchronous or async call. If we want to add delay, what would be the idle delay time

    Regards,
    Pooja CM
  • Hi @pooja.cm,

    I understand that the function is synchronous call. I have also tried the scenario that the instrument is removed on DSS before the append is called. I get different error message: "InstrumentList of id '0x072ced4b02d6b696' not found.", so it likely is not because the instrument list is not exist on DSS.

  • pooja.cm
    pooja.cm Newcomer
    Hi @veerapath,
    Im getting similar error,
    Could not find InstrumentList with an Id of "0x072a5b7fbef6b1f7"’ . If you see my first thread, I have added this.

  • pooja.cm
    pooja.cm Newcomer
    Hi @Veerapath,
    Thanks for the input. Will add the necessary changes and will get back.

    Thank you,
    Pooja CM