DataSync
This topic provides troubleshooting steps for DataSync issues.
When attempting a Load All operation, some users receive the following error message:
LoadAll completed with errors: Impossible to load data to <Customers>., InnerMessage: Impossible to load data to <Customers>. -> Could not load file or assembly 'Microsoft.SqlServer.Types, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'. Le fichier spécifié est introuvable.
2020-08-06 10:56:23.041 -04:00 [ERR] Could not load file or assembly 'Microsoft.SqlServer.Types, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'. Le fichier spécifié est introuvable. System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.SqlServer.Types, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'. Le fichier spécifié est introuvable. File name: 'Microsoft.SqlServer.Types, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, IntPtr ptrLoadContextBinder) at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, IntPtr ptrLoadContextBinder) at System.Reflection.Assembly.Load(AssemblyName assemblyRef) at System.Data.SqlClient.SqlConnection.ResolveTypeAssembly(AssemblyName asmRef, Boolean throwOnError) at System.TypeNameParser.ResolveAssembly(String asmName, Func`2 assemblyResolver, Boolean throwOnError, StackCrawlMark& stackMark) at System.TypeNameParser.ConstructType(Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark) at System.TypeNameParser.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError, Boolean ignoreCase, StackCrawlMark& stackMark) at System.Type.GetType(String typeName, Func`2 assemblyResolver, Func`4 typeResolver, Boolean throwOnError) at System.Data.SqlClient.SqlConnection.CheckGetExtendedUDTInfo(SqlMetaDataPriv metaData, Boolean fThrow) at System.Data.SqlClient.SqlDataReader.GetValueFromSqlBufferInternal(SqlBuffer data, SqlMetaData metaData) at System.Data.SqlClient.SqlDataReader.GetValue(Int32 i) at DBProviders.BaseProvider.RecordReaderOfArrayOfFastExpando(IDataReader reader, List`1 metadata) at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReader[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken) at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceForLoadAll[T](SqlReadableForDataLoad sqlObject, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken) at DataSyncQueryExecutor.ExecutorExtensions.ProduceForLoadAll[T](ConnectionDefinitionForDataLoad connectionDetails, SqlReadableForDataLoad sqlObject, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken) at DataSynchronizer.SqlObjectForSynchronization.<>cDisplayClass3_0.<<LoadAll>b_0>d.MoveNext() — End of stack trace from previous location where exception was thrown — at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceAndConsume(Func`2 producerCallback, JobAction actionType, CancellationToken cancellationToken) at DataSynchronizer.SqlObjectForSynchronization.LoadAll(CancellationToken cancellationToken)
Solution
These errors are caused by a database type mismatch in one of your table fields. To resolve the issue, simply remove the checkmark in the Sync column next to the problematic table (it will have a red X in the Type Destination column as shown in the image below). When re-attempting your load operation, you should no longer receive the error message.
When attempting to use DataSync for the first time after installing it, some users receive the following error message:
Solution
This error is typically happens when users have manually downloaded and installed the wrong version of .NET Core (including the SDK).
To resolve the issue:
-
Uninstall DataSync as well as all .NET Core packages that you currently have installed.
-
Restart your server.
-
Re-install DataSync. The DataSync installation process will automatically install the correct version of .NET Core which should resolve the issue.
See System Requirements for more information on DataSync installation requirements.
Sometimes, users are unable to create SharePoint connections in DataSync if dual-factor authentication is enabled in their configuration.
Solution
Remove dual-factor authentication from your SharePoint configuration by following the steps below:
-
Log in to SharePoint and navigate to the Account Settings menu.
-
In the Account Settings menu, click the Additional Security Verification option at the bottom of the Security Info pane.
-
Select the App Passwords option and create a new password for DataSync. Now, no double authentication will be necessary when logging in to DataSync.
After attempting to save a ProvideX connection, the user's UI begins looping and never saves the connection configuration.
Solution
To resolve this issue, you must change your DataSync application pool in the IIS Manager to a Windows or domain user that has access to the shared Sage 100 path.
To do so:
-
Open the IIS Manager and select Application Pools.
-
From the Application Pools list, right-click on DataSyncIdentity and select Advanced Settings from the drop-down list (shown below).
-
Locate the Process Model section and change the application pool identity from Built-in account to Custom account (as shown below). Click OK. This should resolve the UI looping issue in DataSync.
-
Repeat the above step for all DataSync application pools.
This occasional discrepancy in data synchronization may arise due to the representation of a Date field as DateTime within DataSync. When comparing two distinct data types, inconsistencies in the dates being compared can result in missing rows during the loading or deletion processes.
To verify whether a field is not correctly cast within DataSync, utilize the "Preview data" feature to inspect if all date entries contain a time value of 0:00:00 across all rows. Alternatively, consult the table documentation to confirm the data type used for the specific field.
Solution
To fix this discrepancy, it is essential to create a custom field explicitly casting the field as a date. Subsequently, employ this customized field as your Tracking Key or Load by Partition field for a seamless data synchronization process.
When attempting a Load All operation, some users receive the following error message:
System.Data.CData.SageIntacct.SageIntacctException (0x80004005): [500] Could not execute the specified command: . You do not have permission for API operation READ_BY_QUERY on objects of type xyz . ---> cta230S.QdY: . You do not have permission for API operation READ_BY_QUERY on objects of type xyz
at cta230S.QTP.LO(String , QdW )
at cta230S.QTP.v()
at cta230S.QTE.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FTk.g(FEk , FTW , FEv , FTW , FTW , String )
at cta230S.FTk.F(Qdn , FTW , FEv , FTW , FTW )
at cta230S.FYn.P(String , Qdn , QdU , QdI )
at cta230S.FYn.bL(Qdn , QdU , QdI )
at cta230S.Qbd.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FYU.F(FYU , FTk )
at cta230S.FYU.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FdT.yCh(FTk )
at cta230S.Pdx.fj(QdW , Pds )
at cta230S.FQQ.yyV()
at cta230S.PzW.R(PYx , PoQ )
at cta230S.Pzs.yUx()
at cta230S.PzW.yyw()
at cta230S.FQs.jK(SQLQuery , Int32 , Pgm )
at cta230S.FQs.yQ(IDataStatement , SQLQuery , QueryParameterCollection , Int32 , String , Foc )
at cta230S.FQb.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PAI.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PYn.yyA(QueryParameterCollection )
Solution
This is a configuration issue in Sage Intacct. The user that is set in DataSync to read the data from Sage Intacct does not have permission to read the specified object. The permission for the user needs to be set in Sage Intacct.
When attempting a Load All operation, some users receive the following error message:
fao220F.XcB: HTTP protocol error. 401 Unauthorized. ---> fao220F.XcB: HTTP protocol error. 401 Unauthorized. ---> fao220F.XcB: HTTP protocol error. 401 Unauthorized. ---> fao220F.XcB: HTTP protocol error. 401 Unauthorized. ---> fao220F.gQP: HTTP protocol error. 401 Unauthorized. ---> fao220F.gQP: HTTP protocol error. 401 Unauthorized.
at fao220F.ggd.ye(Exception )
at fao220F.ggd.ym(String )
at fao220F.ggd.yL(String )
at fao220F.MAH.zI(MZu )
--- End of inner exception stack trace ---
at fao220F.XgX.mr(XBs )
at fao220F.MTR.E(XcY , MTX )
--- End of inner exception stack trace ---
at fao220F.MTR.E(XcY , MTX )
at fao220F.MTX.D(MFX , MTN , Mil , MTN , MTN , String )
at fao220F.MTX.p(XcY , MTN , Mil , MTN , MTN )
at fao220F.MiO.X(String , XcY , XcN , XBP )
at fao220F.MiO.dK(XcY , XcN , XBP )
at fao220F.XMY.b(XBs , MPA`1 , Object , XcN , XBP )
at fao220F.XMd.s(XBs )
at fao220F.MTR.E(XcY , MTX )
Solution
When calling the API, it is not reachable. It maybe a configuration of the connection within Datasync. This may happen with any API connection such as Sage Intacct, Custom API, etc.
When attempting a Load All operation, some users receive the following error message:
System.Data.CData.SageIntacct.SageIntacctException (0x80004005): [500] Could not execute the specified command: [BL03002069] . The period selected is not valid [Support ID: XiCdvEB033%7EZqp6jP075jv-2UHWG0rrjAAAAAU]. ---> cta230S.QdY: [BL03002069] . The period selected is not valid [Support ID: XiCdvEB033%7EZqp6jP075jv-2UHWG0rrjAAAAAU].
at cta230S.QTP.LO(String , QdW )
at cta230S.QTP.v()
at cta230S.QTE.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FTk.g(FEk , FTW , FEv , FTW , FTW , String )
at cta230S.FTk.F(Qdn , FTW , FEv , FTW , FTW )
at cta230S.FYn.P(String , Qdn , QdU , QdI )
at cta230S.FYn.bL(Qdn , QdU , QdI )
at cta230S.Qbd.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FYU.F(FYU , FTk )
at cta230S.FYU.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FdT.yCh(FTk )
at cta230S.Pdx.fj(QdW , Pds )
at cta230S.FQQ.yyV()
at cta230S.PzW.R(PYx , PoQ )
at cta230S.Pzs.yUx()
at cta230S.PzW.yyw()
at cta230S.PzY.yyw()
at cta230S.FQs.jK(SQLQuery , Int32 , Pgm )
at cta230S.FQs.yQ(IDataStatement , SQLQuery , QueryParameterCollection , Int32 , String , Foc )
at cta230S.FQb.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PAI.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PYn.yyA(QueryParameterCollection )
at
System.Data.CData.SageIntacct.SageIntacctCommand.ExecuteDataReader(CommandBehavior behavior)
at Shared.Objects.ThreadUtils.RetryAsync[T](Func`1 action, TimeSpan retryWait, Int32 retryCount, Boolean increaseRetryWait, Func`2 exceptionPredicate, CancellationToken cancellationToken)
at DBProviders.DbCommandExtensions.GetReaderAsync(IDbCommand command, CommandBehavior commandBehavior, Int32 retryWaitSeconds, Int32 retryCount, CancellationToken cancellationToken, Boolean printParameter)
at
DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
Solution
This can happen when the period that is set in the extraction is invalid. This error nessage is returned by Sage Intacct.
When attempting a Load All operation, some users receive the following error message:
System.Data.CData.SageIntacct.SageIntacctException (0x80004005): [500] Could not execute the specified command: [Given docparid does not exist.] . [Support ID: kOgmmEB032%7EZqE78P0r4CpGlkWbLJbnAAAAAo]. ---> cta230K.ujj: [Given docparid does not exist.] . [Support ID: kOgmmEB032%7EZqE78P0r4Cp-GlkWbLJbnAAAAAo].
at cta230K.uXF.Fm(String , ujK )
at cta230K.uXF.Er()
at cta230K.sXO.jF(ujZ , sXd )
at cta230K.sXd.M(sOd , sXg , snW , sXg , sXg , String )
at cta230K.sXd.i(ujZ , sXg , snW , sXg , sXg )
at cta230K.snb.M(String , ujZ , ujT , ujP )
at cta230K.snb.dO(ujZ , ujT , ujP )
at cta230K.ubj.zl(ujK )
at cta230K.sXO.jF(ujZ , sXd )
at cta230K.snK.R(snK , sXd )
at cta230K.snK.tUd(sXd )
at cta230K.sbQ.V(sXd )
at cta230K.sbQ.A(sbQ , sXd )
at cta230K.sbQ.tUd(sXd )
at cta230K.sbQ.V(sXd )
at cta230K.sbQ.A(sbQ , sXd )
at cta230K.sbQ.tUd(sXd )
at cta230K.sjP.tUs(sXd )
at cta230K.gjO.M(ujK , gjj )
at cta230K.suR.ttI()
at cta230K.gZA.e(gnX , gTs )
at cta230K.gZP.tIN()
at cta230K.gZA.ttj()
at cta230K.suv.H(SQLQuery , Int32 , gWc )
at cta230K.suv.tE(IDataStatement , SQLQuery , QueryParameterCollection , Int32 , String , sTT )
at cta230K.suO.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230K.giP.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230K.gOR.tth(QueryParameterCollection )
at System.Data.CData.SageIntacct.SageIntacctCommand.ExecuteDataReader(CommandBehavior behavior)
at Shared.Objects.ThreadUtils.RetryAsync[T](Func`1 action, TimeSpan retryWait, Int32 retryCount, Boolean increaseRetryWait, Func`2 exceptionPredicate, CancellationToken cancellationToken)
at DBProviders.DbCommandExtensions.GetReaderAsync(IDbCommand command, CommandBehavior commandBehavior, Int32 retryWaitSeconds, Int32 retryCount, CancellationToken cancellationToken, Boolean printParameter)
at
DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
Solution
The docparid is expected to be set within the connection. Follow the steps in Configure the Connections.
System.Data.CData.SageIntacct.SageIntacctException (0x80004005): [500] Could not execute the specified command: [Given docparid does not exist.] ….
Solution
When the error contains the error code 500, it can be because the call made to the API of the source connection was not fully understood by the API. Re-check all the setup of the source connection to be sure the API is called correctly.
Solution
This error occurs when one of the partitions throws an error during the loading by partition.
Solution
This error occurs when some APIs have predefined timeouts in case the response takes longer than the expected time to be processed by the source connection. For example, Sage Intacct has a timeout of 15 mins on their Gateway. When there is some degradation on the performance of the source API, a ticket needs to be submitted in Sage Intacct.
cta230S.QdY: Error retrieving data from server - 502 Bad Gateway. ---> cta230S.QdY: Error retrieving data from server - 502 Bad Gateway. ---> cta230S.QdY: Error retrieving data from server - 502 Bad Gateway.
at cta230S.QTE.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FTk.g(FEk , FTW , FEv , FTW , FTW , String )
at cta230S.FTk.F(Qdn , FTW , FEv , FTW , FTW )
at cta230S.FYn.P(String , Qdn , QdU , QdI )
at cta230S.FYn.bL(Qdn , QdU , QdI )
at cta230S.Qbd.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FYU.F(FYU , FTk )
at cta230S.FYU.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FdT.yCh(FTk )
at cta230S.Pdx.fj(QdW , Pds )
at cta230S.FQQ.yyV()
at cta230S.PzW.R(PYx , PoQ )
at cta230S.Pzs.yUx()
at cta230S.PzW.yyw()
at cta230S.Fmg.l()
--- End of inner exception stack trace ---
at cta230S.Fmg.l()
at cta230S.Fmg.v()
at cta230S.Fml.Next()
--- End of inner exception stack trace ---
at cta230S.Fml.Next()
at cta230S.Fmz.Next()
at cta230S.TY.Read()
at System.Data.Common.DbDataReader.ReadAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.RetrieveCleanDeletesDataAsync(DbTranslateResult translateResult, CancellationToken cancellationToken)
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.<>c__DisplayClass2_0.<<RetrieveCleanDeletesDataAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.RetrieveCleanDeletesDataAsync(DbTranslateResult translateResult, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.GetSourceDataForCleanDeletesAsync(SqlReadableForDataLoad sqlObject, DateTimeOffset dateTimeOffSet, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.GetSourceDataForCleanDeletesAsync(ConnectionDefinitionForDataLoad sourceConnection, SqlReadableForDataLoad sqlObject, IServiceProvider provider, DateTimeOffset dateTimeOffSet, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.CreateCleanDeletesDictionary(DateTimeOffset dateTimeOffSet, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.GetDataForCleanDeletes(DateTimeOffset startDate, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.CleanDeletes(Nullable`1 deleteCleaningDaysInterval, CancellationToken cancellationToken)
Solution
This error is thrown by Sage Intacct when the performance quality of the API is lowered or when the max timeout is reached on the Sage Intacct gateway. Usually, it will happen when a lot of data is loaded at once and the Sage Intacct API performance is reduced.
fao220F.XcB: Error obtaining value '0.0000,50.6400' for column 'Discrepancy'. Failed to convert to datatype: 'decimal'. The original datatype of the column is: 'decimal'. Original Exception: Error parsing decimal value [0.0000,50.6400]. ---> fao220F.XcB: Error obtaining value '0.0000,50.6400' for column 'Discrepancy'. Failed to convert to datatype: 'decimal'. The original datatype of the column is: 'decimal'. Original Exception: Error parsing decimal value [0.0000,50.6400]. ---> fao220F.XcB: Error parsing decimal value [0.0000,50.6400].
at fao220F.gTW.i(String , Int32 )
at fao220F.gTW.i(String , Int32 , Int32 , Boolean )
at fao220F.gJO.dy(String , Int32 , Int32 )
at fao220F.Mcg.t(Int32 , Int32 , Int32 )
--- End of inner exception stack trace ---
at fao220F.Mcg.t(Int32 , Int32 , Int32 )
at fao220F.gHQ.Evaluate(FormulaEvaluationContext , IResultSet )
at fao220F.McQ.X(Int32 , Int32 , Int32 )
--- End of inner exception stack trace ---
at fao220F.McQ.X(Int32 , Int32 , Int32 )
at fao220F.JZ.GetValue(Int32 )
at DBProviders.BaseProvider.RecordReaderOfArrayOfFastExpando(IDataReader reader, List`1 metadata)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReader[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceForRefresh[T](SqlReadableForDataLoad sqlObject, DateTimeOffset lastSuccessDate, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.ProduceForRefresh[T](ConnectionDefinitionForDataLoad connectionDetails, SqlReadableForDataLoad sqlObject, IServiceProvider provider, DateTimeOffset lastSuccessDate, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.<>c__DisplayClass5_0.<<Refresh>b__4>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceAndConsume(Func`2 producerCallback, JobAction actionType, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.Refresh(Nullable`1 lastSuccessDate, CancellationToken cancellationToken)
Solution
This error can occur when the data used to filter is not in the expected data type.
Ex: In SXA, sometimes data is returned in the format (data invalid) 0.0000,50.6400. It is clear that the data needs to be split in order to represent a decimal value.
System.Data.SqlClient.SqlException (0x80131904): Invalid object name 'OSINY.Class'.
at Shared.Objects.ThreadUtils.RetryAsync[T](Func`1 action, TimeSpan retryWait, Int32 retryCount, Boolean increaseRetryWait, Func`2 exceptionPredicate, CancellationToken cancellationToken)
at DBProviders.DbCommandExtensions.GetReaderAsync(IDbCommand command, CommandBehavior commandBehavior, Int32 retryWaitSeconds, Int32 retryCount, CancellationToken cancellationToken, Boolean printParameter)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.IsThereDataInDestinationTableAsync(SqlReadableForDataLoad sqlObject, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.IsThereDataInDestinationTableAsync(ConnectionDefinitionForDataLoad connectionDetails, SqlReadableForDataLoad sqlObject, IServiceProvider provider, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.CleanDeletes(Nullable`1 deleteCleaningDaysInterval, CancellationToken cancellationToken)
ClientConnectionId:0f18e464-d389-433d-8bad-4f5df9a0f1f3
Error Number:208,State:1,Class:16
ClientConnectionId before routing:1da282a4-6c6a-4b9e-8eb9-35004a5231e6
Routing Destination:a231d149d44b.tr8975.centralus1-a.worker.database.windows.net,11010
Solution
This error is returned by the SQL Server instance. This usually happens when the table name is not valid or the schema used is not valid.
Solution
If you have this error, it is a configuration issue in our cloud. Please contact your administrator or Nectari support.
DataSynchronizer.CannotValidateConnectionException: The Sage Intacct Refresh connection could not be validated
at DataSynchronizer.BaseSqlObjectSynchronizer.ValidateConnectionsAsync(CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.DataSyncActionsFirstStepValidationAsync(CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.Refresh(Nullable`1 lastSuccessDate, CancellationToken cancellationToken)
Solution
This error occurs when the connection is not valid. Double-check if the source connection settings, such as user name, password, server name, URL, etc., are properly configured.
System.Threading.Tasks.TaskCanceledException: A task was canceled.
at Shared.Objects.ThreadUtils.RetryAsync[T](Func`1 action, TimeSpan retryWait, Int32 retryCount, Boolean increaseRetryWait, Func`2 exceptionPredicate, CancellationToken cancellationToken)
at DBProviders.DbCommandExtensions.GetReaderAsync(IDbCommand command, CommandBehavior commandBehavior, Int32 retryWaitSeconds, Int32 retryCount, CancellationToken cancellationToken, Boolean printParameter)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReader[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceForLoadAll[T](SqlReadableForDataLoad sqlObject, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.ProduceForLoadAll[T](ConnectionDefinitionForDataLoad connectionDetails, SqlReadableForDataLoad sqlObject, IServiceProvider provider, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceForLoadAll(ITargetBlock`1 targetBlock, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.<>c__DisplayClass3_0.<<LoadAll>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceAndConsume(Func`2 producerCallback, JobAction actionType, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.LoadAll(CancellationToken cancellationToken)
Solution
This error message is thrown when an executed task is canceled by the user in the DataSync.
Solution
Transaction (Process ID 62) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction. Deadlocks can happen for multiple reasons such as table being used by another extraction, by the OLAP cube, Table lock by another process, etc.
Solution
This error occurs when there is a Deadlock. This can happen for multiple reasons, such as table being used by another extraction or by the OLAP cube, Table lock by another process, etc.
Solution
This error can occur if the string is too big to be inserted in the destination column. Increasing the size of the destination column will fix the issue. The issue can also occur if a binary column is sent into a string column (nvarchar).
cta230S.QdY: [DL02000001] . The Service is Temporarily Off-line. [Support ID: syU_CWEB036%7EZrbQ7P4v05Y4OMh-h8ETeAAAAAc]. ---> cta230S.QdY: [DL02000001] . The Service is Temporarily Off-line. [Support ID: syU_CWEB036%7EZrbQ7P4v05Y4OMh-h8ETeAAAAAc]. ---> cta230S.QdY: [DL02000001] . The Service is Temporarily Off-line. [Support ID: syU_CWEB036%7EZrbQ7P4v05Y4OMh-h8ETeAAAAAc].
at cta230S.QTP.LO(String , QdW )
at cta230S.QTP.v()
at cta230S.QTE.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FTk.g(FEk , FTW , FEv , FTW , FTW , String )
at cta230S.FTk.F(Qdn , FTW , FEv , FTW , FTW )
at cta230S.FYn.P(String , Qdn , QdU , QdI )
at cta230S.FYn.bL(Qdn , QdU , QdI )
at cta230S.Qbd.ZN(QdW )
at cta230S.FTo.m(Qdn , FTk )
at cta230S.FYU.F(FYU , FTk )
at cta230S.FYU.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FbY.X(FTk )
at cta230S.FbY.g(FbY , FTk )
at cta230S.FbY.yCj(FTk )
at cta230S.FdT.yCh(FTk )
at cta230S.Pdx.fj(QdW , Pds )
at cta230S.FQQ.yyV()
at cta230S.PzW.R(PYx , PoQ )
at cta230S.Pzs.yUx()
at cta230S.PzW.yyw()
at cta230S.Fmg.l()
--- End of inner exception stack trace ---
at cta230S.Fmg.l()
at cta230S.Fmg.v()
at cta230S.Fml.Next()
--- End of inner exception stack trace ---
at cta230S.Fml.Next()
at cta230S.Fmz.Next()
at cta230S.TY.Read()
at System.Data.Common.DbDataReader.ReadAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location where exception was thrown ---
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.RetrieveCleanDeletesDataAsync(DbTranslateResult translateResult, CancellationToken cancellationToken)
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.<>c__DisplayClass2_0.<<RetrieveCleanDeletesDataAsync>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.RetrieveCleanDeletesDataAsync(DbTranslateResult translateResult, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.GetSourceDataForCleanDeletesAsync(SqlReadableForDataLoad sqlObject, DateTimeOffset dateTimeOffSet, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.GetSourceDataForCleanDeletesAsync(ConnectionDefinitionForDataLoad sourceConnection, SqlReadableForDataLoad sqlObject, IServiceProvider provider, DateTimeOffset dateTimeOffSet, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.CreateCleanDeletesDictionary(DateTimeOffset dateTimeOffSet, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.GetDataForCleanDeletes(DateTimeOffset startDate, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.CleanDeletes(Nullable`1 deleteCleaningDaysInterval, CancellationToken cancellationToken)
Solution
This error is thrown by Sage Intacct when their services are down.
Solution
The database warehouse has reached its size quota. Please contact your Nectari sales representative.
Solution
This error can occur when the Process Deleted Records by partition failed to process a specific partition.
System.InvalidOperationException: Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached.
at System.Data.Common.ADP.ExceptionWithStackTrace(Exception e)
--- End of stack trace from previous location where exception was thrown ---
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnectionAsync(Boolean errorsExpected, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenAsync(CancellationToken cancellationToken, Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncQueryingEnumerable`1.AsyncEnumerator.BufferlessMoveNext(DbContext _, Boolean buffer, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.ExecuteAsync[TState,TResult](TState state, Func`4 operation, Func`4 verifySucceeded, CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncQueryingEnumerable`1.AsyncEnumerator.MoveNext(CancellationToken cancellationToken)
at System.Linq.AsyncEnumerable.FirstOrDefault_[TSource](IAsyncEnumerable`1 source, CancellationToken cancellationToken) in D:\a\1\s\Ix.NET\Source\System.Interactive.Async\First.cs:line 144
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncLinqOperatorProvider.TaskResultAsyncEnumerable`1.Enumerator.MoveNext(CancellationToken cancellationToken)
at System.Linq.AsyncEnumerable.SelectEnumerableAsyncIterator`2.MoveNextCore(CancellationToken cancellationToken) in D:\a\1\s\Ix.NET\Source\System.Interactive.Async\Select.cs:line 106
at System.Linq.AsyncEnumerable.AsyncIterator`1.MoveNext(CancellationToken cancellationToken) in D:\a\1\s\Ix.NET\Source\System.Interactive.Async\AsyncIterator.cs:line 98
at Microsoft.EntityFrameworkCore.Query.Internal.AsyncLinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext(CancellationToken cancellationToken)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryCompiler.ExecuteSingletonAsyncQuery[TResult](QueryContext queryContext, Func`2 compiledQuery, IDiagnosticsLogger`1 logger, Type contextType)
at DataSyncService.ConnectionDetailsResolver.GetConnectionDetailsFromCustomersAsync(CancellationToken cancellationToken)
at DataSyncService.ConnectionDetailsResolver.GetConnectionDetailsAsync(CancellationToken cancellationToken)
at DataSyncORM.ViewFinder.ConnectionDefinitionHandler(CancellationToken cancellationToken)
at DataSyncORM.ViewFinder.IsExtractionActive(String extractionId, CancellationToken cancellationToken)
at DataSyncService.ExtractionExecutionService.IsExtractionActive(String extractionId, CancellationToken cancellationToken)
at DataSyncService.ExtractionExecutionService.CanExtractionRun(String triggerId, String extractionId, String scheduleId, ExtractionSchedulingType schedulingType, JobAction actionType, CancellationToken token)
at DataSyncService.ExtractionExecutionService.RunScheduledTask(String triggerId, String extractionId, JobAction actionType, String scheduleId, Nullable`1 deleteHandlingDaysInterval, CancellationToken token)
at DataSyncService.ScheduledExtractionBackgroundTask.PerformSync(IServiceProvider provider, CancellationToken token)
at DataSyncService.ExtractionBackgroundTask.ExecuteAsync(IServiceProvider baseProvider, CancellationToken token)
Solution
This error occurs when there are too many extractions being done within the same connection. This means that the property Max pool size needs to be increased in the connection properties.
System.InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure()' to the 'UseSqlServer' call. ---> System.Data.SqlClient.SqlException: A connection was successfully established with the server, but then an error occurred during the pre-login handshake. (provider: TCP Provider, error: 0 - The specified network name is no longer available.) ---> System.ComponentModel.Win32Exception: The specified network name is no longer available
--- End of inner exception stack trace ---
at System.Data.ProviderBase.DbConnectionPool.CheckPoolBlockingPeriod(Exception e)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.BufferlessMoveNext(DbContext _, Boolean buffer)
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
--- End of inner exception stack trace ---
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider._TrackEntities[TOut,TIn](IEnumerable`1 results, QueryContext queryContext, IList`1 entityTrackingInfos, IList`1 entityAccessors)+MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()
at System.Collections.Generic.List`1.AddEnumerable(IEnumerable`1 enumerable)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at DataSyncService.LogCleaningBackgroundService.ExecuteAsync(CancellationToken stoppingToken)
Solution
This error occurs when there is a SQL Server outage. Verify that your SQL Server connection is still up. If you’re in Cloud, check the Status page.
An exception occurred while iterating over the results of a query for context type '"DataSyncIdentityServer.Context.DataSyncIdentityServerContext"'."
""System.InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure()' to the 'UseSqlServer' call. ---> System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.) ---> System.ComponentModel.Win32Exception: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
--- End of inner exception stack trace ---
at System.Data.ProviderBase.DbConnectionPool.CheckPoolBlockingPeriod(Exception e)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.BufferlessMoveNext(DbContext _, Boolean buffer)
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
--- End of inner exception stack trace ---
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider._TrackEntities[TOut,TIn](IEnumerable`1 results, QueryContext queryContext, IList`1 entityTrackingInfos, IList`1 entityAccessors)+MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()"
Solution
This error occurs when there is a SQL Server outage. Verify that your SQL Server connection is still up. If you’re in Cloud, check the Status page.
An exception occurred while iterating over the results of a query for context type '"DataSyncIdentityServer.Context.DataSyncIdentityServerContext"'."
""System.InvalidOperationException: An exception has been raised that is likely due to a transient failure. Consider enabling transient error resiliency by adding 'EnableRetryOnFailure()' to the 'UseSqlServer' call. ---> System.Data.SqlClient.SqlException: A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.) ---> System.ComponentModel.Win32Exception: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
--- End of inner exception stack trace ---
at System.Data.ProviderBase.DbConnectionPool.CheckPoolBlockingPeriod(Exception e)
at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.OpenDbConnection(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Storage.RelationalConnection.Open(Boolean errorsExpected)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.BufferlessMoveNext(DbContext _, Boolean buffer)
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
--- End of inner exception stack trace ---
at Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal.SqlServerExecutionStrategy.Execute[TState,TResult](TState state, Func`3 operation, Func`3 verifySucceeded)
at Microsoft.EntityFrameworkCore.Query.Internal.QueryingEnumerable`1.Enumerator.MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider._TrackEntities[TOut,TIn](IEnumerable`1 results, QueryContext queryContext, IList`1 entityTrackingInfos, IList`1 entityAccessors)+MoveNext()
at Microsoft.EntityFrameworkCore.Query.Internal.LinqOperatorProvider.ExceptionInterceptor`1.EnumeratorExceptionInterceptor.MoveNext()"
Solution
This error occurs when there is a SQL Server outage. Verify that your SQL Server connection is still up. If you’re in Cloud, check the Status page.
Solution
This error occurs when there is a technical issue. Please contact your Nectari support.
System.Data.CData.SageIntacct.SageIntacctException (0x80004005): [500] Could not execute the specified command: HTTP 503: Service Unavailable ---> cta230S.PIo: HTTP 503: Service Unavailable
at cta230S.PzW.R(PYx , PoQ )
at cta230S.Pzs.yUx()
at cta230S.PzW.yyw()
at cta230S.FQs.jK(SQLQuery , Int32 , Pgm )
at cta230S.FQs.yQ(IDataStatement , SQLQuery , QueryParameterCollection , Int32 , String , Foc )
at cta230S.FQb.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PAI.ExecuteQuery(IDataStatement , QueryParameterCollection , Int32 )
at cta230S.PYn.yyA(QueryParameterCollection )
at System.Data.CData.SageIntacct.SageIntacctCommand.ExecuteDataReader(CommandBehavior behavior)
at Shared.Objects.ThreadUtils.RetryAsync[T](Func`1 action, TimeSpan retryWait, Int32 retryCount, Boolean increaseRetryWait, Func`2 exceptionPredicate, CancellationToken cancellationToken)
at DBProviders.DbCommandExtensions.GetReaderAsync(IDbCommand command, CommandBehavior commandBehavior, Int32 retryWaitSeconds, Int32 retryCount, CancellationToken cancellationToken, Boolean printParameter)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.<>c__DisplayClass1_0`1.<<ProduceFromReaderWithCount>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSyncQueryExecutor.System_Data_CData_SageIntacct_DataSyncExecutor.ProduceFromReaderWithCount[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceFromReader[T](DbTranslateResult translateResult, ITargetBlock`1 consumerHeadBlock, Int32 retryCount, Int32 retryWaitSeconds, CancellationToken cancellationToken)
at DataSyncQueryExecutor.BaseDataSyncQueryExecutor.ProduceForLoadAll[T](SqlReadableForDataLoad sqlObject, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSyncQueryExecutor.ExecutorExtensions.ProduceForLoadAll[T](ConnectionDefinitionForDataLoad connectionDetails, SqlReadableForDataLoad sqlObject, IServiceProvider provider, ITargetBlock`1 consumerHeadBlock, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceForLoadAll(ITargetBlock`1 targetBlock, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.<>c__DisplayClass3_0.<<LoadAll>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at DataSynchronizer.BaseSqlObjectSynchronizer.ProduceAndConsume(Func`2 producerCallback, JobAction actionType, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.LoadAll(CancellationToken cancellationToken)
Solution
This error occurs when the service you are trying to connect to is not available. Verify that the service is up and running.
Solution
This message is thrown when the executed job is called by the user.
Solution
This error is thrown when you’re trying to create an unique index but there are data integrity issues that need to be addressed. Please consult your Nectari support if assistance is needed.
Solution
This error is thrown when the database is not available. Check the database connection. If it is in Cloud, contact Nectari Support if the service is not available for more than a couple of minutes and check the Status page.
DataSyncModels.PartitionFailException: Can not clean deletes for Gldetail because all partitions have not been loaded for this table
at DataSynchronizer.SqlObjectForSynchronization.CleanDeletesByPartition(Nullable`1 deleteCleaningDaysInterval, CancellationToken cancellationToken)
Solution
This error occurs when the clean delete cannot be executed because all the partitions have not been loaded.
Solution
This error occurs when there is a technical issue. Please contact your Nectari support.
System.ArgumentException: An item with the same key has already been added. Key: { Bookid=ACCRUAL
Currency=GBP
Period=Nectari Opening 2023
Accountrec=2683
Departmentid=D340
Locationid=R006
Customerdimkey=0
Vendordimkey=0
Employeedimkey=0
Itemdimkey=26
Classdimkey=67
Projectdimkey=0
CPYID=TEST
}
at System.Collections.Generic.Dictionary`2.TryInsert(TKey key, TValue value, InsertionBehavior behavior)
at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](List`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector, IEqualityComparer`1 comparer)
at System.Linq.Enumerable.ToDictionary[TSource,TKey,TElement](IEnumerable`1 source, Func`2 keySelector, Func`2 elementSelector)
at DataSynchronizer.BaseSqlObjectSynchronizer.CreateCleanDeletesDictionary(DateTimeOffset dateTimeOffSet, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.BaseSqlObjectSynchronizer.GetDataForCleanDeletes(DateTimeOffset startDate, SourceOrDestination sourceOrDestination, CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.CleanDeletes(Nullable`1 deleteCleaningDaysInterval, CancellationToken cancellationToken)
Solution
This error can occur when the Index is not configured correctly and/or the Unique key is not set correctly on the table level within the DataSync screen.
Error executing the post script execution:
EXEC dbo.sp_executesql ....
System.Threading.ThreadInterruptedException: Thread was interrupted from a waiting state.
at System.Threading.WaitHandle.WaitMultiple(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext, Boolean WaitAll)
at System.Threading.WaitHandle.WaitAny(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at InsightDatabaseUOW.InsightDbExtensions.OpenWithTransaction(IProviderConnectionInformation connectionInformation, IsolationLevel isolationLevel)
at InsightDatabaseUOW.InsightDbExtensions.OpenWithTransaction(ConnectionDetails connectionInformation, IsolationLevel isolationLevel)
at InsightDatabaseUOW.InsightDbTransactionalUow.GetCreateConnection(IsolationLevel isolationLevel, CancellationToken cancellationToken)
at InsightDatabaseUOW.InsightDbTransactionalUow.Commit(IsolationLevel isolationLevel, CancellationToken cancellationToken)
at DataSyncService.TableExecutionService.ChangeTablePartitionStatus(ChangeTablePartitionStatusCommand command)
at DataSynchronizer.SqlObjectForSynchronization.LoadAllByPartition(CancellationToken cancellationToken)
Solution
Since the post execution script cannot be validated, if the SQL is invalid this error will be thrown at the end of a DataSync job.
System.Threading.ThreadInterruptedException: Thread was interrupted from a waiting state.
at System.Threading.WaitHandle.WaitMultiple(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext, Boolean WaitAll)
at System.Threading.WaitHandle.WaitAny(WaitHandle[] waitHandles, Int32 millisecondsTimeout, Boolean exitContext)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)
at System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)
at System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)
at System.Data.SqlClient.SqlConnection.Open()
at InsightDatabaseUOW.InsightDbExtensions.OpenWithTransaction(IProviderConnectionInformation connectionInformation, IsolationLevel isolationLevel)
at InsightDatabaseUOW.InsightDbExtensions.OpenWithTransaction(ConnectionDetails connectionInformation, IsolationLevel isolationLevel)
at InsightDatabaseUOW.InsightDbTransactionalUow.GetCreateConnection(IsolationLevel isolationLevel, CancellationToken cancellationToken)
at InsightDatabaseUOW.InsightDbTransactionalUow.Commit(IsolationLevel isolationLevel, CancellationToken cancellationToken)
at DataSyncService.TableExecutionService.ChangeTablePartitionStatus(ChangeTablePartitionStatusCommand command)
at DataSynchronizer.SqlObjectForSynchronization.LoadAllByPartition(CancellationToken cancellationToken)
Solution
This error can occur when the data warehouse is not available in Cloud. Contact your Nectari support.
Solution
This error is thrown when the login credentials to the data warehouse are invalid or there is a permissions issue. If it is permissions issue, contact your Nectari support.
Solution
The error is thrown when there is too much data being processed. If it is in Cloud, contact your Nectari support.
System.OperationCanceledException: The operation was canceled.
at System.Threading.CancellationToken.ThrowOperationCanceledException()
at DataSynchronizer.SqlObjectForSynchronization.ReBuildAllIndexes(CancellationToken cancellationToken)
at DataSynchronizer.SqlObjectForSynchronization.LoadAll(CancellationToken cancellationToken)
Solution
The error is thrown when the executing operation was canceled.
Solution
This error can be thrown when the Source field’s data type is compatible with the selected Destination field’s data type. When it tries to convert, it is not able to properly do the conversion. For example, converting a string to a number.
This error can also be thrown if the Destination field’s data type total precision is shrunk in comparison to the Source field’s data type. For example, Decimal(18,5) -> Decimal(6,5). This can cause issues when converting a number that requires more precision than the precision.