Ask questions about Ingest Instances in TimeXtender Data Integration
Recently active
We are using the provider Azure Data Factory - SQL Server for a lof connections where the instances for these connections contains almost the same data but each time another customer. What we have noticed when the incremental load is setup to look at a datetime field called DW_MODIFIED_date. it will never load that 1 record which is in the table. When I exclude that table from the incremental load then I have 1 record loaded.When I include the table again in the incremental load it is removing the first folder from the previous load and don’t write a new file because it was not updated.When I remove the folder from the container and I incremental load that client table again I get no record at al while it should be the first load. Even if the incremental load is on and there is no file then I expect to have in the initial load the data.
We are unable to open our instance as we are prompted with the following error message: TX Version 7047.1
Hi there! We have had a small problem recently whereas Table A is on the staging/DSA layer and contains the following columns: Column 1 (PK)Column 2 (PK)Column 3Column 4 … etcNow this table has three sources - three Business Central instances. In two of the sources the original order of columns is Column 1, Column 2 but in the third source the order is Column 2, Column 1.We get the following error when incremental load is enabled: "TIMEXTENDER COPY DATA LOOP", "Failure happened on 'Sink' side, Column 2 contains an invalid value. We have been able to manage this error previously by ordering the columns in the same way as in the source.However, now the sources have different orders of the columns and therefore not possible to use that way to get around this. Any ideas or suggestions?
Hello, TimeXtender 20.10.67 with ODX. We have a source (azure datalake) that will geta json file dumped with the following format table.name/”date-when-file-dumped”. The files will be15million + rows and dumped atleast once a week.What I want to achieve is for the connector to only extract the latest file and have it dynamically change. I can’t figure out a way to effectively do this in the connector, as the uri connection string wants to point to a specific filename or take everything in a concat.I can’t figure out a way to change the URI dynamically and the only option I can think of in theory is concatenating all the json in the connector, including resourcecolumns and doing a custom query table on the connector with a DSR rule based on the MAX filedate.However, in a year or two when there will be 50+ files (750 million rows in theory with concat), I am not sure how the performance or scalability of that solution will be. Anyone have done something similar or have a better idea how
Hi all,Since about a week ago, we’re seeing random but frequent (almost daily) failures in ODX extract tasks from two sources: TimeXtender SQL Data Source (version 22.0.2.1) (SQL database) – runs from 05:00 to ~05:45 (45 min) UTC. Error: Cannot access a closed Stream (HttpRequestException). TimeXtender SQL Data Source (version 22.0.2.1) (Synapse Severless SQL pool) – runs from 05:00 to ~05:00:30 (30 sec) UTC. Error: System.TimeoutException: The operation has timed out. Manual retries later in the morning succeed without issue.The Synapse serverless SQL pool is pre-triggered ~15 minutes in advance to avoid cold start, and both the ODX environment and the data sources have generous timeout settings.We use Azure Data Lake Gen2 storage as our ODX storage.Any idea what might be causing these recent failures?Thanks,sva
Hi,I need to add authorization basic auth (username, password) to every endpoint in my rest api(Tripletex).I have added dynamic values from the endpoint “TokenSessionCreate Create” creating a session token.This token is my password and using a fixed username to every endpoint.In my endpoint “LedgerPosting” am using the section “Override Headers” to add the token to the “Authorization” and the value equal “Basic user:pwd”. Well, I cant get this to work.I proberly nedd to convert usr:pwd to base64 encoding….Does anyone have any suggestion?best regards,Bjørn A.
I recently updated the connection provider version on Hubspot, also for ODX/TX, and I have a problem getting the custom objects in. I checked, they still exist, postman can access them without issues, but I get errors when trying to get them to TimeXtender. Error messages as below:
Hello,We are looking to implement incremental data fetching from REST API endpoints, specifically by dynamically filtering with an updatedAt parameter. The goal is to use the maximum updatedAt value previously fetched from each API call, which is stored in our ODX tables.While I'm aware of the capability to use dynamic parameters based on endpoints and queries within TimeXtender, I'm struggling to find a method to reference the maximum updatedAt value already loaded in the ODX tables for this purpose.Has anyone implemented a similar dynamic data fetching mechanism in TimeXtender? If so, could you share how you managed to reference data from the ODX tables to set the parameters for the next API call?Thanks!
HiIn an effort to resolve intermittent ODX errors whilst retrieving data back from Oracle JDE tables I am trying to understand whether reducing the ‘concurrent execution threads’ setting in the Oracle data source connections could be a potential solution.I have multiple Oracle connections set up in TX, with each connection pulling a subset of tables (e.g. all the JDE master file tables in one connection, all the transaction-related GL tables in another etc). All these connection transfer tasks are then wrapped up in a TX job scheduled to run each evening.The ‘concurrent execution threads’ default value across all the Oracle data connections I had set up for this was ‘8’.My thinking was that if TimeXtender is running multiple data pulls simultaneously then this could be causing resource contention issues on the source Oracle server, and thereby intermittently triggering data pull failures with generic error messages that don’t precisely indicate root cause.I have since changed the ‘conc
I just upgraded TimeXtender to the latest versions for a client. (7017 and 7047).In doing so most of the datasource stopped working unless I upgraded the datasources to the latest versions. I decided that I should just do them all to be consistent. This has broken my CData Rest sources because the new drivers are not installed! This is a massive issue, and i was not warned in any significant way about this particular issue in the upgrade.I need to get the new CData drivers, I am not in a position where I can transition multiple CData Rest sources as part of an upgrade! This is a production issue and I need to resolve it ASAP!
HiOver the weekend one on our ODX jobs failed with the following error; Executing table [PRODDTA].[F0101]:failed with error:Oracle.ManagedDataAccess.Client.OracleException (0x80004005): ORA-50000: Connection request timed out at OracleInternal.ConnectionPool.PoolManager`3.Get(ConnectionString csWithDiffOrNewPassw, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch, Boolean bAsync) at OracleInternal.ConnectionPool.OraclePoolManager.Get(ConnectionString csWithNewPassw, Boolean bGetForApp, OracleConnection connRefForCriteria, String affinityInstanceName, Boolean bForceMatch, Boolean bAsync) at OracleInternal.ConnectionPool.OracleConnectionDispenser`3.Get(ConnectionString cs, PM conPM, ConnectionString pmCS, OracleOpaqueString securedPassw, OracleOpaqueString securedProxyPassw, OracleConnection connRefForCriteria, Boolean bAsync) at Oracle.ManagedDataAccess.Client.OracleConnectionInternal.OpenInternal(Boolean bAsync) at Oracl
Good Day,We have a client that is on V20 that would like to incorporate some Sensitive Data within their TX environment that some of the TX Developers should not have access to. As far as I am aware, if you have access to the TX Repository then the developers can open all projects.How would I handle the solution of the Sensitive Data in TX?Kerry
Does anyone know exactly what happens when we ingest data from e.g. a SQL Server into Fabric Lakehouse? It seems concurrency impacts performance (more can be less) but there might also be Fabric assets in play that could act like bottlenecks, and which requires “capacity” management.Any best recommendations/practices in this space?
I am loading a table incrementally into my ODX storage in an Azure Data Lake, where new Parquet files are added daily. This approach is because the source only holds data every two weeks, and I want to maintain a log in the ODX. The Parquet storage is very compact.However, for downstream analysis, I only need to retrieve data from the last 1 to 2 days into my prepare instance. I am using a data selection rule on the mapping, and I have also tried applying it directly on the table. Both approaches take a very long time to complete (+1 hour), whereas running the same query on the source SQL database filtering for 2 days of data completes in about 10 seconds.I suspect that the prepare instance is scanning through all the Parquet files, including older days, causing the slow performance.My question:Is there a way to configure the TX prepare instance to only process the most recent X Parquet files (e.g., the last 2 days) instead of scanning all files? This would significantly improve the se
Version 7026.1 - Ingest into LakehouseI’ve got a SQL data source where some column names contain spaces. This causes the TX SQL connector (23.0.3.0) to throw the following error when I try to ingest data into a Lakehouse:Executing table dbo_tx_profitcentreinfo:failed with error:Found invalid character(s) among ' ,;{}()\n\t=' in the column names of your schema. Please enable Column Mapping on your Delta table with mapping mode 'name'.You can use one of the following commands.If your table is already on the required protocol version:ALTER TABLE table_name SET TBLPROPERTIES ('delta.columnMapping.mode' = 'name')If your table is not on the required protocol version and requires a protocol upgrade:ALTER TABLE table_name SET TBLPROPERTIES ( 'delta.columnMapping.mode' = 'name', 'delta.minReaderVersion' = '2', 'delta.minWriterVersion' = '5')I can read what it says 😀 but I thought I’d ask the Community for advice. Has anyone encountered and resolved this issue? If so, what do you recommen
Hi,TX ver: latest I am getting an error when import metadata or doing table flattening. This worked fine earlier, before 3 june. Works fine using Postman. Any suggestion what I am missing? “One or more errors occurred.Failed to execute request for endpoint 'Get Charge Points'.One or more errors occurred.Cannot send a content-body with this verb-type.System.AggregateException: One or more errors occurred. ---> System.Net.ProtocolViolationException: Cannot send a content-body with this verb-type. at System.Net.HttpWebRequest.CheckProtocol(Boolean onRequestStream) at System.Net.HttpWebRequest.BeginGetRequestStream(AsyncCallback callback, Object state)” /Bjørn A.
I am fetching refresh logs from power bi using the following endpoint: https://api.powerbi.com/v1.0/myorg/groups/{groupid}/datasets/{id}/refreshes(https://learn.microsoft.com/en-us/rest/api/power-bi/datasets/get-refresh-history-in-group#refresh)In my use case, the groupid is hard coded and I iterate over the datasetid {id} using dynamic values FromEndpointTable.The setup for this is the same as in this guide: My problem is that the dataset id is not included in the payload for the refresh log endpoint, so I have no way of knowing which power bi dataset has been refreshed.Could I somehow include the dynamic endpoint as a field in the result set? Or is there any other way to solve this?Best regards,Pontus B
Suddenly all the excel sheets are not loading anymore however some of them no one touched 6 months ago.the error is:Executing table excel_sheet:failed with error:Exception Type: System.ExceptionMessage: Invalid column count Stack Trace: at DataStorageEngine.DataLakeGen2.DataLakeGen2Transfer.<>c__DisplayClass41_5.<UploadData>b__14(DataTable dataTable, Partition partition) at DataStorageEngine.DataLakeGen2.DataLakeGen2Transfer.UploadData(ADLSGen2APIManager api, DataSourceModel dataSourceModel, DataLakeGen2ExecutionMethod executionMethod, Action`2 writeExecutionLog) at DataStorageEngine.DataLakeGen2.DataLakeGen2StorageEngine.<>c__DisplayClass35_2.<TransferDataAsync>b__7(DataLakeGen2ExecutionMethod executionMethod) at DataSourceEngine.Custom.CustomSourceEngine.InvokeDataSourceExecution(Action`1 action) at DataSourceEngine.Custom.CustomSourceEngine.RunExecu
Dear Sir,Our client is running TimeXtender 6963.1.So want a rowcount, count(*) on our tables loaded in de ODX.Our ODX is configured with ADSL (Azure Datalake Gen2 Storage).So we want to use the ODX TimeXtender Parquet Data Source connector (23.1.1.0 64bit).Is it possible to run a count(*) query to our tables when we setup this connection to our ADSL?We need to know how many records are loaded in all of our tables.We have a lot of incremental tables, so we worry of all the increment files in the lake. Do we need to configure some sort of a aggregation ?Is there documentation available how to configure this ? The connector has a lot of options, we don’t know all the details.Hope somebody has some experience with this Parquet connector.Thank you in advance for looking into this.Regards,Arthur
Hi,We've updatet our Data Integration version from 6766.1 to 6963.1. Which means we had to update our outdated providers. So we followed the steps mentioned in this post Change data source provider | Community (timextender.com).This results in an error when we try to full load changed data source. It keeps giving is the error: “The schema …. already exists on the SQL storage and cannot be used” Which actually means we can’t update our providers/ data sources. We have to create new ones en have to map all our tables in de odx. Anyone else facing this problem and have a solution for this?
I'm currently loading Parquet "tables" in TX Classic with the following setup: Using Synapse Serverless to read Parquet files and expose them as external tables Connecting via SQL Server authentication This works, but I’m looking for a better approach.Is there a way to read Parquet "tables" directly in TX Classic? The Enhanced Data Source seems limited to reading or aggregating files, not treating them as tables.Alternatively, could I replace Synapse Serverless with Fabric Serverless? The main blocker is authentication—TX doesn't appear to support SQL providers with service principal (OAuth) authentication, only SQL Server authentication, which we’d prefer to avoid.Any suggestions, recommendations or workarounds would be appreciated.
Hi! We are currently setting up TimeXtender with Snowflake and have a bit of an issue when it comes TimeXtender not having the capability of managing the ODX in Snowflake (internal stage). As you know an external stage is needed via Azure Data Lake Gen2. The issue for us is that we would like to use private endpoint when creating this data lake in Azure but that requires business critical subscription to Snowflake which is 30 percent more expensive. Are there any plans/timeline for when TimeXtender will be capable of handling the Ingest instance in Snowflake and if so could you please give a rough estimate on when that might be available? We need to make some decisions on our end on how to proceed and would like to know the answer before we move forward.
As title suggests, I wonder if anyone in this community has experience with ingesting TX with the data source Adnamics and their API. Thanks in advance!
Hey, I use the REST connector to consume a CSV file. In my query parameters I got one for auth key. So when I try to load the file a get an error and the reason is that parameter get encoded (% → %25) . How can I avoid encoding in the query? /Bjørn A.
Hi,I’m sorry for this somewhat lengthy post but I have a problem that I don’t really know how to solve and I’m just looking to see if anyone have run into the same issue, or maybe already solved it.We are going to fetch data from a time management system that have a SOAP API and all the information I find in the community refers to RSD files, that is not to be used anymore. I don’t know how I would solve the problem that I have even with an RSD file, but that’s somewhat beside the point here. 😊The issue is that we must take the request XML, encrypt the whole thing using AES, into a fingerprint that in turn will need to be inserted into the actual request that is then sent to the API.I have received some code in C# that does the following steps:Generates a timestamp and an MD5 hash of the request XML Generates the fingerprint XML using the timestamp and the newly created MD5 hash with the schema like in the attached picture fingerprint_schema Encrypts the fingerprint XML with AES, usi
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.