mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-17 12:31:52 +03:00
b8cd59551f
https://github.com/hasura/graphql-engine-mono/pull/1763 Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com> GitOrigin-RevId: 184be0e675345e5ec02678482097edd9c69ad484
83 lines
1.9 KiB
ReStructuredText
83 lines
1.9 KiB
ReStructuredText
.. meta::
|
||
:description: Hasura Citus Hyperscale Postgres database support
|
||
:keywords: hasura, docs, databases, citus-hyperscale-postgres, compatibility
|
||
|
||
.. _hasura-citus-compatibility:
|
||
|
||
Hasura - Citus compatibility
|
||
============================
|
||
|
||
.. contents:: Table of contents
|
||
:backlinks: none
|
||
:depth: 2
|
||
:local:
|
||
|
||
Introduction
|
||
------------
|
||
|
||
As Citus is an extension of Postgres, the way it functions with Hasura is
|
||
also very similar. Currently the following features are supported with Citus
|
||
and Hasura:
|
||
|
||
Tables
|
||
------
|
||
Querying from all kinds of tables and views is currently supported.
|
||
This includes local, reference and distributed tables. All the tables can be
|
||
tracked from the console.
|
||
|
||
Relationships
|
||
-------------
|
||
The following table describes the supported relationships based on the
|
||
supported joins in Citus:
|
||
|
||
.. list-table::
|
||
:header-rows: 1
|
||
:stub-columns: 1
|
||
:widths: 10 10 10 10
|
||
|
||
* -
|
||
- To Local
|
||
- To Reference
|
||
- To Distributed
|
||
* - **From Local**
|
||
- Object, Array
|
||
- Object, Array
|
||
-
|
||
* - **From Reference**
|
||
- Object, Array
|
||
- Object, Array
|
||
-
|
||
* - **From Distributed**
|
||
-
|
||
- Object
|
||
- Object, Array
|
||
|
||
The Hasura console allows you to add all the supported relationships.
|
||
|
||
|
||
Permissions
|
||
-----------
|
||
|
||
All permissions work like on Postgres without any restrictions.
|
||
|
||
|
||
Functions
|
||
---------
|
||
|
||
Citus supported ``plpgsql`` functions are supported on Hasura with the following restrictions:
|
||
|
||
- Fetching relationships as part of the function’s response is currently not supported
|
||
|
||
Mutations
|
||
---------
|
||
|
||
Mutations are supported in graphql-engine with the following restrictions:
|
||
|
||
- Fetching relationship data as part of ``returning`` is not yet supported
|
||
|
||
|
||
|
||
Event triggers
|
||
--------------
|
||
|
||
Citus does not yet support creating triggers (`See issue <https://github.com/citusdata/citus/issues/4425>`__) on reference tables. Hence this is currently not supported. |