Ladda TransactionLinesIncremental i Qlik ger \"System.OutOfMemoryException\"

Jag försökte hämta data i Qlik (Cloud) från Exact Online API (Invantive Cloud):

ExactOnlineREST.Incremental.TransactionLinesIncremental

Tyvärr får jag följande fel i Qlik:

Följande fel inträffade:

Internt fel. (Connector error: Exception of type 'System.OutOfMemoryException' was thrown.)

Felet inträffade här:

SELECT * FROM JsonV4GetData WITH PROPERTIES ( oDataResourcePath='ExactOnlineREST_Incremental_TransactionLinesIncremental_eol', oDataQueryOptions='', maxDepth='', maxResults='' )

Kan någon hjälpa mig här?

Complete information

Is it possible to add a (anonymized) screenshot of the request details in Invantive Bridge Online Monitoring as described in More insight with new Bridge Online Monitoring?

Details can be found by clicking on the download request which represents the issue discussed in this topic.

The download request typically has a SQL-statement with table name visible.

Please leave at least the following data visible from both columns:

  • the title bar with the request ID,
  • the status code, network size, path and times in the left column,
  • the error code and error message at the very bottom of the left column,
  • the entire right column including the SQL statement, table name and parameter values.

For example:

Verify correct server and user

Check carefully that you are logging into the Bridge Online website that is also used from Power BI and with the same user name. You will only see the requests from the Invantive Cloud user you are logging into the website with.

There are four servers in use:

  • bridge-online.cloud
  • app-online.cloud
  • bridge-online.invantive.com
  • app-online.invantive.com

You can see the server used in your script or source code of reporting.

Verify correct request and details

Please make sure to select the request to display the details. Only one single request should be visible in the screenshot.

Also check carefully that the request has a path with odata4 or apps. Other requests are in general non-relevant for this purpose.

Error message and tips per email

In addition, the Invantive Cloud user who has the error message will usually receive on his email address an email with an error message and tips if there is an error message in Power BI, Power Query, Azure Data Factory, Qlik or Tableau.

Advice is to check the affected user’s spam for such emails sent from support@invantive.com.

Här är skärmdumpen:

image

Jag har också redan kontrollerat att jag kan hämta data (andra API:er som Fordringar var inga problem).

Kanske är det till hjälp, men den begärda tabellen bör ha 1-2 miljoner rader.

The request 0HNE7KSAM1E3M:00000003 on Invantive App Online was terminated by the OData consumer (Qlik in this case) dropping the connection after 19 minutes and 14 seconds. It received 78.028 rows sofar on 1 partition.

The actual row count can easily be assessed in typically less than a second using the approach explained in:

using a query such as:

select *
from   rowcounts@eol
where  table_name = 'SyncTransactionLines'

For now, it will be assumed that 1-2 million rows are to be expected. Also, the nature of the design of *Incremental tables means that data can only start to return once all rows have been collected for a partition. Since there is only 1 partition selected, this means that the data collection has already ended at this moment in time and Invantive App Online is streaming rows to the OData consumer typically limited only by the bandwidth between producer and consumer.

A volume of 1-2 million rows should not be an issue. As of July 2025, Invantive Cloud is typically starting to get overstretched when there are 4 million or more rows per partition. Larger volumes with tens or hundreds of millions of rows on Exact Online or other cloud platforms will definitely exceed the current specifications for the current configuration of the Invantive Cloud. For these scenarios, the enterprise products are recommended such as on-premises Data Hub or on-premises UniversalSQL Server.

For now, there is no reason to expect any problem on the Invantive Cloud side.

A Google search revealed that the OutOfMemoryException sometimes appears on Qlik. See for instance:

The last one describes an Out of Memory-exception with 500.000 rows. This Qlik community post refers to Solved: " System.OutofMemoryException " appears when i loa... - Qlik Community - 1977929 which might be helpful.

Please note the typical uncompressed size of a dataset of 2 million transaction line rows will be in the range of 2 to 4 GiB.

Problemet är löst. Istället för att anropa OData-anslutningen i Qlik, anropar jag direkt REST API:et för TransactionLinesIncremental.

Nu fungerar det.

Okej, det är bra!

Kanske laddar OData-kopplaren i Qlik först ner hela datamängden och bearbetar den sedan som en helhet, vilket leder till högre minneskrav. Detta istället för att hantera detta format som ett specialfall av strömmande data, vilket REST-kopplaren verkar göra.

Hej,

Tyvärr står jag inför problemet igen.

image

Som du kan se på skärmdumpen avbröts hämtningen efter 16 minuter. Jag har också kontrollerat tabellen, den borde vara mindre än 1 miljon rader.

Ibland hämtas datan efter 1 minut, ibland tar det längre tid.

Kan du hjälpa mig här? Jag skulle vilja upprätta en stabil anslutning för att hämta datan dagligen.