Обсуждение: Re: [PATCHES] Win32 Event log
> -----Original Message----- > From: pgsql-hackers-win32-owner@postgresql.org > [mailto:pgsql-hackers-win32-owner@postgresql.org] On Behalf > Of Bruce Momjian > Sent: 12 August 2004 21:50 > To: Andrew Dunstan > Cc: pgsql-hackers-win32 > Subject: Re: [pgsql-hackers-win32] [PATCHES] Win32 Event log > > I guess I am waiting for someone to report it doesn't work on > NT4 SP4. > How do we know it doesn't work? OK, a little more research; NT4 with SP4 can read and write NTFS5 volumes. It *cannot* use many of the other NTFS5 features, including reparse points which Andreas needed to implement symlinks. (http://www.serverwatch.com/tutorials/article.php/10825_2239651_3 for further analyis). Therefore, attempts to create tablespaces will probably cause a crash. In addition, the installer uses CreateProcessWithLogonW() to run initdb at the service user. This API is not available on NT4, and although there are others that *should* do the same job, Magnus failed could get them to work despite us both trying to figure it out for some time. As 99.99% of Windows users will use the installer, I think this is perhaps the most important reason to say that NT4 is in the 'at your own risk' category. Regards, Dave.
Dave Page wrote: > > > > -----Original Message----- > > From: pgsql-hackers-win32-owner@postgresql.org > > [mailto:pgsql-hackers-win32-owner@postgresql.org] On Behalf > > Of Bruce Momjian > > Sent: 12 August 2004 21:50 > > To: Andrew Dunstan > > Cc: pgsql-hackers-win32 > > Subject: Re: [pgsql-hackers-win32] [PATCHES] Win32 Event log > > > > I guess I am waiting for someone to report it doesn't work on > > NT4 SP4. > > How do we know it doesn't work? > > OK, a little more research; NT4 with SP4 can read and write NTFS5 > volumes. It *cannot* use many of the other NTFS5 features, including > reparse points which Andreas needed to implement symlinks. > (http://www.serverwatch.com/tutorials/article.php/10825_2239651_3 for > further analyis). Therefore, attempts to create tablespaces will > probably cause a crash. Can't we fix such a _hypothetical_ crash when someone finally reports it? In fact I bet we aren't going to be able to prevent folks from running on NT4 anyway so we will have to fix it. > In addition, the installer uses CreateProcessWithLogonW() to run initdb > at the service user. This API is not available on NT4, and although > there are others that *should* do the same job, Magnus failed could get > them to work despite us both trying to figure it out for some time. As > 99.99% of Windows users will use the installer, I think this is perhaps > the most important reason to say that NT4 is in the 'at your own risk' > category. If the installer can't run on NT4 SP4, that is an installer issue. I don't see why we should label the base source code as not working on it. If it doesn't have symlinks, fine, no tablespaces. I will update the release notes to mention the installer doesn't run on NT4. Basically, we can't turn the PostgreSQL ship on a dime. If we come out and say NT4 doesn't work, the someone else appears and gets it working, it is harder to communicate that. I don't want to be adding/removing NT4 based on untested ideas. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
Bruce Momjian wrote: > >If the installer can't run on NT4 SP4, that is an installer issue. I >don't see why we should label the base source code as not working on it. >If it doesn't have symlinks, fine, no tablespaces. I will update the >release notes to mention the installer doesn't run on NT4. > >Basically, we can't turn the PostgreSQL ship on a dime. If we come out >and say NT4 doesn't work, the someone else appears and gets it working, >it is harder to communicate that. I don't want to be adding/removing >NT4 based on untested ideas. > > > Well, when I began this I said we should either remove NT4 from the supported list or make some very public caveats about its use. The installer can issue its own warnings, I guess. Perhaps the best way to handle the tablespace crash would be to build in a runtime OS version check in the CREATE TABLESPACE code and error out on NT4. That leaves the issue of the event log size, which I guess is a documentation issue. Perhaps something like this would be an appropriate warning: "It is strongly recommended that native Postgres not be used on platforms earlier than Windows 2000. Certain features (particularly tablespaces) will not work on Windows NT4 or earlier. Native PostgreSQL will not run at all on Windows 95, Windows 98 or Windows ME." cheers andrew
Bruce Momjian <pgman@candle.pha.pa.us> writes: > Can't we fix such a _hypothetical_ crash when someone finally reports it? > In fact I bet we aren't going to be able to prevent folks from running > on NT4 anyway so we will have to fix it. Oh, are you volunteering? What I am hearing folks say is that they will not fix any NT4-specific issues that arise. That makes it "unsupported" in my book. regards, tom lane
Tom Lane wrote: > Bruce Momjian <pgman@candle.pha.pa.us> writes: > > Can't we fix such a _hypothetical_ crash when someone finally reports it? > > In fact I bet we aren't going to be able to prevent folks from running > > on NT4 anyway so we will have to fix it. > > Oh, are you volunteering? > > What I am hearing folks say is that they will not fix any NT4-specific > issues that arise. That makes it "unsupported" in my book. I want to hear of an actual failure to remove it. When it happens we can do something. Perhaps the submitters will fix it --- who knows. I see no value to doing something before we know the facts. -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073
Andrew Dunstan wrote: > > Bruce Momjian wrote: > > > > >If the installer can't run on NT4 SP4, that is an installer issue. I > >don't see why we should label the base source code as not working on it. > >If it doesn't have symlinks, fine, no tablespaces. I will update the > >release notes to mention the installer doesn't run on NT4. > > > >Basically, we can't turn the PostgreSQL ship on a dime. If we come out > >and say NT4 doesn't work, the someone else appears and gets it working, > >it is harder to communicate that. I don't want to be adding/removing > >NT4 based on untested ideas. > > > > > > > > Well, when I began this I said we should either remove NT4 from the > supported list or make some very public caveats about its use. > > The installer can issue its own warnings, I guess. Perhaps the best way > to handle the tablespace crash would be to build in a runtime OS version > check in the CREATE TABLESPACE code and error out on NT4. That leaves > the issue of the event log size, which I guess is a documentation issue. Are you saying the server will crash if you try to create a junction point on NT4, or just fail? -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073