* cdbcomponent_getCdbComponents * * * Storage for the SegmentInstances block and all subsidiary * structures are allocated from the caller's context. */
| 749 | * structures are allocated from the caller's context. |
| 750 | */ |
| 751 | CdbComponentDatabases * |
| 752 | cdbcomponent_getCdbComponents() |
| 753 | { |
| 754 | PG_TRY(); |
| 755 | { |
| 756 | if (cdb_component_dbs == NULL) |
| 757 | { |
| 758 | cdb_component_dbs = getCdbComponentInfo(); |
| 759 | cdb_component_dbs->fts_version = getFtsVersion(); |
| 760 | cdb_component_dbs->expand_version = GetGpExpandVersion(); |
| 761 | } |
| 762 | } |
| 763 | PG_CATCH(); |
| 764 | { |
| 765 | if (Gp_role == GP_ROLE_DISPATCH) |
| 766 | FtsNotifyProber(); |
| 767 | |
| 768 | PG_RE_THROW(); |
| 769 | } |
| 770 | PG_END_TRY(); |
| 771 | |
| 772 | return cdb_component_dbs; |
| 773 | } |
| 774 | |
| 775 | /* |
| 776 | * cdbcomponet_destroyCdbComponents |