[ Talend tSAPTableInput DATA_BUFFER_EXCEEDED ] Podczas uruchomienia joba w Talendzie, gdzie używasz komponentu tSAPTableInput możesz napotkać poniższy błąd.
Problem z Talend tSAPTableInput DATA_BUFFER_EXCEEDED
[FATAL]: repository.job_dfkkop_0_1.job_DFKKOP - tSAPTableInput_1 DATA_BUFFER_EXCEEDED SAPException@710b18a6 [ errorCode=13 ,errorGroup=126 ,errorKey=DATA_BUFFER_EXCEEDED ,errorMessage=DATA_BUFFER_EXCEEDED ,errorMessageNumber=000 ,errorMessageText= ,bapiName=RFC_READ_TABLE ,tableName=DFKKOP ] at org.talend.sap.exception.SAPException$Builder.<init>(SAPException.java:274) at org.talend.sap.exception.SAPException$Builder.<init>(SAPException.java:269) at org.talend.sap.exception.SAPException.newBuilder(SAPException.java:74) at org.talend.sap.impl.SAPUtil.createExceptionBuilder(SAPUtil.java:107) at org.talend.sap.impl.service.SAPTableDataService.getTableData(SAPTableDataService.java:234) at repository.job_dfkkop_0_1.job_DFKKOP.tSAPTableInput_1Process(job_DFKKOP.java:7628) at repository.job_dfkkop_0_1.job_DFKKOP.tHDFSConnection_1Process(job_DFKKOP.java:501) at repository.job_dfkkop_0_1.job_DFKKOP.runJobInTOS(job_DFKKOP.java:8354) at repository.job_dfkkop_0_1.job_DFKKOP.main(job_DFKKOP.java:8186) [statistics] disconnected
Powód
W momencie, gdy próbujesz czytać dane, które przekraczają bufor otrzymasz błąd wywołany RFC_READ_TABLE, który zwraca wyjątek: DATA_BUFFER_EXCEEDED.
Rozwiązanie
Należy (jeśli to możliwe) ograniczyć/zmniejszyć liczbę kolumn (pól), które chcesz pobrać z systemu SAP. Dzięki temu zmniejszysz ilość za alokowanej pamięci i nie przekroczysz tym samym określonego bufory, który jest ustawiony na 512 znaków.
lub
Dodaj właściwość „api.use_z_talend_read_table” = „true” sekcji Advanced settings, która jest dostępna w komponencie tSAPTableInput.
