We have data sources where we apply dynamic incremental rules, so if column == “Name” then apply incremental load with 3 day offset.
Now there exist some tables in the data source that are currently empty (in the actual source). They do have the incr column and therefore the offset rule. Now we noticed that the ODX transfer on these tables works fine.
However when we execute a table with such a table in the mapping we obtain this error:
System.AggregateException: One or more errors occurred. ---> System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Sequence contains no elements
at System.Linq.Enumerable.Max(IEnumerable`1 source)
at DataStorageEngine.DataLakeGen2.DataLakeGen2DiscoveryHubExecution.<ProvideDataTableForDiscoveryHubSQLTransferAsync>d__14.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken)
at DataStorageEngine.DataLakeGen2.DataLakeGen2Helper.RunAsyncTask[T](Task`1 task)
at ODXConnectorEngine.ConnectorEngine.<>c__DisplayClass5_0.<ExecuteTable>b__0(DiscoveryHubExecutionMethod transferMethod) in F:\VS2022Code\ODX-SaaS-Prod\ODXConnectorEngine\ConnectorEngine.cs:line 454
at DataStorageEngine.DataLakeGen2.DataLakeGen2StorageEngine.RunDiscoveryHubTransferMethod(Action`1 action)
at ODXConnectorEngine.ConnectorEngine.ExecuteTable(IDataStorageEngine storageEngine, DiscoveryHubSQLDefaultExecutionModel transferModel, ODXEndpoint storageEndpoint, DataSourceModel dataSourceModel, TableModel tableModel) in F:\VS2022Code\ODX-SaaS-Prod\ODXConnectorEngine\ConnectorEngine.cs:line 456
at ExecutionEngine.Action.OutboundDefaultTransferAction.Execute()
at ExecutionEngine.Action.ExecutionAction.<.ctor>b__9_0()
at System.Threading.Tasks.Task.Execute()
--- End of inner exception stack trace ---
---> (Inner Exception #0) System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Sequence contains no elements
at System.Linq.Enumerable.Max(IEnumerable`1 source)
at DataStorageEngine.DataLakeGen2.DataLakeGen2DiscoveryHubExecution.<ProvideDataTableForDiscoveryHubSQLTransferAsync>d__14.MoveNext()
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken)
at DataStorageEngine.DataLakeGen2.DataLakeGen2Helper.RunAsyncTask[T](Task`1 task)
at ODXConnectorEngine.ConnectorEngine.<>c__DisplayClass5_0.<ExecuteTable>b__0(DiscoveryHubExecutionMethod transferMethod) in F:\VS2022Code\ODX-SaaS-Prod\ODXConnectorEngine\ConnectorEngine.cs:line 454
at DataStorageEngine.DataLakeGen2.DataLakeGen2StorageEngine.RunDiscoveryHubTransferMethod(Action`1 action)
at ODXConnectorEngine.ConnectorEngine.ExecuteTable(IDataStorageEngine storageEngine, DiscoveryHubSQLDefaultExecutionModel transferModel, ODXEndpoint storageEndpoint, DataSourceModel dataSourceModel, TableModel tableModel) in F:\VS2022Code\ODX-SaaS-Prod\ODXConnectorEngine\ConnectorEngine.cs:line 456
at ExecutionEngine.Action.OutboundDefaultTransferAction.Execute()
at ExecutionEngine.Action.ExecutionAction.<.ctor>b__9_0()
at System.Threading.Tasks.Task.Execute()
---> (Inner Exception #0) System.InvalidOperationException: Sequence contains no elements
at System.Linq.Enumerable.Max(IEnumerable`1 source)
at DataStorageEngine.DataLakeGen2.DataLakeGen2DiscoveryHubExecution.<ProvideDataTableForDiscoveryHubSQLTransferAsync>d__14.MoveNext()<---
<---
Details:
System.AggregateException: One or more errors occurred. ---> System.AggregateException: One or more errors occurred. ---> System.InvalidOperationException: Sequence contains no elements ...
Module: timeXtender
System.Exception
at TimeXtender.DataManager.StepTransferExecute.DoDataWarehouse(IStepSetup stepSetup, List`1 mergeODXTransferInfromation, VariableResolveObject dynamicResolveObject)
at TimeXtender.DataManager.StepTransferExecute.DoAbstractStep(IStepSetup stepSetup)
When I remove this incremental rule in the ODX, the transfer works fine.
Is it then not possible to apply an incremental offset on a table that never had any records?