15.3 Ingestion and Loading Problems
Ingestion fails
First record the full client error, target database and table, ingestion method, and last successful row. Check error meanings in the Error Code Reference instead of relying on a fixed code table on this page.
DESC target_table;
SELECT NAME, TYPE, COLCOUNT
FROM M$SYS_TABLES
WHERE NAME = 'TARGET_TABLE';Check the following:
- Input column count, order, types, and nullability
- Current database and table owner
- User
CONNECTand tableINSERTprivileges - Time string format and connection time zone
- File system space and
V$STORAGE_USAGE - Append API return values, failed rows, and flush results
Support for out-of-order timestamps and UPDATE/DELETE predicates differs by table type. Check the constraints in the relevant table usage chapter.
CSV import fails
Check the current distribution’s options with machloader -h.
machloader -h
machloader -s 127.0.0.1 -P 5656 -u app_user \
-t target_table -i /data/input.csv \
-b /data/input.bad -l /data/input.logReproduce the failure with a small file, in this order:
- Check absolute paths and file permissions on the loader host, not the server host.
- Compare the column count of one CSV row with
DESC target_table. - Check encoding names against the current help. Available names include
UTF8,MS949,KSC5601, andEUCJP. - Match delimiter and quote options to the actual file.
- Specify both the target column name and format in date format options.
- Correct the first rejected row in the bad file, then load it into a separate validation table.
For exact -F syntax and loader options, use the
machloader Command and Option Reference.
When retrying after partial success, check the already ingested range to prevent duplicates.
Last updated on