Hi Serge,

On Mon, Jun 21, 2010 at 10:19:13AM -0600, Serge Dubrouski wrote:
> Hello -
> 
> Some users reported a need for this patch to cover the situation with
> non-default unix socket directory in PostgreSQL configuration.

Why not set OCF_RESKEY_socketdir_default=/var/run/postgresql (or
whatever is its standard location)? I don't see how things could
go wrong with that.

BTW, how comes that nobody complained about this before? I
understand that cleaning up all directories under /var/run is in
LSB.

Cheers,

Dejan

> -- 
> Serge Dubrouski.

> --- a/heartbeat/pgsql 2010-06-21 09:41:06.000000000 -0600
> +++ b/heartbeat/pgsql 2010-06-21 10:03:04.000000000 -0600
> @@ -27,6 +27,7 @@
>  OCF_RESKEY_start_opt_default=""
>  OCF_RESKEY_pgdb_default=template1
>  OCF_RESKEY_logfile_default=/dev/null
> +OCF_RESKEY_socketdir_default=""
>  OCF_RESKEY_stop_escalate_default=30
>  
>  : ${OCF_RESKEY_pgctl=${OCF_RESKEY_pgctl_default}}
> @@ -39,6 +40,7 @@
>  : ${OCF_RESKEY_start_opt=${OCF_RESKEY_start_opt_default}}
>  : ${OCF_RESKEY_pgdb=${OCF_RESKEY_pgdb_default}}
>  : ${OCF_RESKEY_logfile=${OCF_RESKEY_logfile_default}}
> +: ${OCF_RESKEY_socketdir=${OCF_RESKEY_socketdir_default}}
>  : ${OCF_RESKEY_stop_escalate=${OCF_RESKEY_stop_escalate_default}}
>  
>  usage() {
> @@ -166,6 +168,14 @@
>  <content type="string" default="${OCF_RESKEY_logfile_default}" />
>  </parameter>
>  
> +<parameter name="socketdir" unique="0" required="0">
> +<longdesc lang="en">
> +Unix socket directory for PostgeSQL
> +</longdesc>
> +<shortdesc lang="en">socketdir</shortdesc>
> +<content type="string" default="${OCF_RESKEY_socketdir_default}" />
> +</parameter>
> +
>  <parameter name="stop_escalate" unique="0" required="0">
>  <longdesc lang="en">
>  Number of shutdown retries (using -m fast) before resorting to -m immediate
> @@ -238,6 +248,11 @@
>          ocf_log err "PostgreSQL can't write to the log file: 
> $OCF_RESKEY_logfile"
>       return $OCF_ERR_GENERIC
>      fi
> +    # Check if we need to create a socket directory
> +    if [ -n "$OCF_RESKEY_socketdir" ]
> +    then
> +        check_socket_dir $OCF_RESKEY_socketdir
> +    fi
>  
>      # Set options passed to pg_ctl
>      pgctl_options="$OCF_RESKEY_ctl_opt -D $OCF_RESKEY_pgdata -l 
> $OCF_RESKEY_logfile"
> @@ -419,6 +434,17 @@
>      return 0
>  }
>  
> +# Check socket directory
> +check_socket_dir() {
> +    if [ ! -d "$1" ]
> +    then
> +        mkdir $1
> +    fi
> +    
> +    chmod 2775 $1
> +    chown $OCF_RESKEY_pgdba:$(getent passwd $OCF_RESKEY_pgdba | cut -d ":" 
> -f 4) $1
> +}
> +
>  #
>  #   'main' starts here...
>  #

> _______________________________________________________
> Linux-HA-Dev: [email protected]
> http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
> Home Page: http://linux-ha.org/

_______________________________________________________
Linux-HA-Dev: [email protected]
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/

Reply via email to