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

Add experimental support for Citus #3437

Closed
punktilious opened this issue Mar 7, 2022 · 1 comment
Closed

Add experimental support for Citus #3437

punktilious opened this issue Mar 7, 2022 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@punktilious
Copy link
Collaborator

Is your feature request related to a problem? Please describe.
Citus is a distributed database extension for PostgreSQL.

Add distribution/replication information to the schema so that this metadata can be applied when the tables are created. Filter the creation of foreign key relationships according to the distribution rules.

Describe the solution you'd like
The schema tool should contain support for Citus databases.

Describe alternatives you've considered
Apply the Citus logic manually after the schema is created.

Acceptance Criteria

  1. GIVEN [a precondition]
    AND [another precondition]
    WHEN [test step]
    AND [test step]
    THEN [verification step]
    AND [verification step]

Additional context
Does not support migration from an earlier version. The first Citus install must be FHIR schema version V0026.

@punktilious punktilious added the enhancement New feature or request label Mar 7, 2022
punktilious added a commit that referenced this issue Mar 7, 2022
punktilious added a commit that referenced this issue Mar 9, 2022
punktilious added a commit that referenced this issue Mar 14, 2022
punktilious added a commit that referenced this issue May 5, 2022
punktilious added a commit that referenced this issue May 5, 2022
Signed-off-by: Robin Arnold <[email protected]>
punktilious added a commit that referenced this issue May 5, 2022
punktilious added a commit that referenced this issue May 10, 2022
punktilious added a commit that referenced this issue May 12, 2022
punktilious added a commit that referenced this issue May 15, 2022
punktilious added a commit that referenced this issue May 20, 2022
punktilious added a commit that referenced this issue May 27, 2022
punktilious added a commit that referenced this issue May 27, 2022
punktilious added a commit that referenced this issue May 27, 2022
punktilious added a commit that referenced this issue May 30, 2022
punktilious added a commit that referenced this issue May 30, 2022
Signed-off-by: Robin Arnold <[email protected]>
punktilious added a commit that referenced this issue Jun 1, 2022
punktilious added a commit that referenced this issue Jun 1, 2022
punktilious added a commit that referenced this issue Jun 2, 2022
punktilious added a commit that referenced this issue Jun 2, 2022
punktilious added a commit that referenced this issue Jun 3, 2022
punktilious added a commit that referenced this issue Jun 4, 2022
punktilious added a commit that referenced this issue Jun 6, 2022
punktilious added a commit that referenced this issue Jun 8, 2022
punktilious added a commit that referenced this issue Jun 8, 2022
punktilious added a commit that referenced this issue Jun 8, 2022
punktilious added a commit that referenced this issue Jun 8, 2022
punktilious added a commit that referenced this issue Jun 9, 2022
punktilious added a commit that referenced this issue Jun 9, 2022
punktilious added a commit that referenced this issue Jun 9, 2022
punktilious added a commit that referenced this issue Jun 14, 2022
…ues. Remove ref_version_id

Signed-off-by: Robin Arnold <[email protected]>
punktilious added a commit that referenced this issue Jun 14, 2022
punktilious added a commit that referenced this issue Jun 15, 2022
punktilious added a commit that referenced this issue Jun 15, 2022
punktilious added a commit that referenced this issue Jun 15, 2022
punktilious added a commit that referenced this issue Jun 15, 2022
punktilious added a commit that referenced this issue Jun 17, 2022
punktilious added a commit that referenced this issue Jun 17, 2022
punktilious added a commit that referenced this issue Jun 20, 2022
punktilious added a commit that referenced this issue Jun 21, 2022
* issue #3713 use distributed add_any_resource function for citus

Signed-off-by: Robin Arnold <[email protected]>

* issue #3437 fix usage of logicalResourceId and resourceId for remote index

Signed-off-by: Robin Arnold <[email protected]>
punktilious added a commit that referenced this issue Jun 21, 2022
punktilious added a commit that referenced this issue Jun 21, 2022
@lmsurpre
Copy link
Member

lmsurpre commented Aug 4, 2022

Robin ran the fhir-server-test integration tests against a server configured with the citus backend and all the tests were passed.

Interestingly, this was using single-node PostgreSQL that is configured to work like Citus by specifying dataSourceType=citus in the fhir-server-config.
On a real citus, there remain some limitations on the search API including _include, _revinclude, chaining, and reverse chaining (_has)

@lmsurpre lmsurpre closed this as completed Aug 4, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants