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

Remote Joins: Create relationships across database and remote schemas #2395

Closed
wants to merge 284 commits into from

Conversation

wawhal
Copy link
Contributor

@wawhal wawhal commented Jun 18, 2019

This is a stale PR. Checkout #2392

chrisdone and others added 30 commits June 11, 2019 11:24
…emote_rel_input_types

Update schema cache with remote rel input types
…phase

Remote relationship generation phase
Running http server on 127.0.0.1:5000
================================================= test session starts =================================================
platform linux -- Python 3.5.3, pytest-4.6.2, py-1.8.0, pluggy-0.12.0 -- /usr/bin/python3
cachedir: .pytest_cache
rootdir: /home/chris/Work/hasura/graphql-engine/server/tests-py, inifile: pytest.ini
plugins: forked-1.0.2, xdist-1.28.0
[gw0] linux Python 3.5.3 cwd: /home/chris/Work/hasura/graphql-engine/server/tests-py
[gw0] Python 3.5.3 (default, Sep 27 2018, 17:25:39)  -- [GCC 6.3.0 20170516]
gw0 [6]
scheduling tests via LoadFileScheduling

test_remotes.py::TestTopLevelMixedFields::test_create_valid[http]
[gw0] [ 16%] PASSED test_remotes.py::TestTopLevelMixedFields::test_create_valid[http]
test_remotes.py::TestTopLevelMixedFields::test_create_valid[websocket]
[gw0] [ 33%] PASSED test_remotes.py::TestTopLevelMixedFields::test_create_valid[websocket]
test_remotes.py::TestTopLevelMixedFields::test_generation[http]
[gw0] [ 50%] PASSED test_remotes.py::TestTopLevelMixedFields::test_generation[http]
test_remotes.py::TestTopLevelMixedFields::test_generation[websocket]
[gw0] [ 66%] PASSED test_remotes.py::TestTopLevelMixedFields::test_generation[websocket]
test_remotes.py::TestTopLevelMixedFields::test_create_invalid[http]
[gw0] [ 83%] PASSED test_remotes.py::TestTopLevelMixedFields::test_create_invalid[http]
test_remotes.py::TestTopLevelMixedFields::test_create_invalid[websocket]
[gw0] [100%] PASSED test_remotes.py::TestTopLevelMixedFields::test_create_invalid[websocket]

================================================== warnings summary ===================================================
/usr/local/lib/python3.5/dist-packages/sqlalchemy/util/langhelpers.py:225
  /usr/local/lib/python3.5/dist-packages/sqlalchemy/util/langhelpers.py:225: SADeprecationWarning: The 'postgres' dialect name has been renamed to 'postgresql'
    loader = self.auto_fn(name)

-- Docs: https://docs.pytest.org/en/latest/warnings.html
======================================== 6 passed, 1 warnings in 9.24 seconds =========================================
@wawhal
Copy link
Contributor Author

wawhal commented Oct 18, 2019

/heroku deploy

@hasura-bot
Copy link
Contributor

Review app for commit 226d66d deployed to Heroku: https://hge-ci-pull-2395.herokuapp.com
Docker image for server: hasura/graphql-engine:pull2395-226d66d5

@wawhal
Copy link
Contributor Author

wawhal commented Oct 29, 2019

/heroku deploy

@hasura-bot
Copy link
Contributor

Review app for commit 7ea7f82 deployed to Heroku: https://hge-ci-pull-2395.herokuapp.com
Docker image for server: hasura/graphql-engine:pull2395-7ea7f82c

@c19
Copy link

c19 commented Nov 12, 2019

Where can I donwload matched version of hasura cli?
Can't find on docker hub.

@niklabh
Copy link

niklabh commented Dec 12, 2019

Where can we get version which applies migrations automatically

@webdeb
Copy link
Contributor

webdeb commented Jan 30, 2020

Wow, here is happening some massive work. I guess I also saw a lot of improvements/refactorings here.

I am just afraid, that the mass of changes will take a very huge amount of time to review. Guys, any idea about the timeline here, when do you expect remote relationships to land? Thank you

@webdeb
Copy link
Contributor

webdeb commented Jan 30, 2020

@wawhal it is not possible to use this preview container with an existing 1.0.0 instance.
The error is something like: Cannot use a version less then the previous.. Is it possible to tag this preview with a version >1.0.0 ? Thank you

rakeshkky and others added 6 commits February 18, 2020 20:16
Limitations:-

-> Mixing of top level fields with remote schema and postgres queries
   is not allowed (currently enforced in master)
-> Remote joins are not possible via websockets.

Resolve Conflicts:
	.circleci/server-builder.dockerfile
	cli/commands/migrate_test.go
	scripts/dev.sh
	server/Makefile
	server/graphql-engine.cabal
	server/src-lib/Data/Aeson/Ordered.hs
	server/src-lib/Hasura/Db.hs
	server/src-lib/Hasura/EncJSON.hs
	server/src-lib/Hasura/GraphQL/Execute.hs
	server/src-lib/Hasura/GraphQL/Explain.hs
	server/src-lib/Hasura/GraphQL/RemoteServer.hs
	server/src-lib/Hasura/GraphQL/Resolve/BoolExp.hs
	server/src-lib/Hasura/GraphQL/Resolve/Context.hs
	server/src-lib/Hasura/GraphQL/Resolve/Select.hs
	server/src-lib/Hasura/GraphQL/Resolve/Types.hs
	server/src-lib/Hasura/GraphQL/Schema.hs
	server/src-lib/Hasura/GraphQL/Schema/BoolExp.hs
	server/src-lib/Hasura/GraphQL/Schema/Common.hs
	server/src-lib/Hasura/GraphQL/Schema/OrderBy.hs
	server/src-lib/Hasura/GraphQL/Schema/Select.hs
	server/src-lib/Hasura/GraphQL/Transport/HTTP.hs
	server/src-lib/Hasura/GraphQL/Transport/WebSocket.hs
	server/src-lib/Hasura/GraphQL/Utils.hs
	server/src-lib/Hasura/GraphQL/Validate/Types.hs
	server/src-lib/Hasura/Prelude.hs
	server/src-lib/Hasura/RQL/DDL/Metadata.hs
	server/src-lib/Hasura/RQL/DDL/Relationship.hs
	server/src-lib/Hasura/RQL/DDL/Relationship/Types.hs
	server/src-lib/Hasura/RQL/DDL/RemoteSchema.hs
	server/src-lib/Hasura/RQL/DDL/Schema/Cache.hs
	server/src-lib/Hasura/RQL/DDL/Schema/Table.hs
	server/src-lib/Hasura/RQL/DML/Select.hs
	server/src-lib/Hasura/RQL/DML/Select/Internal.hs
	server/src-lib/Hasura/RQL/GBoolExp.hs
	server/src-lib/Hasura/RQL/Types.hs
	server/src-lib/Hasura/RQL/Types/Catalog.hs
	server/src-lib/Hasura/RQL/Types/Metadata.hs
	server/src-lib/Hasura/RQL/Types/RemoteSchema.hs
	server/src-lib/Hasura/RQL/Types/SchemaCache.hs
	server/src-lib/Hasura/RQL/Types/SchemaCacheTypes.hs
	server/src-lib/Hasura/SQL/Types.hs
	server/src-lib/Hasura/Server/Migrate/Version.hs
	server/src-lib/Hasura/Server/Query.hs
	server/src-lib/Hasura/Server/Telemetry.hs
	server/src-rsr/catalog_metadata.sql
	server/src-rsr/hdb_metadata.yaml
	server/src-rsr/migrations/25_to_26.sql
	server/tests-py/queries/v1/metadata/clear_metadata.yaml
	server/tests-py/queries/v1/metadata/export_metadata.yaml
	server/tests-py/validate.py
Resolve Conflicts:
	server/src-lib/Hasura/Server/Migrate/Version.hs
@joni7777
Copy link

Any updates on when to expect this to be delivered? Really need this amazing feature!

Thanks

@weyert
Copy link

weyert commented Apr 16, 2020

Looking forward to this feature :)

@picosam
Copy link

picosam commented Apr 17, 2020

@tirumaraiselvan how will this change (if at all) now that Actions support queries as well?

@weyert
Copy link

weyert commented Apr 24, 2020

Any chance master can be merged into this PR?

@ElixirMike
Copy link

Is this close to being ready for release? Any timeframe you can provide?

@wawhal wawhal closed this May 22, 2020
@hasura-bot
Copy link
Contributor

Review app https://hge-ci-pull-2395.herokuapp.com is deleted

@tirumaraiselvan
Copy link
Contributor

Remote Joins has been merged in #2392

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c/console Related to console
Projects
None yet
Development

Successfully merging this pull request may close these issues.