*/
typedef enum
{
- JSTRAT_CLUMP_DEGENERATE,
+ JSTRAT_CLUMP_DEGENERATE = 0,
JSTRAT_CLUMP_FOREIGN,
JSTRAT_CLUMP_PARTITIONWISE
+ /* update NUM_PGPA_CLUMP_JOIN_STRATEGY if you add anything here */
} pgpa_join_clump_strategy;
+#define NUM_PGPA_CLUMP_JOIN_STRATEGY ((int) JSTRAT_CLUMP_PARTITIONWISE)
+
/*
* All of the details we need regarding a clumped join.
*/
*/
typedef enum
{
- JSTRAT_MERGE_JOIN_PLAIN,
+ JSTRAT_MERGE_JOIN_PLAIN = 0,
JSTRAT_MERGE_JOIN_MATERIALIZE,
JSTRAT_NESTED_LOOP_PLAIN,
JSTRAT_NESTED_LOOP_MATERIALIZE,
JSTRAT_NESTED_LOOP_MEMOIZE,
JSTRAT_HASH_JOIN
+ /* update NUM_PGPA_JOIN_STRATEGY if you add anything here */
} pgpa_join_strategy;
+#define NUM_PGPA_JOIN_STRATEGY ((int) JSTRAT_HASH_JOIN)
+
/*
* Within a pgpa_unrolled_join, we may need to refer to either to scans or to
* other joins, which may be either unrolled or clumped.