FULL OUTER JOIN or only those with selected fields. Defaults to false, meaning only topics with selected fields are included for better query performance.
Syntax
Properties
When
false (default), only topics with selected fields are included in the FULL OUTER JOIN, improving performance by pruning unused topics. When true, all topics are included in the join regardless of whether fields are selected from them.Behavior
By default (always_join_all_topics: false), Omni optimizes composite topic queries by only including topics in the FULL OUTER JOIN that have selected fields. This can significantly improve query performance, especially when you have several topics defined but only need measures or dimensions from a subset of them.
Setting always_join_all_topics: true restores the original behavior where all topics are included in the join regardless of selection. This guarantees that dimension values from all topics appear in the result, even when no fields from a particular topic are selected.
Consider setting always_join_all_topics: true when:
- You need dimension values from all topics to appear in results, even when fields from some topics aren’t selected
- You’re migrating from the original composite topic behavior and need to maintain backward compatibility
- The completeness of dimension values across all topics is more important than query performance
Examples
Default behavior (performance optimized)
In this example, if you select only fields from theorders topic, the FULL OUTER JOIN will only include orders rather than all three topics.
Include all topics
In this example, all three topics are included in theFULL OUTER JOIN even if you only select fields from orders.

