Commit Graph

250 Commits

Author SHA1 Message Date
Vishnu Bharathi
6133f1c1da ci: tag release v2.17.0
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7567
GitOrigin-RevId: b3eaf2fc506fb1b1bbb06c3a829915d56b47409f
2023-01-18 07:59:39 +00:00
Naveen Naidu
99fb6ac22f server/mssql: fix handling of special language characters in event trigger payload
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7448
GitOrigin-RevId: d87357fe2a54d755c893938db5fb6193316b0b79
2023-01-10 08:50:52 +00:00
ananya-2410
cccc0dc309 ci: update catalog version for v2.17.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7483
GitOrigin-RevId: af9a79e69a7a679ee4eea0756e58ec770bf7d7df
2023-01-10 07:28:40 +00:00
Brandon Martin
5aa1385644 Revert catalog version and migrations from #7034
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7306
GitOrigin-RevId: bf5461ed3127052d7f2b2d0521d5f59a3ec90d04
2022-12-19 18:39:58 +00:00
Divi
62708ca6bd ci: update catalog version for v2.16.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7271
GitOrigin-RevId: a7978ae1c0dd4d402f6293a74cf45acba560a456
2022-12-14 07:14:24 +00:00
Lyndon Maydwell
3d5fb984b0 Fix metadata defaults bug - Defaults serialised into metadata table - GDC-647
## Description

There is a bug in the metadata defaults code, see [the original PR](https://github.com/hasura/graphql-engine-mono/pull/6286).

Steps to reproduce this issue:

* Start a new HGE project
* Start HGE with a defaults argument: `HASURA_GRAPHQL_LOG_LEVEL=debug cabal run exe:graphql-engine -- serve --enable-console --console-assets-dir=./console/static/dist --metadata-defaults='{"backend_configs": {"dataconnector": {"mongo": {"display_name": "BONGOBB", "uri": "http://localhost:8123"}}}}'`
* Add a source (doesn't need to be related to the defaults)
* Export metadata
* See that the defaults are present in the exported metadata

## Related Issues

* Github Issue: https://github.com/hasura/graphql-engine/issues/9237
* Jira: https://hasurahq.atlassian.net/browse/GDC-647
* Original PR: https://github.com/hasura/graphql-engine-mono/pull/6286

## Solution

* The test for if defaults should be included for metadata api operations has been extended to check for updates
* Metadata inconsistencies have been hidden for `/capabilities` calls on startup

## TODO

* [x] Fix bug
* [x] Write tests
* [x] OSS Metadata Migration to correct persisted data - `server/src-rsr/migrations/47_to_48.sql`
* [x] Cloud Metadata Migration - `pro/server/res/cloud/migrations/6_to_7.sql`
* [x] Bump Catalog Version - `server/src-rsr/catalog_version.txt`
* [x] Update Catalog Versions - `server/src-rsr/catalog_versions.txt` (This will be done by Infra when creating a release)
* [x] Log connection error as it occurs *(Already being logged. Requires `--enabled-log-types startup,webhook-log,websocket-log,http-log,data-connector-log`)
* [x] Don't mark metadata inconsistencies for this call.

## Questions

* [ ] Does the `pro/server/res/cloud/migrations/6_to_7.sql` cover the cloud scenarios?
* [ ] Should we have `SET search_path` in migrations?
* [x] What should be in `server/src-rsr/catalog_versions.txt`?

## Testing

To test the solution locally run:

> docker compose up -d

and

> cabal run  -- exe:api-tests --skip BigQuery --skip SQLServer --skip '/Test.API.Explain/Postgres/'

## Solution

In `runMetadataQuery` in `server/src-lib/Hasura/Server/API/Metadata.hs`:

```diff
-        if (exportsMetadata _rqlMetadata)
+        if (exportsMetadata _rqlMetadata || queryModifiesMetadata _rqlMetadata)
```

This ensures that defaults aren't present in operations that serialise metadata.

Note: You might think that `X_add_source` would need the defaults to be present to add a source that references the defaults, but since the resolution occurs in the schema-cache building phase, the defaults can be excluded for the metadata modifications required for `X_add_source`.

In addition to the code-change, a metadata migration has been introduced in order to clean up serialised defaults.

The following scenarios need to be considered for both OSS and Cloud:

* The user has not had defaults serialised
* The user has had the defaults serialised and no other backends configured
* The user has had the defaults serialised and has also configured other backends

We want to remove as much of the metadata as possible without any user-specified data and this should be reflected in migration `server/src-rsr/migrations/47_to_48.sql`.

## Server checklist

### Catalog upgrade

Does this PR change Hasura Catalog version?
-  Yes

### Metadata
Does this PR add a new Metadata feature?
-  No

### GraphQL
-  No new GraphQL schema is generated

### Breaking changes
-  No Breaking changes

## Changelog

__Component__ : server
__Type__: bugfix
__Product__: community-edition

### Short Changelog

Fixes a metadata defaults serialization bug and introduces a metadata migration to correct data that has been persisted due to the bug.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7034
GitOrigin-RevId: ad7d4f748397a1a607f2c0c886bf0fbbc3f873f2
2022-12-06 22:35:19 +00:00
paritosh-08
3d4c66041f server: add event_processing_time metric
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6987
GitOrigin-RevId: 4f5948a225b18e2db59572482d2a608117fbb7d0
2022-12-06 15:11:04 +00:00
Vishnu Bharathi
73ad0275f3 ci: tag release v2.16.0
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7148
GitOrigin-RevId: 25adaa09c57471ed96d3d131abfa6c6c4225d6fd
2022-12-05 07:37:26 +00:00
Vishnu Bharathi
3c9e914931 ci: tag release v2.16.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/7103
GitOrigin-RevId: 52de369fc4bd35a92884706df4c0ec7c889d516c
2022-11-30 08:11:23 +00:00
Karthikeyan Chinnakonda
32a316aef7 server: provide an option to enable event triggers on logically replicated tables
## Description ✍️
This PR introduces a new feature to enable/disable event triggers during logical replication of table data for PostgreSQL and MS-SQL data sources. We introduce a new field `trigger_on_replication` in the `*_create_event_trigger` metadata API. By default the event triggers will not fire for logical data replication.

## Changelog ✍️

__Component__ : server

__Type__: feature

__Product__: community-edition

### Short Changelog

Add option to enable/disable event triggers on logically replicated tables

### Related Issues ✍

https://github.com/hasura/graphql-engine/issues/8814
https://hasurahq.atlassian.net/browse/GS-252

### Solution and Design
- By default, triggers do **not** fire when the session mode is `replica` in Postgres, so if the `triggerOnReplication` is set to `true` for an event trigger we run the query `ALTER TABLE #{tableTxt} ENABLE ALWAYS TRIGGER #{triggerNameTxt};` so that the trigger fires always irrespective of the `session_replication_role`
- By default, triggers do fire in case of replication in MS-SQL, so if the `triggerOnReplication` is set to `false` for an event trigger we add a clause `NOT FOR REPLICATION` to the the SQL when the trigger is created/altered, which sets the `is_not_for_replication` for the trigger as `true` and it does not fire during logical replication.

### Steps to test and verify ✍
- Run hspec integration tests for HGE

## Server checklist ✍

### Metadata ✍

Does this PR add a new Metadata feature?
-  Yes
  - Does `export_metadata`/`replace_metadata` supports the new metadata added?
    - 

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6953
Co-authored-by: Puru Gupta <32328846+purugupta99@users.noreply.github.com>
Co-authored-by: Sean Park-Ross <94021366+seanparkross@users.noreply.github.com>
GitOrigin-RevId: 92731328a2bbdcad2302c829f26f9acb33c36135
2022-11-29 17:43:13 +00:00
Vishnu Bharathi
5d7f4fa1a9 ci: tag multiple releases
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6983
GitOrigin-RevId: 5e118b498d95cdcd5141a171a6e61e122181e093
2022-11-23 07:53:27 +00:00
Vishnu Bharathi
c89e31b253 ci: tag release v2.15.2
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6980
GitOrigin-RevId: 662897f76160eeaa6a5b88d8e6b9381362c4df07
2022-11-23 07:52:59 +00:00
ananya-2410
5a7692ba68 ci: tag release v2.15.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6895
GitOrigin-RevId: e8b282490310362bd0cdc4b05988999598a6445a
2022-11-16 08:12:21 +00:00
Divi
a509544440 ci: v2.15.0 catalog version update
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6760
GitOrigin-RevId: 87e4318f5cc7960a6e7032c5f2805cbe38564bf0
2022-11-08 03:53:27 +00:00
Nicolas Inchauspe
b0d5238c3b console: globally add missing <!DOCTYPE html>
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6661
GitOrigin-RevId: ee45e493c76ad81569731dcd5468c846ba01cd12
2022-11-03 07:06:06 +00:00
Vishnu Bharathi
9318cb2533 ci: tag release v2.15.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6639
GitOrigin-RevId: e8b73f1eed61c279bf53b90339dba5f09f0e2d9a
2022-10-31 15:58:31 +00:00
Vishnu Bharathi
c729bd0ef3 ci: tag release v2.14.0
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6624
GitOrigin-RevId: a36d030369cc5572b9d11b4a65fd7294ece1fd56
2022-10-31 08:10:33 +00:00
Vishnu Bharathi
348668a3c5 ci: tag release v2.13.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6593
GitOrigin-RevId: f91405a0ea5b7204c944b7f247e10f0d88c88d57
2022-10-28 05:38:33 +00:00
ananya-2410
e2dc37ab60 ci: tag release v2.14.0-beta.2
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6540
GitOrigin-RevId: 20cfc7b281e3664b67b4fa8be44a307716efef63
2022-10-26 08:47:06 +00:00
Gil Mizrahi
d12827561b NDAT-207 fix unique constraints and indexes for cockroachdb
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6444
GitOrigin-RevId: 2baf2c954aeead47b82396cafe703e41e0f201a2
2022-10-21 14:03:55 +00:00
paritosh-08
e692c3b20d server: add IF EXISTS while dropping the constraint in source migration
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6457
GitOrigin-RevId: 1e76ca71c35cf117da7a073080df8a39e5820ddd
2022-10-21 04:44:08 +00:00
Philip Lykke Carlsen
10ae79173e Mention all src-rsr files in 'extra-source-files' section
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6341
GitOrigin-RevId: 90d9a43304ab48caa67f2d0267a821ebb51a362c
2022-10-13 13:58:20 +00:00
Divi
66fa31944d ci: add catalog version for v2.14.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6308
GitOrigin-RevId: ceba6d62264603ee5d279814677b29bcc43ecaea
2022-10-12 06:40:35 +00:00
Divi
2e2aab9f2f ci: catalog version update for v2.13.0
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6293
GitOrigin-RevId: cbadd0591f01ae1f038fb9d92aff68e46cc600d1
2022-10-11 12:11:34 +00:00
Daniel Harvey
1aaa7b1b47 server: revert "fetch col_description using value from column directly"
Reverts hasura/graphql-engine-mono#6228

We are getting metadata timeouts again, this needs looking into before enabling again.

PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6277
GitOrigin-RevId: 397c1704834a5e2332cca50d14a46c117f34d1ca
2022-10-10 15:28:44 +00:00
Daniel Harvey
ba2e585a15 server: fetch col_description using value from column directly
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6228
GitOrigin-RevId: 8a887817ae3003bc63b49a79d3d4772b2dcea020
2022-10-07 08:42:16 +00:00
ananya-2410
c34d2504e8 ci: tag release v2.13.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/6008
GitOrigin-RevId: 3b877e49dcf5ce4116b8b68581a9189521ac81f9
2022-09-22 08:19:04 +00:00
Daniel Harvey
559cc78b2d server: optimise CockroachDB metadata fetch
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5910
GitOrigin-RevId: 09deef75576fc916138888819db6689b4b61da2b
2022-09-19 14:07:59 +00:00
Stefano Magni
a0f4f00bfd console: Add Sentry
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5699
Co-authored-by: Rishichandra Wawhal <27274869+wawhal@users.noreply.github.com>
Co-authored-by: Daniel Harvey <4729125+danieljharvey@users.noreply.github.com>
GitOrigin-RevId: 00f2c5d25012b21f4e8763ef578598a3a11896e4
2022-09-15 17:00:44 +00:00
paritosh-08
db710d38b7 server, pro: event trigger auto cleanup (increment 2)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5746
Co-authored-by: pranshi06 <85474619+pranshi06@users.noreply.github.com>
Co-authored-by: Puru Gupta <32328846+purugupta99@users.noreply.github.com>
Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com>
GitOrigin-RevId: f4e5e06389ca57bdb5f7771f459c07418787111d
2022-09-13 08:34:52 +00:00
ananya-2410
a5c6a5b64a ci: tag release v2.11.2 and v2.12.0
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5831
GitOrigin-RevId: 8aedf377bf6f80bd7df14b7da9dc52c845a3a844
2022-09-12 07:19:23 +00:00
paritosh-08
d6970173c1 server, pro: event trigger auto cleanup (increment 1)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5612
Co-authored-by: pranshi06 <85474619+pranshi06@users.noreply.github.com>
Co-authored-by: Puru Gupta <32328846+purugupta99@users.noreply.github.com>
Co-authored-by: Karthikeyan Chinnakonda <15602904+codingkarthik@users.noreply.github.com>
GitOrigin-RevId: 6ce69ebb555e49439ae2b01fe42e39415ac53966
2022-09-09 08:28:31 +00:00
Vishnu Bharathi
517376f12a ci: tag release v2.11.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5697
GitOrigin-RevId: e0150a9326ad87f8981baca2bb45da96b6f30784
2022-08-31 14:17:54 +00:00
Vishnu Bharathi
d5b356c53f ci: tag release v2.11.0 and v2.12.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5657
GitOrigin-RevId: 5349e548062bfb045d619c57f80bba34c5c2827e
2022-08-29 07:16:49 +00:00
Abby Sassel
ac55952169 fix cockroach_table_metadata.sql syntax error
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5573
GitOrigin-RevId: cd4b4c954203fcb044cf6a5da6fd3bdab2799a52
2022-08-22 14:18:46 +00:00
Daniel Harvey
2ff8aa8f7d server: add PostgresKind for CockroachDB
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5550
GitOrigin-RevId: f53f88b64617500353bce5a699b89fcbb591d80f
2022-08-19 14:21:09 +00:00
Vishnu Bharathi
bb219d585b ci: tag release v2.10.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5476
GitOrigin-RevId: a19d1319959527c3b275ca9fd3dc88c3ee2d3eaf
2022-08-16 13:55:57 +00:00
Vishnu Bharathi
a785c664e5 ci: tag release v2.10.0 and v2.11.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5423
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: c0513156c9527f58bab86e8a67435e7be6ee035d
2022-08-10 13:54:03 +00:00
Vishnu Bharathi
61bc9c498b ci: tag release v2.9.0 and v2.10.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5214
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: 93adb002a5a7d9c3983738d9719e83918a571160
2022-07-27 10:16:23 +00:00
Vishnu Bharathi
c91aea2aff ci: tag release v2.9.0-beta.3
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5112
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: f415a847c3ed984e289e1f531d716b245fa7fba8
2022-07-20 12:45:59 +00:00
Vishnu Bharathi
f6ea3168b6 ci: tag release v2.9.0-beta.2
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/5038
Co-authored-by: Naveen Naidu <30195193+Naveenaidu@users.noreply.github.com>
GitOrigin-RevId: 4f99534b8e726cc18aabc0265dbd83497ca2380b
2022-07-13 13:03:03 +00:00
Vishnu Bharathi
967f4047ac ci: tag release v2.8.4
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4988
GitOrigin-RevId: 9cf042bbbcb36eaefdc0bae862f9529a973443fd
2022-07-07 07:39:23 +00:00
Naveen Naidu
d33025ff5b server: fix indexes for MSSQL event triggers
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4766
GitOrigin-RevId: 1c1bf173e53fd0b6692131632023817dc843b302
2022-07-01 06:51:41 +00:00
Vishnu Bharathi
b4f9626b00 ci: tag release v2.8.3
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4915
Co-authored-by: Divi <32202683+imperfect-fourth@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: e7f5372829b8bb4d84f30b20c4cd488f516389d1
2022-06-30 10:57:25 +00:00
Vishnu Bharathi
331ae6ab56 ci: tag release v2.8.2 and v2.8.2-pro.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4899
GitOrigin-RevId: 5e1aa15b8fc1c744d7f9362596ac0d31d5235a2a
2022-06-29 13:54:48 +00:00
Benoit Ranque
e6614db17b console: Hide timescaledb internal schema from data tab
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4439
Co-authored-by: Sooraj <8408875+soorajshankar@users.noreply.github.com>
GitOrigin-RevId: 49c746e8d23b87363462942d4823c7ab9de2744e
2022-06-22 07:38:38 +00:00
Vishnu Bharathi
6b71746afd ci: tag release v2.8.1 and v2.9.0-beta.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4805
Co-authored-by: Daniel Harvey <4729125+danieljharvey@users.noreply.github.com>
Co-authored-by: Philip Lykke Carlsen <358550+plcplc@users.noreply.github.com>
Co-authored-by: Rikin Kachhia <54616969+rikinsk@users.noreply.github.com>
GitOrigin-RevId: 10c5557319c7f106c251c308efee6c135edc3fcd
2022-06-21 10:10:10 +00:00
Philip Lykke Carlsen
6a15d3ea5f Fix zendesk-5146. Add check for empty columns in unique constraints g…
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4764
GitOrigin-RevId: 79e62f1ea2639ec81a48f5f71b58eaadf4fe6482
2022-06-17 07:49:20 +00:00
Vishnu Bharathi
f96b5462ff ci: tag release v2.8.0 and v2.8.0-pro.1
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4732
GitOrigin-RevId: cc258aff48eed06ab2b2086f71c5e5220f608038
2022-06-15 13:59:02 +00:00
Benoit Ranque
525361d3d2 escape sql underscores in LIKE expressions (close #8435)
PR-URL: https://github.com/hasura/graphql-engine-mono/pull/4596
GitOrigin-RevId: 48f143b8e6bbc60371656cc4bfbae1a5864f9921
2022-06-08 18:54:19 +00:00