Export: support export in postgresql (#58553)

This commit is contained in:
Ryan McKinley
2022-11-10 14:16:31 -05:00
committed by GitHub
parent 47055561ec
commit f92d978386
13 changed files with 109 additions and 45 deletions
+8 -8
View File
@@ -3,7 +3,6 @@ package export
import (
"path"
"strconv"
"strings"
"github.com/grafana/grafana-plugin-sdk-go/data"
"github.com/grafana/grafana-plugin-sdk-go/data/sqlutil"
@@ -12,6 +11,8 @@ import (
)
func dumpAuthTables(helper *commitHelper, job *gitExportJob) error {
isMySQL := isMySQLEngine(job.sql)
return job.sql.WithDbSession(helper.ctx, func(sess *db.Session) error {
commit := commitOptions{
comment: "auth tables dump",
@@ -27,11 +28,11 @@ func dumpAuthTables(helper *commitHelper, job *gitExportJob) error {
dump := []statsTables{
{
table: "user",
sql: `
SELECT user.*, org_user.role
FROM user
JOIN org_user ON user.id = org_user.user_id
WHERE org_user.org_id =` + strconv.FormatInt(helper.orgID, 10),
sql: removeQuotesFromQuery(`
SELECT "user".*, org_user.role
FROM "user"
JOIN org_user ON "user".id = org_user.user_id
WHERE org_user.org_id =`+strconv.FormatInt(helper.orgID, 10), isMySQL),
converters: []sqlutil.Converter{{Dynamic: true}},
drop: []string{
"id", "version",
@@ -74,7 +75,6 @@ func dumpAuthTables(helper *commitHelper, job *gitExportJob) error {
WHERE org_user.org_id =` + strconv.FormatInt(helper.orgID, 10),
},
{table: "team"},
{table: "team_group"},
{table: "team_role"},
{table: "team_member"},
{table: "temp_user"},
@@ -99,7 +99,7 @@ func dumpAuthTables(helper *commitHelper, job *gitExportJob) error {
rows, err := sess.DB().QueryContext(helper.ctx, auth.sql)
if err != nil {
if strings.HasPrefix(err.Error(), "no such table") {
if isTableNotExistsError(err) {
continue
}
return err