Thread: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
Harald Armin Massa
Date:
Hello,

my first results of installation-attempts of PostgreSQL 8.3.5 from
pginstaller on Windows 7 64bit:

1.) after getting up to "initialize database cluster", Dialog appears:
"Secondary Logon" Service not running. Please start this service and retry

Maybe some "net start seclogon" would be helpfull if W7 is detected by
installer?


2) installation copies a lot of stuff, moves up to "services get
started", which takes A LOT OF TIME
as of logfile:
[....]
MSI (s) (F0:C4) [12:29:49:297]: Executing op:
ActionStart(Name=StartServices,Description=Dienste werden
gestartet,Template=Dienst: [1])
Aktion 12:29:49: StartServices. Dienste werden gestartet
MSI (s) (F0:C4) [12:29:49:298]: Executing op:
ProgressTotal(Total=1,Type=1,ByteEquivalent=1300000)
MSI (s) (F0:C4) [12:29:49:298]: Executing op:
ServiceControl(,Name=pgsql-8.3,Action=1,Wait=1,)
StartServices: Dienst: PostgreSQL Database Server 8.3

and finally fails with "... service could not be startet, please check
if you have enough rights to start system services"
[retry] / [cancel]
(btw, I am running the installer from an administrator prompt)

"retry" gives another time period to meditate & contemplate & wait; "Cancel"

leads to rollback of the installation:
MSI (s) (F0:C4) [12:29:49:297]: Executing op:
ActionStart(Name=StartServices,Description=Dienste werden
gestartet,Template=Dienst: [1])
Aktion 12:29:49: StartServices. Dienste werden gestartet
MSI (s) (F0:C4) [12:29:49:298]: Executing op:
ProgressTotal(Total=1,Type=1,ByteEquivalent=1300000)
MSI (s) (F0:C4) [12:29:49:298]: Executing op:
ServiceControl(,Name=pgsql-8.3,Action=1,Wait=1,)
StartServices: Dienst: PostgreSQL Database Server 8.3
MSI (s) (F0:C4) [12:33:25:956]: Note: 1: 2205 2:  3: Error
MSI (s) (F0:C4) [12:33:25:956]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 1920
MSI (c) (DC:50) [12:33:25:958]: Note: 1: 2205 2:  3: Error
MSI (c) (DC:50) [12:33:25:958]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 2835
DEBUG: Error 2835:  The control ErrorIcon was not found on dialog ErrorDlg
Bei der Installation dieses Pakets ist ein unerwarteter Fehler
aufgetreten. Es liegt eventuell ein das Paket betreffendes Problem
vor. Der Fehlercode ist 2835. Argumente: ErrorIcon, ErrorDlg,
Fehler 1920. Der Dienst PostgreSQL Database Server 8.3 (pgsql-8.3)
konnte nicht gestartet werden. Überprüfen Sie, ob Sie ausreichende
Berechtigungen zum Starten von Systemdiensten besitzen.
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 3064 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 2040 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 3636 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 3268 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 3776 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 2516 could not be
cancelled. Error: 1168
MSI (s) (F0:18) [12:34:43:812]: I/O on thread 3848 could not be
cancelled. Error: 1168
MSI (s) (F0:C4) [12:34:43:813]: Note: 1: 2205 2:  3: Error
MSI (s) (F0:C4) [12:34:43:813]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 1709
MSI (s) (F0:C4) [12:34:43:813]: Produkt: PostgreSQL 8.3 -- Fehler
1920. Der Dienst PostgreSQL Database Server 8.3 (pgsql-8.3) konnte
nicht gestartet werden. Überprüfen Sie, ob Sie ausreichende
Berechtigungen zum Starten von Systemdiensten besitzen.

MSI (s) (F0:C4) [12:34:43:813]: Note: 1: 2205 2:  3: Error
MSI (s) (F0:C4) [12:34:43:813]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 1602
MSI (c) (DC:50) [12:34:43:816]: Note: 1: 2205 2:  3: Error
MSI (c) (DC:50) [12:34:43:816]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 2835
DEBUG: Error 2835:  The control ErrorIcon was not found on dialog ErrorDlg
Bei der Installation dieses Pakets ist ein unerwarteter Fehler
aufgetreten. Es liegt eventuell ein das Paket betreffendes Problem
vor. Der Fehlercode ist 2835. Argumente: ErrorIcon, ErrorDlg,
Sind Sie sicher, dass Sie den Vorgang abbrechen möchten?
Aktion beendet um 12:34:46: InstallFinalize. Rückgabewert 3.
MSI (s) (F0:C4) [12:34:46:169]: User policy value 'DisableRollback' is 0
MSI (s) (F0:C4) [12:34:46:169]: Machine policy value 'DisableRollback' is 0
MSI (s) (F0:C4) [12:34:46:172]: Executing op:

Header(Signature=1397708873,Version=500,Timestamp=976774067,LangId=1033,Platform=0,ScriptType=2,ScriptMajorVersion=21,ScriptMinorVersion=4,ScriptAttributes=1)
MSI (s) (F0:C4) [12:34:46:172]: Executing op: DialogInfo(Type=0,Argument=1033)
MSI (s) (F0:C4) [12:34:46:173]: Executing op:
DialogInfo(Type=1,Argument=PostgreSQL 8.3)
MSI (s) (F0:C4) [12:34:46:173]: Executing op:
RollbackInfo(,RollbackAction=Rollback,RollbackDescription=Aktion wird
rückgängig gemacht:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=Sicherungsdateien
werden entfernt,CleanupTemplate=Datei: [1])
Aktion 12:34:46: Rollback. Aktion wird rückgängig gemacht:
Rollback: Dienste werden gestartet
MSI (s) (F0:C4) [12:34:46:175]: Executing op:
ActionStart(Name=StartServices,Description=Dienste werden
gestartet,Template=Dienst: [1])
MSI (s) (F0:C4) [12:34:46:175]: Executing op:
ProductInfo(ProductKey={B823632F-3B72-4514-8861-B961CE263224},ProductName=PostgreSQL

8.3,PackageName=postgresql-8.3-int.msi,Language=1033,Version=134414336,Assignment=1,ObsoleteArg=0,,,PackageCode={141FAE64-8F91-4C88-AF89-D1E6960734EC},,,InstanceType=0,LUASetting=0,RemoteURTInstalls=0,ProductDeploymentFlags=3)
MSI (c) (DC:50) [12:35:34:631]: Note: 1: 2205 2:  3: Error
MSI (c) (DC:50) [12:35:34:631]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 2888
DEBUG: Error 2888:  Executing the TextStyle view failed
Bei der Installation dieses Pakets ist ein unerwarteter Fehler
aufgetreten. Es liegt eventuell ein das Paket betreffendes Problem
vor. Der Fehlercode ist 2888. Argumente: TextStyle, ,
MSI (s) (F0:C4) [12:34:46:176]: Executing op:
ServiceControl(,Name=pgsql-8.3,Action=2,Wait=1,)
MSI (s) (F0:C4) [12:35:57:181]: Executing op:
ServiceControl(,Name=pgsql-8.3,Action=2,Wait=1,)
Rollback: Neue Dienste werden installiert
MSI (s) (F0:C4) [12:35:57:183]: Executing op:
ActionStart(Name=InstallServices,Description=Neue Dienste werden
installiert,Template=Dienst: [2])
MSI (s) (F0:C4) [12:35:57:183]: Executing op:
ServiceControl(,Name=pgsql-8.3,Action=8,,)
Rollback: Systemregistrierungwerte werden geschrieben

[.....]

with  not so really clear end:

MSI (c) (DC:F8) [12:36:04:160]: Produkt: PostgreSQL 8.3 --
Installation fehlgeschlagen.
(that is: installation failed)

MSI (c) (DC:F8) [12:36:04:161]: Windows Installer installed the
product. Product Name: PostgreSQL 8.3. Product Version: 8.3. Product
Language: 1031. Manufacturer: PostgreSQL Global Development Group.
Installation success or error status: 1603.

MSI (c) (DC:F8) [12:36:04:163]: Grabbed execution mutex.
MSI (c) (DC:F8) [12:36:04:163]: Cleaning up uninstalled install
packages, if any exist
MSI (c) (DC:F8) [12:36:04:165]: MainEngineThread is returning 1603
=== Verbose logging stopped: 24.01.2009  12:36:04 ===


On the bright side: a data directory containing the usual PostgreSQL
Structure is left behind.

3.) next try: installing PostgreSQL without creating database cluster
(which, as second try with that initdb-ed directory from first try is
the default)
(data directory contains of actual version, which will be used...)

now PostgreSQL installes all fine, even creates a service, and gives
me best wishes on successfull install
eventvwr/ applicatioN:

Protokollname: Application
Quelle:        MsiInstaller
Datum:         24.01.2009 12:42:40
Ereignis-ID:   1033
Aufgabenkategorie:Keine
Ebene:         Informationen
Schlüsselwörter:Klassisch
Benutzer:      TempleC7\ham
Computer:      TempleC7
Beschreibung:
Windows Installer installed the product. Product Name: PostgreSQL 8.3.
Product Version: 8.3. Product Language: 1031. Manufacturer: PostgreSQL
Global Development Group. Installation success or error status: 0.
Ereignis-XML:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="MsiInstaller" />
    <EventID Qualifiers="0">1033</EventID>
    <Level>4</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2009-01-24T11:42:40.000000000Z" />
    <EventRecordID>2513</EventRecordID>
    <Channel>Application</Channel>
    <Computer>TempleC7</Computer>
    <Security UserID="S-1-5-21-1349645822-3266984892-1315167842-1000" />
  </System>
  <EventData>
    <Data>PostgreSQL 8.3</Data>
    <Data>8.3</Data>
    <Data>1031</Data>
    <Data>0</Data>
    <Data>PostgreSQL Global Development Group</Data>
    <Data>(NULL)</Data>
    <Data>
    </Data>

<Binary>7B42383233363332462D334237322D343531342D383836312D4239363143453236333232347D3030303036633862393261316635626664333663353862373533333535343138626262613030303030373034</Binary>
  </EventData>
</Event>
of course, service is not running...


4.) after 3.): net start pgsql-8.3
Windows tries really hard. gives me way more then 80 enddots on its
try of "PostreSQL [...] gets started ............
but finally fails, <Data>Timed out waiting for server startup</Data>
(which is also the record within application.log)

Security gives:
Anmeldeversuch mit expliziten Anmeldeinformationen. [logon attempt
with explicit logon information]

    Kontoname:        postgres
    Kontodomäne:        TempleC7

Ein Konto wurde erfolgreich angemeldet. [account logon successfull]
Neue Anmeldung:
    Sicherheits-ID:        TempleC7\postgres
    Kontoname:        postgres
    Kontodomäne:        TempleC7
    Anmelde-ID:        0x471c6a

Einer neuen Anmeldung wurden besondere Rechte zugewiesen. [special
rights where granted to a logon]
Antragsteller:
    Sicherheits-ID:        TempleC7\postgres
    Kontoname:        postgres
    Kontodomäne:        TempleC7
    Anmelde-ID:        0x471c6a
Berechtigungen:        SeImpersonatePrivilege

and after that:
Ein Konto wurde abgemeldet. [account was logged of]

Antragsteller:
    Sicherheits-ID:        TempleC7\postgres
    Kontoname:        postgres
    Kontodomäne:        TempleC7
    Anmelde-ID:        0x471c6a

Anmeldetyp:            5

-> service does not start.

5.) So, trying as my default user: a) adding postgresql\8.3\bin to my path
b)
pg_ctl start -D d:\ghum\data83
server starting

D:\ghum\data83>2009-01-24 12:55:27 CET LOG:  loaded library "$libdir/plugins/plu
gin_debugger.dll"

.. which gives me a FINE running postgresql 8.3


C:\Users\ham>psql -U postgres --port=5433
Password for user postgres:
Welcome to psql 8.3.5, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

Warning: Console code page (850) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.

postgres=#


4.) it seems to be no longer "cool" to have your data below Program
Files / Program Files (x86)
The default as of know is \ProgramData\<application>

5.) so: PostgreSQL somehow works on Windows 7 64bit; BUT not running as service

I would be willing to conduct more tests or try other things or
provide logs, please contact me! :)

Best wishes

Harald

--
GHUM Harald Massa
persuadere et programmare
Harald Armin Massa
Spielberger Straße 49
70435 Stuttgart
0173/9409607
no fx, no carrier pigeon
-
EuroPython 2009 will take place in Birmingham - Stay tuned!

Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
ITAGAKI Takahiro
Date:
Harald Armin Massa <haraldarminmassa@gmail.com> wrote:

> 4.) it seems to be no longer "cool" to have your data below Program
> Files / Program Files (x86)
> The default as of know is \ProgramData\<application>

I think all of those directories are only for executable files
and not good to store any data. Is it safe to create database cluster
under "C:\Documents and Settings\postgres" or "C:\Users\postgres" ?
UAC often bytes us when we just try to modify the configuration file.

I'm not sure which directory should we create $PGDATA -- "My Documents",
"Application Data", "Local Settings" or direct child of %USERPROFILE%,
but anyway some of them would be better than "Program Files".

Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center



Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
"Holger Hoffstaette"
Date:
On Tue, 27 Jan 2009 16:10:26 +0900, ITAGAKI Takahiro wrote:

> Harald Armin Massa <haraldarminmassa@gmail.com> wrote:
>
>> 4.) it seems to be no longer "cool" to have your data below Program
>> Files / Program Files (x86)

That was never cool or good practice.

> I'm not sure which directory should we create $PGDATA -- "My Documents",
> "Application Data", "Local Settings" or direct child of %USERPROFILE%, but
> anyway some of them would be better than "Program Files".

%USERNAME%/%APPDATA%

These variables exist for good reasons..

regards
Holger


Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
Magnus Hagander
Date:
Holger Hoffstaette wrote:
> On Tue, 27 Jan 2009 16:10:26 +0900, ITAGAKI Takahiro wrote:
>
>> I'm not sure which directory should we create $PGDATA -- "My Documents",
>> "Application Data", "Local Settings" or direct child of %USERPROFILE%, but
>> anyway some of them would be better than "Program Files".
>
> %USERNAME%/%APPDATA%
>
> These variables exist for good reasons..

Yes. For user apps. They pretty much suck for services.

//Magnus

Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
Harald Armin Massa
Date:
Holger,

>>> 4.) it seems to be no longer "cool" to have your data below Program
>>> Files / Program Files (x86)
> That was never cool or good practice.

Yes, we discussed that on pg-installer some time ago. But we were in
good bad company, as Microsoft SQL Server and Exchange did similiar
things. Quod licet iovi....

>> I'm not sure which directory should we create $PGDATA -- "My Documents",
>> "Application Data", "Local Settings" or direct child of %USERPROFILE%, but
>> anyway some of them would be better than "Program Files".
>
> %USERNAME%/%APPDATA%

The default for "bigger data" seems to be \progdata on Windows 7. That
is from observation only, as i.e. Ubisoft installs there. Not clear
which %XX% that is...

Nontheless: I usually pick my own data directory, as there have to be
special provisions made concerning backup and viralscanners.

THE MORE hurting problem on Windows7 is the inability to start the
postgresql service. There must have been some changes to the service
framework / security
"security" which prevend the startup...

Harald


--
GHUM Harald Massa
persuadere et programmare
Harald Armin Massa
Spielberger Straße 49
70435 Stuttgart
0173/9409607
no fx, no carrier pigeon
-
EuroPython 2009 will take place in Birmingham - Stay tuned!

On Tue, Jan 27, 2009 at 12:18 PM, Harald Armin Massa
<haraldarminmassa@gmail.com> wrote:

> THE MORE hurting problem on Windows7 is the inability to start the
> postgresql service. There must have been some changes to the service
> framework / security
> "security" which prevend the startup...

I posted a patch for that to -hackers a couple of hours ago.


--
Dave Page
EnterpriseDB UK:   http://www.enterprisedb.com

Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
Magnus Hagander
Date:
Harald Armin Massa wrote:
> THE MORE hurting problem on Windows7 is the inability to start the
> postgresql service. There must have been some changes to the service
> framework / security
> "security" which prevend the startup...

Dave Page just posted a patch for that, so we'll hopefully have it fixed
RSN.

//Magnus

Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
"Holger Hoffstaette"
Date:
On Tue, 27 Jan 2009 13:17:30 +0100, Magnus Hagander wrote:

> Holger Hoffstaette wrote:
>> On Tue, 27 Jan 2009 16:10:26 +0900, ITAGAKI Takahiro wrote:
>>
>>> I'm not sure which directory should we create $PGDATA -- "My Documents",
>>> "Application Data", "Local Settings" or direct child of %USERPROFILE%, but
>>> anyway some of them would be better than "Program Files".
>>
>> %USERNAME%/%APPDATA%
>>
>> These variables exist for good reasons..
>
> Yes. For user apps. They pretty much suck for services.

Wah? Please explain. I was under the impression that a service running
under some account has access to its profile and all the assorted things
that come with it. Is this not the case?

thanks
Holger


Re: Installing PostgreSQL on Windows 7 Beta Build 7000 64bit - first results

From
Magnus Hagander
Date:
Holger Hoffstaette wrote:
> On Tue, 27 Jan 2009 13:17:30 +0100, Magnus Hagander wrote:
>
>> Holger Hoffstaette wrote:
>>> On Tue, 27 Jan 2009 16:10:26 +0900, ITAGAKI Takahiro wrote:
>>>
>>>> I'm not sure which directory should we create $PGDATA -- "My Documents",
>>>> "Application Data", "Local Settings" or direct child of %USERPROFILE%, but
>>>> anyway some of them would be better than "Program Files".
>>> %USERNAME%/%APPDATA%
>>>
>>> These variables exist for good reasons..
>> Yes. For user apps. They pretty much suck for services.
>
> Wah? Please explain. I was under the impression that a service running
> under some account has access to its profile and all the assorted things
> that come with it. Is this not the case?

It does - in theory. It doesn't always work.

For example, consider what happens when your files are on a roaming
profile. And yes, profiles can more or less randomly move between being
roaming and local-copy in my experience... And you really don't want
that for your database files.

//Magnus


On Tue, Jan 27, 2009 at 1:16 PM, Magnus Hagander <magnus@hagander.net> wrote:

> For example, consider what happens when your files are on a roaming
> profile. And yes, profiles can more or less randomly move between being
> roaming and local-copy in my experience... And you really don't want
> that for your database files.

It can also be more awkward from a management POV - it ties the
cluster more tightly to that service user account (with no gain in
security), and makes it more awkward for admins to get at the config
files & certificates etc.

--
Dave Page
EnterpriseDB UK:   http://www.enterprisedb.com