graphql-engine/server/src-lib/Hasura/Backends/Postgres
Antoine Leblanc 04d8f068b6 Remove explicit case on the backend tag in Cache
### Description

As part of the cache building process, we create / update / migrate the catalog that each DB uses as a place to store event trigger information. The function that decides how this should be done was doing an explicit `case ... of` on the backend tag, instead of delegating to one of the backend classes. The downsides of this is that:
- it adds a "friction point" where the backend matters in the core of the engine, which is otherwise written to be almost entirely backend-agnostic
- it creates imports from deep in the engine to the `Backends`, which we try to restrict to a very small set of clearly identified files (the `Instances` files)
- it is currently implemented using a "catch all" default case, which might not always be correct for new backends

This PR makes the catalog updating process a part of `BackendMetadata`, and cleans the corresponding schema cache code.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4457
GitOrigin-RevId: 592f0eaa97a7c38f4e6d4400e1d2353aab12c97e
2022-05-05 13:44:56 +00:00
..
Connection Yeet some default-extensions 2022-03-16 00:40:17 +00:00
DDL Remove explicit case on the backend tag in Cache 2022-05-05 13:44:56 +00:00
Execute Cut ties with RQL.DML.Internal 2022-04-27 15:37:23 +00:00
Instances Remove explicit case on the backend tag in Cache 2022-05-05 13:44:56 +00:00
Schema Remove RQL/Types.hs 2022-04-27 13:58:47 +00:00
SQL replace SQLOperator with ScalarSelectionArguments 2022-05-03 09:00:01 +00:00
Translate replace SQLOperator with ScalarSelectionArguments 2022-05-03 09:00:01 +00:00
Types server/bigquery: enable metadata API to add/drop computed fields to BigQuery tables 2022-05-04 14:53:31 +00:00
Connection.hs server: split the Postgres Connection module 2022-03-09 07:15:17 +00:00
DDL.hs Evie/postgres/module docs 2022-02-08 09:25:35 +00:00