We add a column for identify mode before for identify az, which not
compatible with distributed gaussdb. Therefore, we remove the added
column in identify mode, and add another command identify az to make
sure a cascade standby and its upstream both in same available zone.
We support cascade standby now, a cascade standby will get WAL from
a standby asynchronously. To support flexible deployment, we add a
new GUC available_zone to identify the available zone of a cascade
standby, which will try to connect a standby in same available zone.
Users can use utility gs_ctl for failover and switchover. A cascade
standby will be promoted to be a standby when failover or switchover,
while a standby will be demoted to be a cascade standby after switchover.
2. Fix regression in issue 88 (core dump in JIT after truncate table), and added missing index id copy in CloneJitContext()
3. Added support for FULL-SCAN SELECT in JIT execution
4. Added more JIT tests
5. Clarified JIT statistiscs (separated invocation count from execution count)
6. Added special JIT statistics for testing (outside of statistics infra)
7. Fixed JIT plan explanation
8. Added support for boolean operators in JIT expressions (in WHERE clause and UPDATE SET clause)
9. Fixed JIT range scan bug: when filter execution fails execution branches to the wrong place (effect is missing check of end-of-scan flag that can lead to crash)
10. Fixed JIT JOIN bug: resetting wrong scan-ended flag (effect is missing records in result set)
11. Fix bug in JIT plan: Allow complex filter expressions in JIT plan (effect was simple queries were disqualified for JIT execution)
1. rewrite ROWNUM qual to LIMIT if possible
2. rewrite ROWNUM qual to One-Time Filter if possible
3. support optimize ROWNUM operating with constant expressions