У меня есть база данных с 60 таблицами. Одним из них является таблица person
, на которую ссылается большое количество других таблиц (около 40), в основном с использованием ON DELETE CASCADE ON UPDATE CASCADE
.
Используя Npgsql, я пытаюсь выполнить следующую команду:
DELETE FROM person WHERE id = @PersonId
В результате я получаю System.IO.Exception:
Npgsql.NpgsqlException (0x80004005): Исключение при чтении из потока ---> System.IO.IOException: Von der Übertragungsverbindung können keine Daten gelesen werden: Ein Verbindungsversuch ist fehlgeschlaten zähichtünt rechenghegtün reghegtün reg reg eg regen de gürnegüg reg reg reghegtün - die, , oder die hergestellte Verbindung war fehlerhaft, da der verbundene Host nicht reagiert hat. ---> System.
bei System.Net.Sockets.Socket.Receive (буфер Byte [], смещение Int32, размер Int32, SocketFlags socketFlags)
bei System.Net.Sockets.NetworkStream.Read (буфер Byte [], смещение Int32, размер Int32)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.Net.Sockets.NetworkStream.Read (буфер Byte [], смещение Int32, размер Int32)
bei Npgsql.NpgsqlReadBuffer. <> c__DisplayClass31_0. d.MoveNext ()
bei Npgsql.NpgsqlReadBuffer. <> c__DisplayClass31_0. d.MoveNext ()
--- Ende der Stapelüberwachung vom vorhergehenden Ort, de die die Ausnahme ausgelöst wurde ---
bei System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (Задача)
bei System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (Задача)
bei Npgsql.NpgsqlConnector. <> c__DisplayClass161_0. d.MoveNext ()
На английском языке внутренним исключением является
Npgsql.NpgsqlException (0x80004005): исключение при чтении из
stream ---> System.IO.IOException: данные не могут быть прочитаны из
соединение передачи: попытка подключения не удалась, потому что
удаленная станция не ответила правильно после определенного периода
время, или Установленное соединение было неисправно, потому что подключенный хост
Не ответил. ---> System.Net.Sockets.SocketException: соединение
попытка не удалась, потому что удаленная станция не ответила правильно
через определенное время или не удалось установить соединение, так как
подключенный хост не отвечает на System.Net.Sockets.
Socket.Receive (Байт [] буфер, смещение Int32, размер Int32, SocketFlags
socketFlags) в System.Net.Sockets.NetworkStream.Read (Byte [] буфер,
Смещение Int32, размер Int32) --- Конец внутренней трассировки стека исключений
В журналах Postgres написано:
2019-03-28 12: 42: 15.077 CET [75060] LOG: konnte Daten vom Client nicht empfangen: нераспознанная ошибка winsock 10053
Полагаю, это не тупик, поскольку в журналах нет сообщения о тупике.
Я думаю, это связано с тем, что на таблицу ссылается так много внешних ключей. Но я не знаю, как продолжить расследование.