Имя: Пароль:
1C
1С v8
Не могу почистить регистр сведений
0 MrCrowley1988
 
06.10.12
12:19
Всем доброе время суток!
Наткнулся на очень серьезную проблему.

1С 8.2.
Недавно начал обслуживать конфигурацию "Управление торговым предприятием". Два дня назад бухгалтеру вылезла ошибка, что мол "достигнут максимальный размер файла базы данных".
Я посмотрел - размер базы = 12 ГБ. Пробывал ТиИ - вылазит та же ошибка.

Нашел бэкап за месяц назад. Там размер 10ГБ.
Начал делать ТиИ - заметил, что все происходит быстро, но как только доходит до "РегистрСведений.СоответствиеОбъектовДляОбмена", все, гайки - реструктуризация происходит со скоростью 5000 записей в час (при том, что у меня на домашнем компе ОЗУ = 6 ГБ).
Записей на данный момент там больше 800 000, соответственно, расчитать время ТиИ несложно - почти неделю.

Начал чистить данный регистр.
Как при помощи ручного удаления (напрямую заходил в список регистра и удалял), так и при помощи обработки, так и при помощи удаления узлов обмена - результат один и тот же - после очистки где-то 50 000 записей регистра база прямо на глазах увеличиваеться 12 ГБ (без ТиИ, просто после очистки закрываю 1С, и сразу вижу размер в 12ГБ). Соответственнно при ТиИ вылазит та же ошибка.


В общем, что делать, не знаю. Как почистить этот регистр. Пробовал, как тут -  

v8: 1C 8.2 Очистка регистра сведений

(3) "все оказалось проще, изменил режим записи с "независимый" на "подчинение регистратору" при обновлении предупредил все записи регистра будут удалены 2 сек и ок)"

, но при обновлении пишет "РегистрСведений.СоответствиеОбъектовДляОбмена: Не один из документов не является регестратором для регистра".

Помогите, пожалуйста, кто чем может.



З.Ы.: кстати, пробовал чистить "РегистрСведений.КоллизииПриОбмене", чищу под ноль, но при реструктуризации он все равно их проганаят (там около 200 000 записей, но проходят они очень быстро).

Конечно, было бы как в сказке, если бы получилось как в "(3) "все оказалось проще, изменил режим записи с "независимый" на "подчинение регистратору" при обновлении предупредил все записи регистра будут удалены 2 сек и ок)""... но по идее так не получиться - немного разные регистры по идее.
1 Wobland
 
06.10.12
12:23
регистратора нет у регистра с режимом записи "подчинение регистратору"? что же делать? может, убедить конфигурацию в том, что регистр независимый?
2 MrCrowley1988
 
06.10.12
12:26
(1), он по умолчанию независимый, при изменении на "подчинение регистратору" вылазит ошибка "РегистрСведений.СоответствиеОбъектовДляОбмена: Не один из документов не является регестратором для регистр". Соответственно поменять на "подчинение регистратор" не могу.
Повторюсь, он по умолчанию Независимый.
3 Wobland
 
06.10.12
12:27
(2) а в чём проблема? вон же решение описано и даже замерено: 2 секунды
4 ДенисЧ
 
06.10.12
12:28
А если ему прописать таки какой-нибудь регистратор? Тот же КорректировкаЗаписейРегистров?
5 ДенисЧ
 
06.10.12
12:28
А потом убрать...
6 MrCrowley1988
 
06.10.12
12:29
(4), (5), Денис, а можно немного по-подробнее... никогда подобного не делал... :-(
7 Wobland
 
06.10.12
12:30
(6) назначь любой регистратор, обнови конфигурацию и верни после этого всё на место. картинку нарисовать?
8 MrCrowley1988
 
06.10.12
12:31
нет, по идее понял... сейчас в процесе выполнения...
9 ДенисЧ
 
06.10.12
12:32
(6) открываем в конфигураторе этот РС. Вкаладка основные - режим записи - подчинение регистратору. На вкладке регистраторы - указываем любой документ. Сохраняемся, F7. Возвращаем значения обратно, сохраняемся, F7
10 MrCrowley1988
 
06.10.12
12:33
Денис, я понял... сделал, оно думает... пару минут
11 Wobland
 
06.10.12
12:34
странное какое-то ограничение на размер файла - 12 Гб
12 MrCrowley1988
 
06.10.12
12:35
Ух ты... все сделал... регистр очистился... правда размер базы не уменьшился, но и не увеличился, как в прошлые разы... попробую ТиИ, посмотрю, будет ли он проганять этот регистр при реструктуризации...
13 Wobland
 
06.10.12
12:36
(12) ТиИ с реструктуризацией(?) удалит физически записи, помеченные на удаление
14 MrCrowley1988
 
06.10.12
12:37
(11) - ограничение не на размер файла, а на одну таблицу - 4ГБ.
В 1С, в файловой версии, база делиться на 3 таблицы (что куда загоняеться, не знаю).
И когда хотя-бы одна из них превышает 4ГБ - все, Game Over
15 Wobland
 
06.10.12
12:38
(14) в (0) немного другое говорил
16 MrCrowley1988
 
06.10.12
12:39
(13) немного не уловил... фиг с ним, мне главное, что-бы размер базы уменьшить и что-бы он не прогонял все бывшие записи в "РегистрСведений.СоответствиеОбъектовДляОбмена", которые я удалил
17 MrCrowley1988
 
06.10.12
12:40
(15) говорил, как есть, просто не дал разьяснения
18 MrCrowley1988
 
06.10.12
12:41
Ладно, после ТиИ напишу о результатах... пока что огромное спасибо всем, особенно ДенисЧ
19 Wobland
 
06.10.12
12:41
(16) ну есть там какая-то галка, которая физически удаляет то, что помечено. упаковка? сжатие таблиц? не помню
(17) но есть не так ведь ;)
20 MrCrowley1988
 
06.10.12
12:48
Не знаю почему, но вне типа "офигенный програмист" с моего города посоветовал делат ТиИ только с галочками:

1. Реиндексация таблиц
5. Сжатие таблиц
6. Реструктуризация таблиц

, то есть, без

2. Проверка логической целосности
3. Проверка целосности ссылок
21 vmv
 
06.10.12
12:51
суботний бред профана и паникера, извините за правду
22 Wobland
 
06.10.12
12:51
(20) наверное, к тому, чтобы битые ссылки остались на месте. я и с ним согласен, не видя ситуации
23 Wobland
 
06.10.12
12:52
(21) сисадмина. имхо ему простительно ;)
24 MrCrowley1988
 
06.10.12
12:54
(21), извеняю :-) И это не совсем паника, поверь... насчет профана в принципе согласен... как и с (23)
25 Wobland
 
06.10.12
12:57
(24) но уж лингвистическое невежество непростительно
26 MrCrowley1988
 
06.10.12
13:01
(24) писал на очень быструю руку, т.к. через 10 минут нужно кое-куда сходить по работе :-)
27 Wobland
 
06.10.12
13:02
(26) очепятки - одно дело, безграмотность - другое
28 MrCrowley1988
 
06.10.12
13:04
Ладно... чувствую, что с того места, куда нужно сходить, вернусь не скоро... так что о результатах ТиИ обязательно сообщу завтра (либо, если успею, сегодня вечером)
29 MrCrowley1988
 
06.10.12
13:05
(27) я конечно изменяюсь, но я украинец, и привык писать и говорить по украински... так что может мне хоть немного простительно :-)
30 MrCrowley1988
 
06.10.12
13:07
кстати, Wobland, а смысл держать битые ссылки в базе? (22)
31 BAPBAP
 
06.10.12
13:08
НаборЗаписей.Прочитать()
НаборЗаписей.Очистить()
НаборЗаписей.Записать()
32 Wobland
 
06.10.12
13:08
(29) уверен, что и в украинском языке "конечно" выделяется запятыми. я долго так могу ;)
33 Wobland
 
06.10.12
13:09
(30) можно найти "оправдание". например, для того, чтобы навести порядок. иногда битая ссылка - ценный источник информации, по которой можно восстановить удалённый документ (как у меня было однажды)
34 MrCrowley1988
 
06.10.12
13:10
ВАРВАР, писал и такую обработку, но результат тот-же, что и с:

НаборЗаписей = РегистрыСведений.СоответствиеОбъектовИнформационныхБаз.СоздатьНаборЗаписей();

НаборЗаписей.Записать();

, а именно - сжерание памяти и увелечение базы.
35 MrCrowley1988
 
06.10.12
13:12
(32) не нужно, достаточно :-)
36 Wobland
 
06.10.12
13:12
кстати, в случае с какой-нибудь распределёнкой битые ссылки - естественное явление
37 BAPBAP
 
06.10.12
13:14
Ставиш для регистра "подчинение регистратору". На закладке Регистраторы, добавляешь любой регистратор. Обновляешь базу. Возвращаешь регистру "Незавизимый. Обновляешь базу."
38 Wobland
 
06.10.12
13:15
(37) ещё немного, и ты дочитаешь до (18)
39 BAPBAP
 
06.10.12
13:18
(38) Я очень медленно читаю...)
40 MrCrowley1988
 
06.10.12
13:31
Итого... после ТиИ размер базы... 2,5 ГБ !!!
Супер... всем огромное спасибо за помощь !!!