This is an automated email from the ASF dual-hosted git repository.
hugh pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/superset.git
The following commit(s) were added to refs/heads/master by this push:
new 40861b3 fix: check if owners are actually being updated in `PUT
/datasets/<id>` (#16941)
40861b3 is described below
commit 40861b3db3fc0a2ad8cd9c270d84e82eb104aa24
Author: Hugh A. Miles II <[email protected]>
AuthorDate: Wed Oct 6 11:26:02 2021 -0700
fix: check if owners are actually being updated in `PUT /datasets/<id>`
(#16941)
* check if owners are actually being updated
* move logic to FE
* fix
* fix
---
.../src/SqlLab/components/ResultSet/index.tsx | 22 ++++++++++++++++++----
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/superset-frontend/src/SqlLab/components/ResultSet/index.tsx
b/superset-frontend/src/SqlLab/components/ResultSet/index.tsx
index ec65d6e..7da6bce 100644
--- a/superset-frontend/src/SqlLab/components/ResultSet/index.tsx
+++ b/superset-frontend/src/SqlLab/components/ResultSet/index.tsx
@@ -69,9 +69,17 @@ enum LIMITING_FACTOR {
const LOADING_STYLES: CSSProperties = { position: 'relative', minHeight: 100 };
+interface DatasetOwner {
+ first_name: string;
+ id: number;
+ last_name: string;
+ username: string;
+}
+
interface DatasetOptionAutocomplete {
value: string;
datasetId: number;
+ owners: [DatasetOwner];
}
interface ResultSetProps {
@@ -142,6 +150,7 @@ const updateDataset = async (
datasetId: number,
sql: string,
columns: Array<Record<string, any>>,
+ owners: [number],
overrideColumns: boolean,
) => {
const endpoint =
`api/v1/dataset/${datasetId}?override_columns=${overrideColumns}`;
@@ -149,6 +158,7 @@ const updateDataset = async (
const body = JSON.stringify({
sql,
columns,
+ owners,
});
const data: JsonResponse = await SupersetClient.put({
@@ -269,6 +279,7 @@ export default class ResultSet extends React.PureComponent<
datasetToOverwrite.datasetId,
sql,
results.selected_columns.map(d => ({ column_name: d.name })),
+ datasetToOverwrite.owners.map((o: DatasetOwner) => o.id),
true,
);
@@ -405,10 +416,13 @@ export default class ResultSet extends
React.PureComponent<
endpoint: '/api/v1/dataset',
})(`q=${queryParams}`);
- return response.result.map((r: { table_name: string; id: number }) => ({
- value: r.table_name,
- datasetId: r.id,
- }));
+ return response.result.map(
+ (r: { table_name: string; id: number; owners: [DatasetOwner] }) => ({
+ value: r.table_name,
+ datasetId: r.id,
+ owners: r.owners,
+ }),
+ );
}
return null;