Here’s the complete solution addressing all three focus areas:
Understanding Bulk Import Limits and Timeout Thresholds:
Arena QMS cloud has two separate constraints: a 5,000 record batch size limit AND a 15-minute execution timeout. Your issue is hitting the timeout, not the batch size. With attachments, you’re processing at ~1 second per record, which means you can only handle about 900 records before timeout. The solution is to separate your import into two phases:
Phase 1 - Import base records without attachments (reduce CSV to core fields only):
Number,Title,Description,Status,Priority,DetectedDate
NC-2024-001,"Component defect","Issue description",Open,High,2024-01-15
This will process at 5-10 records per second, allowing your full 2,800 records to complete in under 10 minutes.
Phase 2 - Use the REST API to attach files programmatically:
// Pseudocode - Attachment upload process:
1. Read NC record IDs from Phase 1 import results
2. For each NC record, retrieve associated attachments from staging area
3. POST to /api/nonconformance/{id}/attachments with multipart form data
4. Handle API response and log success/failures individually
5. Implement retry logic for failed uploads (3 attempts with exponential backoff)
// API timeout is 5 minutes per attachment, much more forgiving than bulk import
Error Report Download Access:
When bulk imports timeout, navigate to Admin > Data Management > Import History (not System Logs). Find your import job by timestamp - even failed jobs are logged. Click the job ID to access the detailed execution report. This report shows:
- Records processed before timeout
- Validation errors per record
- Transaction rollback confirmation
- Partial success data (which records validated successfully even if not committed)
Download this report as CSV to identify any data quality issues before retrying.
Optimization Tips:
Reduce batch size to 500 records for imports with complex data relationships. This provides better error isolation and faster feedback. For your 2,800 records, use 6 batches of 500 instead of trying to import all at once. Each batch completes in 2-3 minutes, well under the timeout threshold, and you can monitor progress more effectively.