Hasura
hasura.io · Backend platform
GraphQL engine that serves instant APIs over databases.
76 items · 77 source threads · 2 source types · updated 2024-05
No items match these filters.
Pain points 32
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Memory leak and out-of-memory crashes since v2.19 An on-premises deployment sees memory leaks and OOM kills on versions 2.19 and later, including the latest, while v2.8.4 behaved correctly. Affects: on-premises operators |
Reliability & bugs | Causes churn | 2 sources | 2023-04 |
| ||||
| Separate Hasura instance needed per database when schemas share table names A team with many databases that share an identical table structure must run one Hasura instance per database because table names conflict and cannot be renamed, adding maintenance and routing work. Affects: team exposing a public API over SQL Server databases for enterprise customers |
Self-hosting & upgrades | Causes churn | 2 sources | 2021-06 |
| ||||
| Docker image does not run on Apple Silicon Macs The Hasura container is built for amd64 and gives a platform mismatch warning on Mac M1 Docker, so the requester asks for an arm64 build. Affects: developers on Apple Silicon Macs |
Self-hosting & upgrades | Blocks work | 2 sources | 2021-01 |
| ||||
| No support for the Relay protocol Users who need the Relay protocol have to choose another tool because Hasura did not support it at the time. Affects: teams using Relay |
API & developer experience | Blocks work | 2 sources | 2020-06 |
| ||||
| NOT NULL columns are not marked required in the generated schema Non-nullable database columns are not exposed as required fields in the GraphQL schema, which the user finds surprising. |
API & developer experience | Blocks work | 2 sources | 2019-04 |
| ||||
| New Pro plan pricing is more than 10x the old Standard plan Locked: summary and evidence are part of Sprint Pass and Pro |
Pricing & plans | Causes churn | 1 source | 2023-02 |
| No sensible entry price makes Hasura Cloud hard to propose to a company Locked: summary and evidence are part of Sprint Pass and Pro |
Pricing & plans | Causes churn | 1 source | 2023-02 |
| Permission system hits limits quickly, especially across relationships Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Causes churn | 1 source | 2020-04 |
| CockroachDB support stalled because Hasura relies on Postgres triggers Locked: summary and evidence are part of Sprint Pass and Pro |
Integrations | Blocks work | 1 source | 2021-10 |
| Seed export fails with Postgres 14 because pg_dump is version 13 Locked: summary and evidence are part of Sprint Pass and Pro |
Self-hosting & upgrades | Blocks work | 1 source | 2021-10 |
| Cannot create an array relationship from an array of ids Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2021-04 |
| Unsigned JWTs from the Firebase auth emulator are rejected locally Locked: summary and evidence are part of Sprint Pass and Pro |
Setup & onboarding | Blocks work | 1 source | 2020-12 |
| Actions cannot return nested custom object types Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2020-05 |
| Action handlers have no built-in security layer Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2020-05 |
| WebSocket subscriptions fail with invalid timestamp errors and repeated reconnects Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2020-04 |
| Partial unique indexes missing from the on_conflict constraint enum Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2020-01 |
| Migrations cannot create indexes concurrently because they run in a transaction Locked: summary and evidence are part of Sprint Pass and Pro |
Data export & migration | Blocks work | 1 source | 2019-09 |
| Hasura console cannot be reached when the CLI runs in a Docker container Locked: summary and evidence are part of Sprint Pass and Pro |
Self-hosting & upgrades | Blocks work | 1 source | 2019-09 |
| Postgres RAISE EXCEPTION messages are not shown to the client Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-07 |
| File uploads through a remote schema fail with an invalid json error Locked: summary and evidence are part of Sprint Pass and Pro |
Integrations | Blocks work | 1 source | 2019-06 |
| JWT check fails on one second of clock skew Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-05 |
| Custom JWT claims reject array values Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-03 |
| AGPL license blocks bundling the engine as a dependency Locked: summary and evidence are part of Sprint Pass and Pro |
Pricing & plans | Blocks work | 1 source | 2019-01 |
| Ordering by an aggregate ignores the filter applied to that aggregate Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2019-01 |
| Console UI is clumsy for bulk permission edits; schema testing is cumbersome Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Annoyance | 1 source | 2022-06 |
| Monitoring service is only available on Hasura Cloud, not the open-source version Locked: summary and evidence are part of Sprint Pass and Pro |
Reporting & analytics | Annoyance | 1 source | 2022-02 |
| Authentication for roles beyond user and admin is hard to implement Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Annoyance | 1 source | 2021-06 |
| Auth0 setup for a React Native app is cumbersome and docs are outdated Locked: summary and evidence are part of Sprint Pass and Pro |
Documentation | Annoyance | 1 source | 2021-06 |
| Role-based permissions are not defined in code Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Annoyance | 1 source | 2020-03 |
| Queries return arrays even when a single object is wanted Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2019-04 |
| Postgres array inputs must be passed as string literals Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2018-09 |
| Materialized views are not listed in the console Locked: summary and evidence are part of Sprint Pass and Pro |
UI & usability | Annoyance | 1 source | 2018-07 |
Feature requests 40
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Group-by aggregations needed without writing SQL functions The user wants built-in group-by aggregation support, because today each such query requires writing a custom database function, which they find tedious. Affects: heavy Hasura user |
API & developer experience | Blocks work | 2 sources | 2022-05 |
| ||||
| Allow filtering by computed fields Computed fields such as a full name cannot be used in where filters, and the requester wants that to work. |
API & developer experience | Blocks work | 2 sources | 2020-04 |
| ||||
| Retry remote schema introspection automatically on failure If a remote schema server is not up when metadata is applied, Hasura starts with an inconsistency that must be fixed manually in the console. Affects: teams deploying metadata and services together in CI/CD |
Reliability & bugs | Blocks work | 1 source | 2022-04 |
| ||||
| A hobby-priced cloud tier is missing for small projects and EU hosting The commenter wanted to move all instances to Hasura Cloud but could not justify the monthly plan for small side projects, mainly to get a European region with lower latency. Affects: freelancer running weekend projects and small client work |
Pricing & plans | Blocks work | 1 source | 2021-10 |
| ||||
| Prefix and namespace support for sources and remote schemas Adding sources with conflicting table names requires a way to prefix types and root fields or place them under a namespace. |
Integrations | Blocks work | 1 source | 2020-09 |
| ||||
| SQL transaction management across multiple requests Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2020-09 |
| Aggregates are missing from the Relay API Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2020-08 |
| Let actions reuse types already in the schema Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2020-06 |
| Read secrets from Docker secrets files instead of environment variables Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2020-03 |
| Permission checks based only on session variables Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2020-01 |
| Permission rules should compare columns across tables Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-12 |
| Separate permissions for primary-key lookups and list queries Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-11 |
| Apollo Federation support to run Hasura behind an Apollo gateway Locked: summary and evidence are part of Sprint Pass and Pro |
Integrations | Blocks work | 1 source | 2019-10 |
| Update many rows with different values in one mutation Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-08 |
| SQL functions such as current_date in row select permissions Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-07 |
| Polymorphic relations with union or interface types Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-06 |
| Support multiple JWT secrets in one Hasura server Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-05 |
| Rate limiting and query cost scoring Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-05 |
| Dead letter queue for failed event trigger webhooks Locked: summary and evidence are part of Sprint Pass and Pro |
Reliability & bugs | Blocks work | 1 source | 2019-04 |
| Separate read and write database connections for Aurora replicas Locked: summary and evidence are part of Sprint Pass and Pro |
Performance | Blocks work | 1 source | 2019-03 |
| Allow whitelisted session variables via HTTP headers Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2019-02 |
| Nested updates are missing although nested inserts exist Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-02 |
| Filter and order by aggregate values in where clauses Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-01 |
| CLI command to track all tables and relationships Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-01 |
| A pre-write event trigger for custom validation Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Blocks work | 1 source | 2019-01 |
| No ARM Docker image for a Raspberry Pi production cluster Locked: summary and evidence are part of Sprint Pass and Pro |
Self-hosting & upgrades | Blocks work | 1 source | 2018-12 |
| Encrypt selected fields at rest Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2018-12 |
| Use relationship or view data when creating event triggers Locked: summary and evidence are part of Sprint Pass and Pro |
Integrations | Blocks work | 1 source | 2018-12 |
| Support multiple roles per user and per query Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2018-10 |
| Persisted queries to hide raw queries and the schema Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Blocks work | 1 source | 2018-08 |
| Query caching missing from the open-source edition Locked: summary and evidence are part of Sprint Pass and Pro |
Performance | Annoyance | 1 source | 2022-05 |
| Read-only mode for the deployed console Locked: summary and evidence are part of Sprint Pass and Pro |
Permissions & security | Annoyance | 1 source | 2020-07 |
| Map UUID columns to the standard GraphQL ID type Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2019-12 |
| Pause event triggers without dropping them Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2019-11 |
| Global naming convention for generated schema names Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2019-11 |
| Use session variables inside GraphQL queries Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2019-08 |
| Sort results by a path inside a JSON column Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2019-07 |
| String templates for event trigger and remote schema webhook URLs Locked: summary and evidence are part of Sprint Pass and Pro |
Customization | Annoyance | 1 source | 2019-07 |
| Conditional event triggers with boolean filters Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2018-12 |
| Look up a single object by any unique key Locked: summary and evidence are part of Sprint Pass and Pro |
API & developer experience | Annoyance | 1 source | 2018-09 |
Workarounds 2
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Organization and team based multi-tenant permissions are hard to model Modeling organization, team or multi-tenant permissions was one of the biggest pain points; the usual advice is to filter on a session variable, and a community member found a way to avoid needing one. Affects: teams building multi-tenant apps |
Permissions & security | Blocks work | 1 source | 2020-04 |
| ||||
| Recursive CTEs, cross-database joins and large counts needed workarounds On a large mature Postgres database Hasura scaled well, but recursive queries, joins across databases and very large counts required workarounds. Affects: team running Hasura over a 1 TB+ database with thousands of concurrent users |
Performance | Annoyance | 1 source | 2022-04 |
| ||||
Switching reasons 2
| Item | Area | Severity | Support | Last seen |
|---|---|---|---|---|
| Team moved from GraphQL and Hasura back to REST endpoints Hasura helped a team iterate quickly early on, but once the product was better defined they switched back to REST and synced frontend and backend types with helper code. Affects: product engineering team |
API & developer experience | Causes churn | 1 source | 2024-05 |
| ||||
| Prefers Supabase because writing SQL directly beats a GraphQL indirection A developer who used Hasura and found it good now likes Supabase more, since writing SQL directly is easier than going through GraphQL. |
API & developer experience | Blocks work | 1 source | 2020-09 |
| ||||