@@ -1740,24 +1740,24 @@ func connectToPostgres(ctx context.Context, logger slog.Logger, driver string, d
17401740}
17411741
17421742// Ensure the PostgreSQL version is >=13.0.0!
1743- version ,err := sqlDB .QueryContext (ctx ,"SHOWserver_version ;" )
1743+ version ,err := sqlDB .QueryContext (ctx ,"SHOWserver_version_num ;" )
17441744if err != nil {
17451745return nil ,xerrors .Errorf ("get postgres version: %w" ,err )
17461746}
17471747if ! version .Next () {
17481748return nil ,xerrors .Errorf ("no rows returned for version select" )
17491749}
1750- var versionStr string
1751- err = version .Scan (& versionStr )
1750+ var versionNum int
1751+ err = version .Scan (& versionNum )
17521752if err != nil {
17531753return nil ,xerrors .Errorf ("scan version: %w" ,err )
17541754}
17551755_ = version .Close ()
1756- versionStr = strings . Split ( versionStr , " " )[ 0 ]
1757- if semver . Compare ( "v" + versionStr , "v13" ) < 0 {
1758- return nil ,xerrors .New ("PostgreSQL version must be v13.0.0 or higher!" )
1756+
1757+ if versionNum < 130000 {
1758+ return nil ,xerrors .Errorf ("PostgreSQL version must be v13.0.0 or higher! Got: %d" , versionNum )
17591759}
1760- logger .Debug (ctx ,"connected to postgresql" ,slog .F ("version" ,versionStr ))
1760+ logger .Debug (ctx ,"connected to postgresql" ,slog .F ("version" ,versionNum ))
17611761
17621762err = migrations .Up (sqlDB )
17631763if err != nil {