Зависает тестирование и исправление БД #383442


#0 by Omskdizel
v7.7, dbf, ~50 пользователей, самописная торговля, база ~4Гига, самый большой файл ~500 Мб, W2k3EEsp2, 8 ядер, 16 Гб, scsi и т.д. Странная штука с базой. Косяк вылез буквально на днях, ничего такого необычного в базе не делали. Косяк в следующем: Спр.Контрагенты, форма списка, идем по списку, как только появляется определенный контрагент база у юзера притормаживает и потом далее нормально. Меняем в доп окошке показ договоров на показ расчетных счетов - все замечательно работает. Открываем подчиненные договора - по нему бегаем без проблем. Стоит только попытаться открыть карточку контра или какого-нибудь договора - база виснет, причем чего-то там шевелится, судя по диспетчеру задач. База виснет только у того, кто пытается это проделать. Теперь самое странное: Тестирование и исправление зависает (!) после полутора суток вроде бы работы (дисп.задач). Выгрузка/Загрузка не решает проблему, остается все по прежнему. От неча делать уже побегал прогой по DBF файлику и контров и договоров смотрелкой - все на ура. Посоветуйте, чего можно попробовать сделать.
#1 by ТелепатБот
#2 by sash-ml
какойто недопустимый символ кто-то кудато вписал
#3 by Ёпрст
проверить мд на битость... проверить нет ли элементов где в качестве группы выбран сам этот элемент...
#4 by Omskdizel
Такой косяк Тестирование и исправление находит легко. Где-то похоже в логической целостности проблема.
#5 by Omskdizel
Как проверить на битость?
#6 by Omskdizel
Есть обработки выгрузки данных в бухгалтерию и они колом встают на контрах. Как проверить на элемент в группе?
#7 by Ёпрст
ошибаешься... не найдет ничего. попробовать полный синтаксический контроль + попробовать накатить на пустой мд-ник - если не проходит - мд битый.
#8 by Ёпрст
вот в них то и наколбасили, скорее всего... У тя видать есть группа, где родителем для неё - сама эта группа.
#9 by Omskdizel
md не битый. Есть еще способ его проверить, убираешь все галки и запускаешь тестирование, если битый, то пишет "Неимсправимая ошибка". Ну и на пустую базу пробовал загрузить, все загружается прекрасно.
#10 by Omskdizel
Щас подумал, что стоит попробовать просто тестирование сделать, может он на исправлении зависает...
#11 by Ёпрст
ТиИ никогда не проверяет мд на битость... MDDiags,например
#12 by Omskdizel
Щас проверю
#13 by Omskdizel
DoctorMD говорит, что ошибок нет. Щас MDDiags поищу/
#14 by leshikkam
проблема в зацикливании ссылок...
#15 by leshikkam
стучись в icq 201216890
#16 by Джордж Вашингтон
это ошибочная "рекурсивная ссылочность" в справочнике - родителем является подчиненный, или сам же. ТиИ не лечит, если знаешь на каком элементе виснет и он сам же, то можно попробовать программно в три строчки обнулить родителя ему, если через "два колена" или больше циклит, то сложнее чуть...
#17 by Omskdizel
Спасибо, буду копать, сегодня веселый вечер будет :)
#19 by Злой Бобр
Варианта 2. 1 - нестандартный символ в индексном поле, например [, ], и т.п. 2 - идет какой-то неограниченный цикл или поиск несуществующей ссылки, возможно увидет в отладчике по замеру.
#20 by Omskdizel
Отладчик ничего не показал. То есть остановился на проблемном элементе, запустил замер, кликнул, подождал, остановил замер - и тишина, окошко просто не открылось. То есть до выполнения модуля формы элемента дело просто не дошло.
#21 by Mikeware
Тогда прикола ради выгрузи в сиквельтную базу, и профайлером смотри запросы...
#22 by Джордж Вашингтон
#23 by Джордж Вашингтон
+20, ну нижнее сообщение в условие конечно, если цикл не прерыванием завершился...
#24 by Omskdizel
Неужто в поле Наименование нельзя использовать упомянутые символы? А это ж поле всегда в индексное.
#25 by Omskdizel
Ничего не дало. Цикл спокойно прошел весь справочник даже не хрюкнув...
#26 by Gray-bird
Определенный контрагент действительно известный? Или он каждый раз разный? Если известный то грохнуть со всеми подчиненными значениями его не исправит ситуацию?
#27 by Gray-bird
А вообще я такую плюху, лечил первым попавшимся редактором ДБФ. Один из элементов неизвестным образом решил что он корневая группа всего справочника. После попытки открыть программа останавливалась, а если открыть диспетчер задач, было видно как 1с постепенно сжирает все больше и больше памяти.
#28 by Джордж Вашингтон
Ну, для начала, там ошибка и должен был прерваться на самом первом ;--) Наверное правильно Если ТОбработанныеКлиенты.НайтиЗначение(Спр.Родитель,НС,"Контрагент")=0 Тогда И для первого уровня проверку добавить, там ведь действительно нет родителя...
#29 by Omskdizel
Да, конкретный, грохнуть трудно будет, он слишком во многих местах засветился. Ходовой контр так сказать :) И первым попавшимся и определенным, с которым уже много чего пережил редактором dbf на что только не смотрел, каких-либо логических нестыковок не увидел. Есть еще мыслишки, пока не сдаюсь. Ну в общем-то меня вполне можно совсем чайником не считать, потому обработочку переделал сильно, ибо в данном виде обработка проверяет вообще непонятно что, хотя идея конечно понятна.
#30 by Omskdizel
Товарищи! Огромное спасибо всем пнувшим меня в нужном направлении! Проблема была в родителе этого контрагента, который себя считал своим родителем. Даже из базы никого выгонять не пришлось. Будете у нас на Колыме - заходите, бухгалтерия вас расцелует, ибо Родителя зовут Банки :)
#31 by Ёпрст
см. ... тебе говорили об этом с самого начала... причем все. :)
#32 by Omskdizel
Я сначала на договоры накинулся, там все оказалось чисто. Хотя как завязан договор с проблемным родителем владельца пока не понимаю :)
#33 by Ёпрст
Кстати, при зацикливании ссылок, пересчет итогов тоже помрёт...
#34 by Злой Бобр
"Будете у нас на Колыме" Да нет, спасибо. Лучше уж вы к нам...
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С