Qlik Community

Qlik Sense App Development

Discussion board where members can learn more about Qlik Sense App Development and Usage.

jsf_fasoli
Contributor II

Error -129 while loading qliksense script

Hello everyone,

I'm reloading a script and I got error -129 while reloading by the console

2018-04-02 17:12:10 1590 Data:

2018-04-02 17:12:10 1591 LOAD

2018-04-02 17:12:10 1592     CUSTOMER_NUMBER AS [Client Amount],

2018-04-02 17:12:10 1593     ACCOUNT_NUMBER AS [Billing Account Amount],

2018-04-02 17:12:10 1594     Autonumber(ACCOUNT_NUMBER & '_' & MonthName(DateFrom)) AS %KeyBillingAccountMonthName,

2018-04-02 17:12:10 1595    

2018-04-02 17:12:10 1596     Sum(AMOUNT_1) AS TOTAL_AMOUNT_1,

2018-04-02 17:12:10 1597     Sum(AMOUNT_2) AS TOTAL_AMOUNT_2,

2018-04-02 17:12:10 1598     Sum(TAXES_1) AS TOTAL_TAXES_1,

2018-04-02 17:12:10 1599     Sum(TAXES_2) AS TOTAL_TAXES_2,

2018-04-02 17:12:10 1600     MonthName(DateFrom) AS YearMonthDateFrom

2018-04-02 17:12:10 1601 Resident Facturacion_tmp

2018-04-02 17:12:10 1602 Group by CUSTOMER_NUMBER, ACCOUNT_NUMBER, MonthName(DateFrom)

2018-04-02 17:16:13      8 fields found: Cliente Facturación, Billing Account Amount, %KeyBillingAccountMonthName, TOTAL_AMOUNT_1, TOTAL_AMOUNT_2, TOTAL_TAXES_1, TOTAL_TAXES_2, YearMonthDateFrom,

2018-04-02 17:16:13      3.855.140 lines fetched

2018-04-02 17:16:14 1604 Left Join

2018-04-02 17:16:14 1605 LOAD

2018-04-02 17:16:14 1606     ACCOUNT_NUMBER,

2018-04-02 17:16:14 1607     MonthStart(DateFrom)& '_' & ACCOUNT_NUMBER as KeyMapping,

2018-04-02 17:16:14 1608ApplyMap('CellphoneQtyByBillingAccount', AutoNumber(MonthStart(DateFrom)& '_' & ACCOUNT_NUMBER), 'NE') AS CellphoneQty

2018-04-02 17:16:14 1609 Resident Data_tmp

2018-04-02 17:18:57      3 fields found: ACCOUNT_NUMBER, KeyMapping, CellphoneQty,

2018-04-02 17:18:57      31.081.765 lines fetched

2018-04-02 17:18:57      Joining/Keeping

2018-04-02 18:08:44      -129 =

2018-04-02 18:17:02      Execution Failed

2018-04-02 18:34:54      Execution finished.

If I reload it in the app (not by console) it reloads well

¿Does anyone know what the -129 error mean?

Thanks!!!

1 Solution

Accepted Solutions
MVP
MVP

Re: Error -129 while loading qliksense script

To perform a JOIN you have to have one or more fields that have the same name across the two tables. If you don't you will get a cartesian join which means that you get all the combinations of all rows from each table. It is a multiplication. As far as I can tell from the log above you will get 3.855.140*31.081.765 which is 119.824.555.522.100 rows as a result. Clearly Qlik will run out of memory long before it can produce these rows...

Make sure that the fields that need to match have the same name in both tables - then the resulting number of rows will be within hopefully a manageable limit.

You can just to test put  FIRST 10 in front of both LOAD statements - this gives you an idea:

FIRST 10 LOAD

    CUSTOMER_NUMBER .....

     ......

;

FIRST 10 LOAD

    ACCOUNT_NUMBER,

    .....

;

Try to run and you will see that the resulting table will have 10*10 rows or 100 rows... which shows that you got a cartesian join.

Maybe the fields %KeyBillingAccountMonthName and CellphoneQty should be matching fields but then they will have to have the same name. Furthermore they have to be calculated the same way too.

4 Replies
MVP
MVP

Re: Error -129 while loading qliksense script

To perform a JOIN you have to have one or more fields that have the same name across the two tables. If you don't you will get a cartesian join which means that you get all the combinations of all rows from each table. It is a multiplication. As far as I can tell from the log above you will get 3.855.140*31.081.765 which is 119.824.555.522.100 rows as a result. Clearly Qlik will run out of memory long before it can produce these rows...

Make sure that the fields that need to match have the same name in both tables - then the resulting number of rows will be within hopefully a manageable limit.

You can just to test put  FIRST 10 in front of both LOAD statements - this gives you an idea:

FIRST 10 LOAD

    CUSTOMER_NUMBER .....

     ......

;

FIRST 10 LOAD

    ACCOUNT_NUMBER,

    .....

;

Try to run and you will see that the resulting table will have 10*10 rows or 100 rows... which shows that you got a cartesian join.

Maybe the fields %KeyBillingAccountMonthName and CellphoneQty should be matching fields but then they will have to have the same name. Furthermore they have to be calculated the same way too.

kuczynska
Contributor III

Re: Error -129 while loading qliksense script

Hi there,

We came across the same issue a while ago - and this had nothing to do with the structure of our join etc, as at the end of it error was returned in various parts of the code. Surprisingly - it never appeared when we ran a limited load.

We started from setting the error mode to 0 : set ErrorMode=0; and running the code this way.

This helped us for a while, but then it started coming back, error -129. I came across this: Re: Hi. Has anyone come across a -129 error when loading data. and it helped us too. Error started coming back, nothing from Qlik which helped us resolve this problem. Meanwhile we upgraded to Sep 2017 and we were hoping this will help, unfortunately it didn't.

At the end of the day the issue rectified itself - we recreated the app, renamed it and it's been ok ever since, error never appeared again.

It took us a good couple of weeks to stabilize the situation, hopefully it will not be the case for you, good luck!

Michalina

jsf_fasoli
Contributor II

Re: Error -129 while loading qliksense script

I re checked and saw I missed renaming the key as I did on the other table of the join.

Thank you so much

jsf_fasoli
Contributor II

Re: Error -129 while loading qliksense script

The error here was that I missed renaming a key field

Community Browser