CREATE TABLE csv_import_jobs (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  project_id INT NULL,
  project_name VARCHAR(160) NULL,
  file_name VARCHAR(255) NOT NULL,
  stored_file_path VARCHAR(512) NULL,
  file_size_bytes INT NOT NULL,
  detected_serial_number VARCHAR(64) NULL,
  row_count INT NOT NULL DEFAULT 0,
  processed_rows INT NOT NULL DEFAULT 0,
  sample_interval_seconds INT NULL,
  first_sampled_at DATETIME NULL,
  last_sampled_at DATETIME NULL,
  status VARCHAR(32) NOT NULL,
  error_text TEXT NULL,
  created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
  started_at DATETIME NULL,
  completed_at DATETIME NULL,
  updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
);

CREATE INDEX csv_import_jobs_created_at_idx ON csv_import_jobs (created_at);
CREATE INDEX csv_import_jobs_status_created_at_idx ON csv_import_jobs (status, created_at);
CREATE INDEX csv_import_jobs_project_created_at_idx ON csv_import_jobs (project_id, created_at);
