Skip to content
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

[xCluster] DDL replication - support array types #24079

Open
mdbridge opened this issue Sep 20, 2024 · 0 comments
Open

[xCluster] DDL replication - support array types #24079

mdbridge opened this issue Sep 20, 2024 · 0 comments
Labels
area/docdb YugabyteDB core features kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue

Comments

@mdbridge
Copy link
Contributor

mdbridge commented Sep 20, 2024

Jira Link: DB-12972
These are somewhat tricky as there are no specific DDL for creating
them, just creating or altering objects like tables that use them. For
example:

CREATE DOMAIN postal_code AS TEXT
             CHECK(VALUE ~ '^\d{5}$'OR VALUE ~ '^\d{5}-\d{4}$');
CREATE TABLE foo(postal postal_code[]);
INSERT INTO foo values (array['32768', '65536']::postal_code[]);
select * from foo;

Here postal_code[] is an array type with base type domain postal_code.

The hard part is that the pg_type OID of the base type must be identical
on both universes.

I believe this means that all pg_type OIDs must be preserved across the
universes as DDL's are done. (Bootstrap takes care of setting them up
as the same initially.)

We don't strictly need array pg_type OIDs preserved (the base type of an
array is never another array type), but I don't know if that is helpful.

@mdbridge mdbridge added the area/docdb YugabyteDB core features label Sep 20, 2024
@yugabyte-ci yugabyte-ci added kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue labels Sep 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/docdb YugabyteDB core features kind/enhancement This is an enhancement of an existing feature priority/medium Medium priority issue
Projects
Development

No branches or pull requests

2 participants