Skip to content

Cherry-pick AOCS related work that changes catalog version #1008

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

reshke
Copy link
Contributor

@reshke reshke commented Mar 26, 2025

While working on issue #989 I realized we need to cherry-pick a couple of valuable contributions from GP7 to resolve diff easily. Also, there is a benefit of cherry-picking catalog-changing contributions before CBDB 2.0 release.

What does this PR do?

Type of Change

  • Bug fix (non-breaking change)
  • New feature (non-breaking change)
  • Breaking change (fix or feature with breaking changes)
  • Documentation update

Breaking Changes

Test Plan

  • Unit tests added/updated
  • Integration tests added/updated
  • Passed make installcheck
  • Passed make -C src/test installcheck-cbdb-parallel

Impact

Performance:

User-facing changes:

Dependencies:

Checklist

Additional Context

CI Skip Instructions


@yjhjstz
Copy link
Member

yjhjstz commented Mar 27, 2025

cool, need a rebase.

@tuhaihe
Copy link
Member

tuhaihe commented May 9, 2025

Hi @reshke would you like to include this PR in the coming 2.0.0? If so, welcome to add this PR to the GitHub project.

wangxuqi and others added 3 commits May 12, 2025 13:23
On first index creation (block directory is created) and only that time all columns are scanned. Later any index creation just scans needed columns.

cherry-picked. Note influence of greenplum-db/gpdb-archive@8c92aa0
We can get indexes for blkdir and visimap from pg_index via
`RelationGetIndexList`. Removing these 2 fields will reduce catalog
size.

Basically, we now deal with these two properties in a more similar
way as the indexes of toast tables, where we always open the toast
table first and then get its index via `RelationGetIndexList`. In
fact, in majority of the places currently we already have those
two aux tables opened. The only place we didn't is in
ATExecSetTableSpace(), but it shouldn't slow down that function
too much anyway.

The other notable thing is that we need to modify how we get these
indexes in pg_dump - we now have to check the pg_index.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants