Extract binary_parameters handle logic into public methods for external use (#20043)

Этот коммит содержится в:
Miguel de la Cruz
2022-04-21 15:59:54 +02:00
коммит произвёл GitHub
родитель 2576556c8b
Коммит 6608f3a9ca
6 изменённых файлов: 21 добавлений и 17 удалений

Просмотреть файл

@@ -9,7 +9,6 @@ import (
dbsql "database/sql"
"fmt"
"log"
"net/url"
"path/filepath"
"strconv"
"strings"
@@ -338,22 +337,13 @@ func (ss *SqlStore) computeBinaryParam() (bool, error) {
return false, nil
}
url, err := url.Parse(*ss.settings.DataSource)
if err != nil {
return false, err
}
return url.Query().Get("binary_parameters") == "yes", nil
return DSNHasBinaryParam(*ss.settings.DataSource)
}
func (ss *SqlStore) IsBinaryParamEnabled() bool {
return ss.isBinaryParam
}
// AppendBinaryFlag updates the byte slice to work using binary_parameters=yes.
func (ss *SqlStore) AppendBinaryFlag(buf []byte) []byte {
return append([]byte{0x01}, buf...)
}
func (ss *SqlStore) getCurrentSchemaVersion() (string, error) {
var version string
err := ss.GetMasterX().Get(&version, "SELECT Value FROM Systems WHERE Name='Version'")