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

Reverse engineer Synapse Serverless SQL Pool and Dynamics 365 TDS Endpoint #29121

Closed
ErikEJ opened this issue Sep 16, 2022 · 4 comments · Fixed by #29122
Closed

Reverse engineer Synapse Serverless SQL Pool and Dynamics 365 TDS Endpoint #29121

ErikEJ opened this issue Sep 16, 2022 · 4 comments · Fixed by #29122
Assignees
Labels
area-scaffolding closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. community-contribution customer-reported type-enhancement
Milestone

Comments

@ErikEJ
Copy link
Contributor

ErikEJ commented Sep 16, 2022

Why

As a EF Core developer I would like to be able to use my familiar API to query a Synapse Server SQL Pool and Dynamics 365 TDS Endpoint and get the model generated for me by the EF Core tooling, so I can do read-only queries against theses data sources.

(This currently breaks with the EF Core tooling)

How

I recently enabled this in EF Core Power Tools, and can port my tweaks to SqlServerDatabasemodelFactory to the product, if this has any traction.

More info
Dynamics 365 CRM TDS Endpoint - EngineEdition = 1000

Azure Synapse Analytics Serverless SQL pool - EngineEdition = 11

@roji
Copy link
Member

roji commented Sep 16, 2022

@ErikEJ what kind of errors have you encountered, and what kind of fixes? I think that if it's a few tweaks to SqlServerDatabasemodelFactory (and not like a total redo or something) then there's no reason we wouldn't take it... If you already have some changes ready, submitting them as a PR would be best so we can get a sense of things.

@ErikEJ
Copy link
Contributor Author

ErikEJ commented Sep 16, 2022

Perfect - just wanted to find out if this was relevant before I created a PR.

It is some rephrased SQL + conditional processing to be more compatible with these "non-standard" / new engine editions - no total redo.

@ajcvickers
Copy link
Member

@ErikEJ Please create the PR for the main branch. We're closed down on EF7 work except for high impact bug fixes or other exceptions.

ErikEJ added a commit to ErikEJ/EntityFramework that referenced this issue Sep 16, 2022
…Synapse Serverless SQL Pool SKUs for query only operations

Index query breaks on TDS endpoint, but we can just skip it

sys.views does not exist on TDS endpoint

No temporal, memory optimized or sequences in these engines

Rephrase of FK query due to lack of schema functions on TDS endpoint

Smoke tested against both engines with a CRM schema

fixes dotnet#29121
@ajcvickers ajcvickers added this to the 8.0.0 milestone Sep 16, 2022
roji pushed a commit that referenced this issue Nov 20, 2022
…ss SQL Pool (#29122)

Add support for reverse engineering of Dynamics CRM TDS endpoint and Synapse Serverless SQL Pool SKUs for query only operations

Fixes #29121
@ErikEJ
Copy link
Contributor Author

ErikEJ commented Nov 22, 2022

Tag community contribution??

@ajcvickers ajcvickers added the closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. label Dec 6, 2022
@ajcvickers ajcvickers modified the milestones: 8.0.0, 8.0.0-preview1 Jan 29, 2023
@bricelam bricelam removed their assignment Aug 10, 2023
@ajcvickers ajcvickers modified the milestones: 8.0.0-preview1, 8.0.0 Nov 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-scaffolding closed-fixed The issue has been fixed and is/will be included in the release indicated by the issue milestone. community-contribution customer-reported type-enhancement
Projects
None yet
4 participants