From: | Anjali Arora <anjali_524(at)yahoo(dot)co(dot)in> |
---|---|
To: | Magnus Hagander <magnus(at)hagander(dot)net>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org> |
Subject: | Re: BUG #6372: Error while creating database with fsync parameter as on incase of CIFS |
Date: | 2012-01-09 05:13:55 |
Message-ID: | 1326086035.43672.YahooMailNeo@web95511.mail.in.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Hi Tom,
Thanks for the solution. CIFS worked with fsync flag by ingnoring EINVAL in copydir.c.
I tested fsync with 8.2.2 version of PostgreSQL, it worked fine without EINVAL patch. I wanted to know is something changed in version 9.0.4 of postgreSQL.
As fsync flag was not working with PostgreSQL version 9.0.4 without applying the patch.
Regards,
Anjali
________________________________
From: Magnus Hagander <magnus(at)hagander(dot)net>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: anjali_524(at)yahoo(dot)co(dot)in; pgsql-bugs(at)postgresql(dot)org
Sent: Tuesday, 3 January 2012 2:00 AM
Subject: Re: [BUGS] BUG #6372: Error while creating database with fsync parameter as on incase of CIFS
On Mon, Jan 2, 2012 at 21:28, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Magnus Hagander <magnus(at)hagander(dot)net> writes:
>> On Mon, Jan 2, 2012 at 21:14, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>> I'm wondering what's your basis for asserting we don't support CIFS in
>>> general? It's probably not terribly bulletproof, but any worse than NFS?
>
>> Yes, it is a lot worse than NFS from experience. I can't find a
>> reference to it anywhere now, but IIRC there are bigger issues - with
>> blocksizes, with syncing not properly, with write ordering.
>
> Hmm. I searched the list archives and couldn't find any previous
> discussion of such things, but that may just prove that no one thinks
> it's worth attempting.
Yeah, I don't think it was in our archives, it was somewhere else.
And as a disclaime r- it may have been about the win32 cifs *client*.
It was at the time just talking windows cifs client -> windows cifs
server.
> Anyway the immediate question is which errnos are reasonable for copydir
> to ignore. Just looking at the standard's description of fsync's error
> conditions:
>
> The fsync() function shall fail if:
> [EBADF]
> The fildes argument is not a valid descriptor.
> [EINTR]
> The fsync() function was interrupted by a signal.
> [EINVAL]
> The fildes argument does not refer to a file on which this operation is possible.
> [EIO]
> An I/O error occurred while reading from or writing to the file system.
>
> it seems like EINVAL is a considerably more reasonable thing to return
> than EBADF, if the filesystem is trying to tell you that it won't fsync
> a directory. So I'm a bit surprised this question hasn't come up for
> other filesystems.
Agreed. But do we really want to accept this with fsync=on? It
basically means fsync=maybe, no?
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Benjamin Henrion | 2012-01-09 09:55:41 | pg_archivecleanup outputs errors messages which are not error messages per se |
Previous Message | Craig Ringer | 2012-01-09 01:19:05 | Re: BUG #6388: I can not install postgre Sql |