in dbconn/version.go [33:46]
func InitializeVersion(dbconn *DBConn) (dbversion GPDBVersion, err error) {
err = dbconn.Get(&dbversion, "SELECT pg_catalog.version() AS versionstring")
if err != nil {
return
}
versionStart := strings.Index(dbversion.VersionString, "(Greenplum Database ") + len("(Greenplum Database ")
versionEnd := strings.Index(dbversion.VersionString, ")")
dbversion.VersionString = dbversion.VersionString[versionStart:versionEnd]
pattern := regexp.MustCompile(`\d+\.\d+\.\d+`)
threeDigitVersion := pattern.FindStringSubmatch(dbversion.VersionString)[0]
dbversion.SemVer, err = semver.Make(threeDigitVersion)
return
}