What is a Run?
A run is a single execution of an optimization (Lite, Medium, or Full) on a specific Iceberg table.
Each time you start an optimization for a table, OLake creates a new run entry. This entry tracks:
- The table being optimized
- The optimization type (Lite, Medium, or Full)
- The current status of the run
- The start time and duration
- The logs for that execution
- The Metrics of that execution
Runs help you understand what has been optimized, when it happened, and whether it completed successfully.
Run Lifecycle
Every run goes through a few simple states from start to finish:
| State | Description |
|---|---|
| Running | The optimization run is currently in progress for the table. |
| Success | The optimization run finished successfully without errors. |
| Failed | The optimization run stopped due to an error. Check the logs for details. |
| Cancelled | The optimization run was manually stopped by the user. |
| Skipped | The optimization run was skipped. |
Viewing Runs
You can see all runs for a table from the Tables page:
- Go to the Tables page in the OLake UI.
- In the row for the table you are interested in, click the Actions menu (three dots).
- Click View Logs & Runs.

This opens the Runs view for that table. The Runs view typically includes:
- The optimization type (Lite, Medium, or Full)
- The current status of each run
- Start time and duration
- A Logs column so you can inspect details for each run
- A Metrics column so you can view metrics of each run

Viewing Logs
From the Runs view, you can open detailed logs for a specific run:
- Locate the run you want to inspect.
- In the Logs column for that run, click the View button.

This opens the Logs page for that run. The Logs page is split into:
- Driver Logs – high-level logs for the overall optimization run.
- Sub Tasks Logs – detailed logs for each sub-task that the run is broken into.
The Driver Logs section gives you an overview of how the run progressed from start to finish.

The Sub Tasks Logs section shows separate logs for each sub-task within the run, so you can pinpoint issues in specific parts of the process.
