-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Add AddtionalProperties for DataConnector #38644
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
base: release-app-Microsoft.App-stable/2026-01-01
Are you sure you want to change the base?
Add AddtionalProperties for DataConnector #38644
Conversation
Next Steps to MergeNext steps that must be taken to merge this PR:
Comment generated by summarize-checks workflow run. |
7d5ec99 to
e868819
Compare
e868819 to
826cd62
Compare
| "modelAsString": true | ||
| } | ||
| }, | ||
| "extendedProperties": { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a collection of key value pairs without concrete schema. Also, it lacks enough description and examples. What are these key value pairs? Can you define proper schema for them?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@gary-x-li, actually we need a property who is a Dictionary<string, object>. but addtionalProperties is not recommended by swagger. Is there any other way to define such a dictionary in swagger?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
More explanation:
- extendedproperties in Data connector represent various additional option highly dependent on the specific data connector being used. It's common industrial practice to make the data connector protocol extensible, like JDBC, ODBC...
- all the elements to be treated as an atomic unit, non-ordered.
- the property set represents a simplistic array with a very small number of elements that are not expected to grow drastically over time and would never have paging requirements.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can you please do/answer the followings?
- Add or modify example files to show what extended properties look like for at least two different data connectors. That will make it clearer to the reviewers and the customers.
- How would customers know what the valid set of extended properties for each data connector are? Are they widely known as industrial practice? Consider expanding the description to give customers better idea.
- We do allow additionalProperties if the properties are simply passing through your service and you don't control nor validate them. (e.g. tags for Azure resources or labels for Kubernetes). If that's your case, please do use additionalProperties and suppress the validation error. We will approve the suppression if it's justified.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Have updated the example files and this is a pass-through property. our RP doesn't do any validation on this property. So, I just changed it to dictionary for better understanding.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
3rd point is not yet addressed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In addition, I also don't see 1st point (adding example files) and 2nd point (change description to indicate where to get the valid set of properties).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry, I pushed the latest change to another branch. Now it has the latest change. but the validation shows "the type is invalid. expected object, but found string, array". Actually, we cannot specify the value type, the value could be string or array. That's why we used object. @gary-x-li , do you know how to solve such issue?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@LaylaLiu-gmail I'm not sure. You can post your question in this channel; or search similar examples in the repo.
API Change CheckAPIView identified API level changes in this PR and created the following API reviews
|
Choose a PR Template
Switch to "Preview" on this description then select one of the choices below.
Click here to open a PR for a Data Plane API.
Click here to open a PR for a Control Plane (ARM) API.
Click here to open a PR for only SDK configuration.