func ValidatePool(ctx context.Context, pool *db.Connection, hints string) error {
	if pool == nil {
		return ex.New("Cannot validate a nil connection pool")
	}

	err := poolOpen(pool, hints)
	if err != nil {
		return err
	}

	return verifyConnect(ctx, pool, hints)
}
// ValidatePool validates that
// - the connection string is valid
// - the selected `sql` driver can be used
// - a simple ping can be sent over the connection (is the DB reachable?)
//
// In the case of failure, this tries to diagnose the connection error and
// produce helpful tips on how to resolve.
ValidatePool validates that
- the connection string is valid
- the selected `sql` driver can be used
- a simple ping can be sent over the connection (is the DB reachable?)

In the case of failure, this tries to diagnose the connection error and
produce helpful tips on how to resolve.
// ValidatePool validates that // - the connection string is valid // - the selected ` sql ` driver can be used // - a simple ping can be sent over the connection ( is the DB reachable? ) // // In the case of failure this tries to diagnose the connection error and // produce helpful tips on how to resolve .
func ValidatePool(ctx context.Context, pool *db.Connection, hints string) error {
	if pool == nil {
		return ex.New("Cannot validate a nil connection pool")
	}
	err := poolOpen(pool, hints)
	if err != nil {
		return err
	}
	return verifyConnect(ctx, pool, hints)
}
func ValidatePool ( ctx context . Context , pool * db . Connection , hints string ) error { if pool == nil { return ex . New ( " " ) } err := poolOpen ( pool , hints ) if err != nil { return err } return verifyConnect ( ctx , pool , hints ) }
ValidatePool validates that
 the connection string is valid
 the selected `sql` driver can be used
 a simple ping can be sent over the connection (is the DB reachable?)
ValidatePool validates that the connection string is valid the selected ` sql ` driver can be used a simple ping can be sent over the connection ( is the DB reachable? )