Re: fsync and semctl errors with 8.1.5/win32 - Mailing list pgsql-bugs
From | Thomas H. |
---|---|
Subject | Re: fsync and semctl errors with 8.1.5/win32 |
Date | |
Msg-id | 00a601c71819$f98f0fe0$0201a8c0@iwing Whole thread Raw |
In response to | Re: fsync and semctl errors with 8.1.5/win32 ("Magnus Hagander" <mha@sollentuna.net>) |
Responses |
Re: fsync and semctl errors with 8.1.5/win32
|
List | pgsql-bugs |
>> Here's a few seconds of the log output (this has been going on for 10 >> mins as of this e-mail being sent): >> 2006-11-28 16:16:10 LOG: could not fsync segment 0 of relation >> 1663/16404/30267: Permission denied >> 2006-11-28 16:16:10 ERROR: storage sync failed on magnetic disk: >> Permission denied > >> Here's the FileMon output from the same seconds: >> 4:16:10 PM postgres.exe:3168 OPEN C:\Program >> Files\PostgreSQL\8.1\data\base\16404\30267 DELETE PEND Options: >> Open Access: 0012019F > > I still don't want to make mdsync() treat EACCES as an ignorable error. > However, in this situation we've got an infinite loop because the > checkpoint will never succeed and thus the bgwriter will never reach > smgrcloseall(), which seems to be what's needed to allow the deleted > file to die the real death. > > Perhaps a suitable workaround would be to make the bgwriter do > smgrcloseall in its error recovery path? That is > > /* > * Sleep at least 1 second after any error. A write error is likely > * to be repeated, and we don't want to be filling the error logs as > * fast as we can. > */ > pg_usleep(1000000L); > + > + /* Drop open files to allow deleted files to really go away */ > + smgrcloseall(); > } > > /* We can now handle ereport(ERROR) */ > PG_exception_stack = &local_sigjmp_buf; > > > Perhaps this should be #ifdef WIN32, although there's probably no harm > in doing it on Unixen too. Can someone test this idea? > in 8.2.0 the error messages changed a bit: 2006-12-05 03:47:12 [736] LOG: could not fsync segment 0 of relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:12 [736] ERROR: storage sync failed on magnetic disk: Permission denied 2006-12-05 03:47:13 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:14 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:15 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:16 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:17 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:18 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:19 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:20 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:21 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:22 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:23 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:24 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:25 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:26 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:27 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:28 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:29 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:30 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:31 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:32 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:47:33 [736] ERROR: could not open relation 1663/16692/2361629: Permission denied 2006-12-05 03:52:34 [736] LOG: could not fsync segment 0 of relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:34 [736] ERROR: storage sync failed on magnetic disk: Permission denied 2006-12-05 03:52:35 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:36 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:37 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:38 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:39 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:40 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied 2006-12-05 03:52:41 [736] ERROR: could not open relation 1663/16692/2361668: Permission denied ... and so on. - thomas
pgsql-bugs by date: