18.10.2018 05:11
qwrty40
 
Доброго времени суток, Олег!
Взялся чистить почтовик в ЦО от несуществующих баз (закрытых, с отключенными серверами - мои коммерсы при рассылке всяких безобразий тупо тычут в "Разослать всем", в итоге очередь рассылки распухла до полного безобразия). Очередь отсылки в почтовике я почистил, отосланные пакеты тоже удалил - все штатными средствами. При попытке удаления получаю:

сообщение: "ORA-02292: нарушено ограничение целостности (SUPERMAG.SMCPOSTPACK_TARGET) - обнаружена порожденная запись"
исключение: System.Data.OracleClient.OracleException
источник: System.Data.OracleClient
данные: соединено с: База даных=ЦО; Пользователь=supermag
текст команды: Delete from Supermag.SMPostLocations where ID=30


Сделал

select virtpack, filename from smpostpackages where target=30; (где narget - id МХ из SMPostLocations

получил почти 12000 строк, которые нигде в почтовике не видны. Подскажите, плз, это оно?
18.10.2018 07:20
OlegON
 
да, это, скорее всего, оно... лучше начать с smpostqueue where id=30 или вроде того... в целом направление правильное, что-то на этом МХ еще висит.
18.10.2018 07:27
qwrty40
 
smpostqueue where id=30 - в этом случае описание ошибки другое. С этим я сам разобрался.
Странно, что запрос почти 12000 строк выдает, а в интерфейсе почтовика - пусто. В общем
delete from smpostpackages where target=30
должно решить проблему для данного МХ, как я понимаю? Если еще что-нить не вылезет...
18.10.2018 07:29
OlegON
 
Цитата:
qwrty40 Если еще что-нить не вылезет...
да, если еще что-то не будет... а про очередь, от нее многое вниз по зависимостям может почиститься... поэтому нет смысла чистить пакеты, если в очереди что-то есть.
18.10.2018 07:32
qwrty40
 
А я так и делаю. То, что в статусе "В очереди" - удаляю на соответствующей закладке. То, что в статусе "Отослан" (а оно именно так и зависало) - удаляю пакеты на закладке "Отсылка пакетов".
18.10.2018 07:33
Mtirt
 
Это могут быть пакеты, которые отсылаются во все базы данных.
Т.е. в очереди почтовика база назначения - все подчиненные.
18.10.2018 07:36
qwrty40
 
Цитата:
Mtirt Это могут быть пакеты, которые отсылаются во все базы данных.
Т.е. в очереди почтовика база назначения - все подчиненные.
Такие я отменяю и удаляю из очереди рассылки в ненужные базы. В нужные пусть летят.
18.10.2018 12:14
Propil
 
Базы не обязательно удалять из почтовика - достаточно снять галки разрешения отсылки и приема.
18.10.2018 23:56
qwrty40
 
Цитата:
Propil Базы не обязательно удалять из почтовика - достаточно снять галки разрешения отсылки и приема.
Как выяснилось, недостаточно. В очередь они все равно становятся, только не отправляются. А очередь распухает...
19.10.2018 08:02
Propil
 
Ну, еще вариант - в админмодуле ЦО сделать места хранения, которые раньше были на удаленных базах, локальными.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.