Postgres und Windows 7 x64

Hab gerade auf meinem frischen Win7 (Professional 64bit) Postgres 8.4.1-1 installiert. Das Setup verläuft ohne Probleme, der Dienst startet und wenn ich dann eine neue leere DB anlegen will, stürtzt das Teil immer ab. Auch eine Neuinstallation (sowohl Win7 als auch Pg) haben nichts geholfen.

Im Logfile steht immer folgendes:
2009-11-03 12:11:35 CETLOG: database system was interrupted; last known up at 2009-11-03 11:27:01 CET
2009-11-03 12:11:35 CETFATAL: the database system is starting up
2009-11-03 12:11:35 CETLOG: database system was not properly shut down; automatic recovery in progress
2009-11-03 12:11:36 CETLOG: redo starts at 0/282974D0
2009-11-03 12:11:36 CETWARNING: could not open directory “base/59037”: No such file or directory
2009-11-03 12:11:36 CETCONTEXT: xlog redo drop db: dir 59037/1663
2009-11-03 12:11:36 CETWARNING: some useless files may be left behind in old database directory “base/59037”
2009-11-03 12:11:36 CETCONTEXT: xlog redo drop db: dir 59037/1663
2009-11-03 12:11:36 CETLOG: unexpected pageaddr 0/2029A000 in log file 0, segment 40, offset 2727936
2009-11-03 12:11:36 CETLOG: redo done at 0/28298670
2009-11-03 12:11:36 CETLOG: last completed transaction was at log time 2009-11-03 11:27:02.263+01
2009-11-03 12:11:36 CETFATAL: the database system is starting up
2009-11-03 12:11:37 CETLOG: database system is ready to accept connections
2009-11-03 12:11:37 CETLOG: autovacuum launcher started
2009-11-03 12:13:22 CETPANIC: could not lock semaphore: error code 0


This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

2009-11-03 12:13:22 CETLOG: WAL writer process (PID 2932) exited with exit code 3
2009-11-03 12:13:22 CETLOG: terminating any other active server processes
2009-11-03 12:13:22 CETWARNING: terminating connection because of crash of another server process
2009-11-03 12:13:22 CETDETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2009-11-03 12:13:22 CETHINT: In a moment you should be able to reconnect to the database and repeat your command.
2009-11-03 12:13:22 CETWARNING: terminating connection because of crash of another server process
2009-11-03 12:13:22 CETDETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2009-11-03 12:13:22 CETHINT: In a moment you should be able to reconnect to the database and repeat your command.
2009-11-03 12:13:22 CETLOG: all server processes terminated; reinitializing
2009-11-03 12:13:32 CETFATAL: pre-existing shared memory block is still in use
2009-11-03 12:13:32 CETHINT: Check if there are any old server processes still running, and terminate them.

Kann mir jemand weiter helfen? Bin schön langsam am verzweifeln.

Lg & Danke,
Bernhard

“No such file or directory”, “unexpected pageaddr” …

Das hört sich nach einer kaputten Datenbank oder nach Problemen mit der Festplatte an.

Danke für die rasche Antwort. Festplatte ist nicht defekt. Habe daraufhin ein neues leeres Dataverzeichnis mit INITDB auf C:\temp\pgData erstellt. Konnte noch 3 leere Datenbanken anlegen und nach ein paar inserts ist der Server wieder abgestürzt. Diesmal schaut das Log ähnlich aus:

LOG: database system was shut down at 2009-11-03 15:50:14 CET
FATAL: the database system is starting up
LOG: autovacuum launcher started
LOG: database system is ready to accept connections
PANIC: could not lock semaphore: error code 0


This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

LOG: WAL writer process (PID 2688) exited with exit code 3
LOG: terminating any other active server processes
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat your command.
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat your command.
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat your command.
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat your command.
WARNING: terminating connection because of crash of another server process
DETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
HINT: In a moment you should be able to reconnect to the database and repeat your command.
LOG: all server processes terminated; reinitializing
FATAL: pre-existing shared memory block is still in use
HINT: Check if there are any old server processes still running, and terminate them.

Lg,
Bernhard

Dafür aber vermutlich Deine Tischbrandschutzmauer. Was passiert ohne?

Andreas

Windows Firewall ist deaktiviert, Virenscanner (Kaspersky) ist deaktiviert, sonnst läuft auch nichts verdächtiges.

Hab nochmals ein blankes Data Verzeichnis erstellt und nach ein paar inserts wieder den üblichen
PANIC: could not lock semaphore: error code 0
Fehler erhalten.

Google

Deaktiviert bedeutet bei dieser Art von Schadsoftware nicht, daß es keinen Schaden mehr macht.

Andreas

Danke für die Hilfe. Habe jetzt Kaspersky Anti-Virus 2010 deinstalliert und jetzt funktioniert wieder alles einwandfrei.
Problem gelöst :slight_smile:

Ach.

Was sagt uns das?

Das Schadsoftware ihren Zweck gut erfüllt. Aber warum installiert man sich sowas?

Btw.: heute kam die Karte aus Griechenland an. Danke :wink:

Andreas

Ah, die zweite. Schön schön.

Die aus Paris dauert noch etwas grins

Moin…

Habe PostgreSQL 8.4 auf meinem PC (win7 64bit) installiert, da ich es als Datenbank für ein Programm namens Elephant benötige…

Auch wenn unter Dienste Postgres (automatischen Start) als gestartet zu sehen ist, schließt es sich nach einer gewissen Zeit wieder… :confused:

Das Elephant Programm teilt mir in den debug Ausgaben folgendes mit:

OS: Microsoft Windows NT 6.1.7600.0
.NET Runtime: 2.0.50727.4927
RAM: 8GB
Processors: 4
CPU: Intel64 Family 6 Model 23 Stepping 7: 9/64/1, 2833

Software version: 0.69

(10) Log: 00:14:43.56 – Logfile set: C:\Users\Mirko\AppData\Local\PokerStrategy\Elephant\log.txt
(10) Log: 00:14:43.57 – Logfile cleared: C:\Users\Mirko\AppData\Local\PokerStrategy\Elephant\log.txt
(10) Log: 00:14:50.10 – UPDATE player SET real_player_ID=‘0’ WHERE real_player_ID<>‘0’
(10) Log: 00:14:50.10 – , line 0: Npgsql.NpgsqlException:
The Connection is broken.
bei Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
bei Npgsql.NpgsqlCommand.ExecuteNonQuery()
bei PBN.Database.PostgreSQL.ExecuteNonQuery(String in_sQueryString)
(10) , line 0: Npgsql.NpgsqlException:
The Connection is broken.
bei Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
bei Npgsql.NpgsqlCommand.ExecuteNonQuery()
bei PBN.Database.PostgreSQL.ExecuteNonQuery(String in_sQueryString)


Auch ich habe Kaspersky 2010 als Antiviren Programm.
Habe aber nachdem ich hier mal reingelesen hatte, Kaspersky mal abgeschaltet…
Trotzdem schaltet sich PostgreSQL nach einer Zeit (ca. 3-5 Min.) wieder ab…
(ich kann es dann zwar wieder über Dienste manuell starten…bringt aber nix) :confused:


Danke schon mal im Voraus für eure Hilfe…


MfG

Nun, Kaspersky “abschalten” bringt überhaupt nichts, da diese Tools dann weiterhin aktiv sind.

Was steht denn im Logfile der Datenbank?

Hallo Zusammen,

wenn hier schon einmal ein Thread zum Thema Installation unter Win7 und 64bit offen ist, gleich noch meine Frage hinterher. :wink:
Die Version 8.4.1-1 für Windows, die man von der PostgreSQL Seite herunterladen kann (One Click Install) ist doch eine 32Bit Version oder? Zumindest deutet darauf (meines Erachtens) die *32 Erweiterung der postgres.exe Prozesse im Taskmanager hin. Täusche ich mich? Gibt es eine native 64bit Version für Windows? Wenn man von postgresql.org den Link zum Windows One Click Download-Package folgt, gibt es nur für Linux die 32/64Bit Auswahl nicht für Windows…

Grüße

Nein, es gibt keine 64bit Version

Und hier erklärt Magnus, der Maintainer des Windoze-Ports, warum:
PostgreSQL vs 64-bit windows - Magnus Hagander’s PostgreSQL blog

(extra via email nachgefragt, weil der Link, den Google liefert, leider kapott ist)

Andreas

Hallo ads

In der letzten Logfile steht das:

2009-11-10 18:20:35 CETLOG: database system was interrupted; last known up at 2009-11-10 18:16:11 CET
2009-11-10 18:20:36 CETLOG: database system was not properly shut down; automatic recovery in progress
2009-11-10 18:20:36 CETLOG: redo starts at 0/A4BFA0
2009-11-10 18:20:36 CETFATAL: the database system is starting up
2009-11-10 18:20:36 CETLOG: record with zero length at 0/A9D778
2009-11-10 18:20:36 CETLOG: redo done at 0/A9D748
2009-11-10 18:20:36 CETLOG: last completed transaction was at log time 2009-11-10 18:18:32.27+01
2009-11-10 18:20:37 CETLOG: autovacuum launcher started
2009-11-10 18:20:37 CETLOG: database system is ready to accept connections
2009-11-10 19:19:00 CETLOG: could not receive data from client: Unknown winsock error 10061
2009-11-10 19:19:00 CETLOG: unexpected EOF on client connection
2009-11-10 19:19:00 CETPANIC: could not lock semaphore: error code 0


This application has requested the Runtime to terminate it in an unusual way.
Please contact the application’s support team for more information.

2009-11-10 19:19:00 CETLOG: WAL writer process (PID 3172) exited with exit code 3
2009-11-10 19:19:00 CETLOG: terminating any other active server processes
2009-11-10 19:19:00 CETWARNING: terminating connection because of crash of another server process
2009-11-10 19:19:00 CETDETAIL: The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
2009-11-10 19:19:00 CETHINT: In a moment you should be able to reconnect to the database and repeat your command.
2009-11-10 19:19:00 CETLOG: all server processes terminated; reinitializing
2009-11-10 19:19:10 CETFATAL: pre-existing shared memory block is still in use
2009-11-10 19:19:10 CETHINT: Check if there are any old server processes still running, and terminate them.


Hoffe du kannst damit was anfangen und mir evtl. helfen!?

MfG

Bin zwar nicht ads, antworte aber dennoch, da auch ich Google bedienen kann.

Unknown winsock error 10061

Vermutlich hast Du da Schadsoftware auf Deinem Rechner. Dazu zählen AUCH Tischfeuerwände und ‘Virenscanner’. Dir wurde ja schon weiter oben gesagt, daß Abschalten dieser oft nicht reicht, manchmal nicht mal eine De-Installation. Schadsoftware halt -> Windoze neu installieren.

Das Thema kommt hier ca. 1-2 mal pro Woche.

Andreas

seufz Das Problem ist höchstwahrscheinlich nicht PostgreSQL sondern Windows zuzuordnen. Irgendeine dieser Möchtegern-Schutzsoftware denkt, dass diese Verbindung nicht gut ist und blockiert etwas.

Zur Abhilfe hat akretschmer ja schon was gesagt.

seufz Das Problem ist höchstwahrscheinlich nicht PostgreSQL sondern Windows zuzuordnen. Irgendeine dieser Möchtegern-Schutzsoftware denkt, dass diese Verbindung nicht gut ist und blockiert etwas.

Wobei Windows hier auch nichts dafür kann.

Jain. Windows selbst kann dafür nichts, richtig.
Allerdings ist es schlecht genug, dass solche Software notwendig erscheint. Über den Sinn von dysfunktionaler Software und die Schutzmöglichkeiten von Software auf dem angegriffenen Host möchte ich jetzt hier keine Worte verlieren.