Re: [HACKERS] Windows NT port of Postgres - Mailing list pgsql-hackers
From | Bruce Momjian |
---|---|
Subject | Re: [HACKERS] Windows NT port of Postgres |
Date | |
Msg-id | 199809210214.WAA16929@candle.pha.pa.us Whole thread Raw |
In response to | Windows NT port of Postgres ("Joost Kraaijeveld" <JKraaijeveld@askesis.nl>) |
List | pgsql-hackers |
[Charset iso-8859-1 unsupported, filtering to ASCII...] > Hi everybody, > > A report of my attempts after my holiday. > > 1. Configure > > Configure needed a little change in the detection of the way echo handles > en-of-line. > > 2. Make > > Postgres compiles and links with EGCS 1.1 for CygWin B19 with some tools > from Andy Piper and a IPC library by Ludovic Lange. Some changes in the EGCS > source tree are needed (I did this so that I did not have to change any > Postgres source). > > 3. Make install > > I had to strip the extension from the executables (I read somewhere that > that could be done from configure but I cannot find te correct message. > After Make instal I renamed the executables to the *.exe form again. If I > did not do that I got a lot of "access denied" messages in the rest of the > procedure. > > 4. Initdb > > I created a postgres account (jkr). > > I set the environmental variable USER to the account above. > > This line in the script gave NOUSER as POSTGRES_SUPERUID: > POSTGRES_SUPERUID=`pg_id $POSTGRES_SUPERUSERNAME` > I think it has something to do with the way a user name is created in > Windows NT: WindowNTDomain\UserName and the way getpwnam() in pg_id.c works. > Running pg_id with no $POSTGRES_SUPERUSERNAME gave a number. So I changed > the line to: > POSTGRES_SUPERUID=500, the result of running pg_id without parameter. > > After doing that the output of initdb was: > > bash-2.01$ initdb > initdb: using /usr/local/pgsql/lib/local1_template1.bki.source as input to > create the template database. > initdb: using /usr/local/pgsql/lib/global1.bki.source as input to create the > global classes. > initdb: using /usr/local/pgsql/lib/pg_hba.conf.sample as the host-based > authentication control file. > > We are initializing the database system with username jkr (uid=500). > This user will own all the files and must also own the server process. > > initdb: creating template database in /usr/local/pgsql/data/base/template1 > Running: postgres -boot -C -F -D/usr/local/pgsql/data -Q template1 > (d:\unix\root\usr\local\pgsql\bin\postgres.exe 5333) Exception: > STATUS_ACCESS_VIOLATION > (d:\unix\root\usr\local\pgsql\bin\postgres.exe 5333) Dumping stack trace to > postgres.exe.core > initdb: could not create template database > initdb: cleaning up by wiping out /usr/local/pgsql/data/base/template1 > bash-2.01$ > > Debugging postgres with the above commandline created some difficulties > because the debugger did not step into the function that was responsible for > the crash (bool IsBootstrapProcessingMode() in miscinit.c line 170). I have > not figured out what the problem is. This is pretty amazing you got this far. Hard to see how it could crash on that code. > > 5. People who have offered help. > > There are a few people who have offered to help (active coding / guidance / > moral support) : > Hugo Korwaser (hugo.korwaser@dspace.co.uk) > J. Michael Roberts (mirobert@cs.indiana.edu) > Chris Williams (chris_d_williams@sterling.com) > > More help is welcome. (BTW because of some major hard and software prblems I > lost my entire email archive. So if you offered help and I did not mention > you please respond and don't be mad at me ;-)). > > The people who have offered help will be contacted shortly to make a plan. > If you allready have one let me know. This is all pretty amazing. To port something like this requires a huge amount of supporting NT code to make it look like Unix. -- Bruce Momjian | 830 Blythe Avenue maillist@candle.pha.pa.us | Drexel Hill, Pennsylvania 19026 http://www.op.net/~candle | (610) 353-9879(w) + If your life is a hard drive, | (610) 853-3000(h) + Christ can be your backup. |
pgsql-hackers by date: