All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kelly Sauke <ksauke@fastenal.com>
To: LVM general discussion and development <linux-lvm@redhat.com>
Subject: Re: [linux-lvm] Creating snapshot causes processes hang?
Date: Tue, 01 Nov 2005 08:28:00 -0600	[thread overview]
Message-ID: <43677B70.2010305@fastenal.com> (raw)
In-Reply-To: <4366CE49.1000501@nttdata.co.jp>

Snapshots in RHEL 4 are broken.  We've had to move to veritas after Redhat told
us that they would not support snapshots in RHEL 4.

Satoshi Nagayasu wrote:
> Hi all,
> 
> I'm testing PostgreSQL(RDBMS) backup using LVM2 snapshot on RHEL4.
> 
> After creating a snapshot, some processes (kjournald,
> one PostgreSQL backend and others) go to iowait status,
> and they never come back. (see pid 8105 and 2973 in below)
> 
> In this situation, one PostgreSQL backend process is waiting
> in COMMIT processing(it generates fsync() on logical volume),
> and also kjournald is waiting something.
> 
> There is no kernel oops, and the processors are not used.
> 
> When I set an PostgreSQL option not to generate fsync
> on COMMIT, it looks work well. No process hangs.
> 
> I guess some race conditions is occured around kjournald.
> 
> Any comments and suggestions?
> 
> Thanks.
> ------------------------------------
> # uname -a
> Linux st17 2.6.9-5.ELsmp #1 SMP Wed Jan 5 19:30:39 EST 2005 i686 i686 i386 GNU/Linux
> # df
> Filesystem           1K-blocks      Used Available Use% Mounted on
> /dev/sda5             20161172   6717648  12419384  36% /
> /dev/sda1               202219     11423    180356   6% /boot
> none                   1037448         0   1037448   0% /dev/shm
> /dev/mapper/vg0-pgdata
>                        1032088    515532    464128  53% /pgdata
> # ps ax
>   PID TTY      STAT   TIME COMMAND
>     1 ?        S      0:00 init [3]
>     2 ?        S      0:00 [migration/0]
>     3 ?        SN     0:00 [ksoftirqd/0]
>     4 ?        S      0:00 [migration/1]
>     5 ?        SN     0:00 [ksoftirqd/1]
>     6 ?        S<     0:00 [events/0]
>     7 ?        S<     0:00 [events/1]
>     8 ?        S<     0:00 [khelper]
>     9 ?        S<     0:00 [kacpid]
>    30 ?        S<     0:00 [kblockd/0]
>    31 ?        S<     0:00 [kblockd/1]
>    44 ?        S<     0:00 [aio/0]
>    45 ?        S<     0:00 [aio/1]
>    32 ?        S      0:00 [khubd]
>    43 ?        S      0:11 [kswapd0]
>   118 ?        S      0:00 [kseriod]
>   186 ?        S      0:00 [scsi_eh_0]
>   201 ?        S      0:17 [kjournald]
>  1157 ?        S<s    0:00 udevd
>  1342 ?        S      0:00 [kjournald]
>  1761 ?        Ss     0:00 syslogd -m 0
>  1765 ?        Ss     0:00 klogd -x
>  1776 ?        Ss     0:00 irqbalance
>  1794 ?        Ss     0:00 portmap
>  1814 ?        Ss     0:00 rpc.statd
>  1913 ?        Ss     0:00 rpc.idmapd
>  1990 ?        Ss     0:00 /usr/sbin/acpid
>  2003 ?        Ss     0:00 cupsd
>  2042 ?        Ss     0:00 /usr/sbin/sshd
>  2116 ?        Ss     0:00 xinetd -stayalive -pidfile /var/run/xinetd.pid
>  2126 ?        Ss     0:00 gpm -m /dev/input/mice -t imps2
>  2169 ?        Ss     0:00 /usr/sbin/htt -retryonerror 0
>  2170 ?        S      0:00 htt_server -nodaemon
>  2182 ?        Ss     0:00 /usr/sbin/cannaserver -syslog -u canna
>  2233 ?        Ss     0:00 crond
>  2274 ?        Ss     0:00 xfs -droppriv -daemon
>  2293 ?        Ss     0:00 /usr/sbin/atd
>  2303 ?        Ssl    0:00 dbus-daemon-1 --system
>  2317 ?        Ss     0:00 cups-config-daemon
>  2328 ?        Ss     0:01 hald
>  2338 tty1     Ss+    0:00 /sbin/mingetty tty1
>  2339 tty2     Ss+    0:00 /sbin/mingetty tty2
>  2340 tty3     Ss+    0:00 /sbin/mingetty tty3
>  2341 tty4     Ss+    0:00 /sbin/mingetty tty4
>  2342 tty5     Ss+    0:00 /sbin/mingetty tty5
>  2343 tty6     Ss+    0:00 /sbin/mingetty tty6
>  2885 ?        Ss     0:00 sshd: snaga [priv]
>  2887 ?        S      0:00 sshd: snaga@pts/0
>  2888 pts/0    Ss     0:00 -bash
>  2908 ?        Ss     0:00 sshd: snaga [priv]
>  2910 ?        S      0:00 sshd: snaga@pts/1
>  2911 pts/1    Ss     0:00 -bash
>  2931 pts/1    S      0:00 su
>  2932 pts/1    S      0:00 bash
>  2973 ?        D      0:31 [kjournald]
>  2980 ?        S      0:54 [rpciod]
>  2981 ?        S      0:00 [lockd]
>  3016 pts/0    S      0:00 su
>  3017 pts/0    S      0:00 bash
>  3035 pts/0    S      0:00 su postgres
>  3036 pts/0    S      0:00 bash
>  7866 pts/0    S+     0:00 /bin/sh ./pgbench_lvm.sh
>  7906 pts/0    S+     0:00 /bin/sh ./pgbench_lvm.sh
>  7907 pts/0    S+     0:00 sed -e s/^/lvm:/
>  7915 pts/0    S+     0:00 /usr/local/pgsql81b3/bin/postmaster -D /pgdata/data
>  7917 pts/0    S+     0:03 postgres: writer process
>  7918 pts/0    S+     0:00 postgres: archiver process
>  7919 pts/0    S+     0:00 postgres: stats buffer process
>  7920 pts/0    S+     0:00 postgres: stats collector process
>  8015 ?        S      0:01 [pdflush]
>  8094 pts/0    S+     0:01 pgbench -s 10 -t 1000 -c 16 pgbench
>  8096 pts/0    S+     0:00 postgres: postgres pgbench [local] COMMIT
>  8097 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8098 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8099 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8100 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8101 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8102 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8103 pts/0    S+     0:00 postgres: postgres pgbench [local] COMMIT
>  8104 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8105 pts/0    D+     0:00 postgres: postgres pgbench [local] COMMIT
>  8106 pts/0    S+     0:00 postgres: postgres pgbench [local] COMMIT
>  8107 pts/0    S+     0:00 postgres: postgres pgbench [local] COMMIT
>  8108 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8109 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8110 pts/0    S+     0:00 postgres: postgres pgbench [local] UPDATE waiting
>  8111 pts/0    S+     0:00 postgres: postgres pgbench [local] COMMIT
>  8119 ?        S      0:00 [pdflush]
>  8147 ?        S<     0:00 [kcopyd]
>  8179 ?        S      0:00 [kjournald]
>  8188 pts/1    R+     0:00 ps ax
> # cat /etc/issue
> Red Hat Enterprise Linux ES release 4 (Nahant)
> Kernel \r on an \m
> 
> #
> ------------------------------------
> 

  reply	other threads:[~2005-11-01 14:28 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-01  2:09 [linux-lvm] Creating snapshot causes processes hang? Satoshi Nagayasu
2005-11-01 14:28 ` Kelly Sauke [this message]
2005-11-01 21:24   ` Mike Snitzer
2005-11-01 22:02     ` Kelly Sauke
     [not found] <20051101220316.6F44973980@hormel.redhat.com>
2005-11-01 23:20 ` James G. Sack (jim)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=43677B70.2010305@fastenal.com \
    --to=ksauke@fastenal.com \
    --cc=linux-lvm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.