Имя: Пароль:
1C
1С v8
Ещё про УПП, но скорее, по самой платформе
,
0 ДенисЧ
 
01.07.11
16:45
Вот такой код

   ЗаписьЖурналаРегистрации("РСВ: начало получения данных для свёртки");
   РезультатЗапроса = Запрос.Выполнить();
   ЗаписьЖурналаРегистрации("РСВ: запрос выполнен");
   Если РезультатЗапроса.Пустой() Тогда
       ЗаписьЖурналаРегистрации("РСВ: запрос пустой, возврат");
       Возврат;
   КонецЕсли;
   
   // Очистка движений по регистру.
   ЗаписьЖурналаРегистрации("РСВ: очистка регистра...");
   СтруктураНаборыЗаписей.УчетЗатрат.Записать();
   ЗаписьЖурналаРегистрации("РСВ: очистка регистра завершена");


Выполняется при проведении расчёта себестоимости. Смотрю в журнал регистрации: запись "РСВ: запрос выполнен" - есть, прошло 10 минут следующей записи так и нет. В первой попытке она (следующая запись) появилась через 4 часа.
Что оно в это время может делать??
В базе я один.
1 Живой Ископаемый
 
01.07.11
16:51
нужно перегрузить сервер 1С.
2 ДенисЧ
 
01.07.11
16:51
(1) думаешь? Попробуем завтра...
3 Господин ПЖ
 
01.07.11
16:52
скуль по памяти ограничен? может он банально сожрал все
4 ДенисЧ
 
01.07.11
16:52
(3) они оба живут на одном сервере, там 32Г памяти...
Ограничений нет. Но 1сный сервер откушал куда больше...
5 ДенисЧ
 
04.07.11
10:53
Мда... После перезагрузки место задумывания перешло на СтруктураНаборыЗаписей.УчетЗатрат.Записать();...

По прикидкам - там записей немного, около 300 000 штук...
А в субботу оно на нём висело 6 часов...
При этом загрузка сервера невелика...
Что оно там такое делает, хотел бы я знать...
6 assasu
 
04.07.11
12:08
(5)у меня был опыт когда требование висело 30 минут на одной строчке, а на след день оно же проводилось за секунды.
ложись спать - утро вечера мудренее)
7 assasu
 
04.07.11
12:09
(0) а где точнее этот код? взглянуть охота...
8 ДенисЧ
 
04.07.11
12:22
(7) Процедура СверткаДвиженийПоРегиструУчетЗатрат(СтруктураШапкиДокумента)

в общем модуле ПроцедурыРасчетаСебестоимостиРасширеннаяАналитика
9 ДенисЧ
 
04.07.11
12:50
Причём посмотрел на скуль - запросов к нему нет вообще...
ЧЗХ??
10 Живой Ископаемый
 
04.07.11
12:50
2(5) ну это по крайней мере уже объяснимо.
ритуальный совет - если хочешь знать чем занимается, ответить поможет ТЖ...
11 ДенисЧ
 
04.07.11
12:52
(10) ТЖ у меня не удалось запустить :-(
Почему-то. Точнее, он запустился, но выдал столько разной фигни, что...
12 Живой Ископаемый
 
04.07.11
12:56
2(11) ну... тут рецептов нет... но могу дать хинт - раз операция выполняется долго, значит можно поставить ограничение на длительность операции - скажем больше минуты... Тогда фигни будет в разы меньше...
сам cfg файл можно менять на горячую, рестратовать сервер не нужно, он будет писать новые логи согласно новых настроек
13 ДенисЧ
 
04.07.11
12:59
сейчас ещё раз попробую...
cfg нужно класть куда? В каталог сервера? Ведь все, описанное выше, выполняется &НаСервере...
14 Живой Ископаемый
 
04.07.11
12:59
да, в каталог сервера.. щас
15 ДенисЧ
 
04.07.11
13:00
а куда?
16 Живой Ископаемый
 
04.07.11
13:01
минуту, где-то ролик был
17 Живой Ископаемый
 
04.07.11
13:20
не нашел ролик... в общем класть сюда:
http://screencast.com/t/VGDulYPzM0
настройки я готовлю в УНФ, потому что обработка для создания файла настроек, которая находится на ИТС - написано с использованием УФ(то есть если есть другая база которая открывается в режиме Управляемого приложения, то можно юзать ее)...
примерно так:
http://screencast.com/t/2pQIWxao30x
18 ДенисЧ
 
04.07.11
13:23
(17) угу, понял, спасибо. Буду экспериментировать
19 ДенисЧ
 
04.07.11
14:09
Запустил, посмотрел...
В логе куча записей типа

08:44.2927-1,SCALL,0,process=rphost,ClientID=6,Interface=0459eaa0-589f-4a6d-9eed-c1a7461c8e3f,Method=28
08:44.2929-1,SCALL,0,process=rphost,ClientID=6,Interface=64016dc5-c439-49fa-8a71-c3cb708e243b,Method=3
08:44.2931-1,SCALL,0,process=rphost,ClientID=6,Interface=0459eaa0-589f-4a6d-9eed-c1a7461c8e3f,Method=31


И что мне с ними теперь делать?...
20 Живой Ископаемый
 
04.07.11
14:10
э... ничего, делай другую настройку, на другие события...
21 Живой Ископаемый
 
04.07.11
14:15
ты... поставил галку все события? это неправильно
22 ДенисЧ
 
04.07.11
14:17
(21) хоть что-то выловить...
Просмотрел весь лог от rphost - ничего другого не увидел
23 Живой Ископаемый
 
04.07.11
14:24
может я ошибаюсь, но заметил такое - "все события, все свойства" не равно отмечанию каждого из всех событий со всеми свойствами... поэтому начинаю с конца... в определенном смысле...
скажем ставлю МС СКЛ сервер, все события... смотрю, потом немного расширяю - добавляю например контекст исключения...
24 ДенисЧ
 
04.07.11
14:24
вот блин... попробую так...
25 ДенисЧ
 
04.07.11
15:36
Мда... Поставил все галочки в "серверный контекст" и "обращение к БД" - вообще ничего не пишет... Если запустить ещё одну задачу - валит в лог кучу почти осмысленной инфы...
А от этого - ни гугу...
26 ДенисЧ
 
04.07.11
15:43
Во... Проснулся... 5 часов удалял 500 000 движений...
Это ж очуметь...
27 Amiralnar
 
04.07.11
15:48
Интересная у вас работа, блин...
28 ДенисЧ
 
04.07.11
15:48
(27) сам тащущь...
29 Живой Ископаемый
 
04.07.11
15:50
2(26)ну... удаляет сервер БД... как бы.. и пишет он же.
30 ДенисЧ
 
04.07.11
15:51
(29) Напоминаю: на скуле задач на delete/update нет...
По крайней мере, егоный процесс монитор не показывает. Профайлер тоже молчит, как рыба в стакане...
31 Живой Ископаемый
 
04.07.11
16:03
э... Попробуй тогда с малого...  проведи документ, отмени его проведение - попробуй выцепить что при этом посылает сервер 1С серверу СКЛ, потом что-то более тяжелое - например выгрузи через ВыгрузкаЗагрузкаДанныхХМЛ какой-нибудь регистр сведений с количеством записей наприме сначала 1000 и загрузи - посмотри что пишется в лог при этом...
постепенно какая-то идея о закономерности тебя посетит... :)
32 Живой Ископаемый
 
04.07.11
16:04
В условиях событий можно выставить ИмяПользователяИБ
33 Живой Ископаемый
 
04.07.11
16:05
34 ДенисЧ
 
05.07.11
08:52
Имя пользователя мне не нужно, я один сижу :-)

Навалила она мне пару гигов логов...
И как теперь понять, сколько времени какая команда выполнялась?

Например,

25:39.1055-28278,SDBL,4,process=rphost,p:processName=upp_test,t:clientID=89,t:applicationName=1CV8,t:computerName=SRV009,t:connectID=31,SessionID=24,Usr=Я,Sdbl='UPDATE AccumRgT23190 SET Fld23177 = T.Fld23177 + R.Fld23177, Fld23178 = T.Fld23178 + R.Fld23178, Fld23179 = T.Fld23179 + R.Fld23179, Fld23180 = T.Fld23180 + R.Fld23180, Fld23181 = T.Fld23181 + R.Fld23181 FROM #PRecords R LEFT JOIN AccumRgT23190 T ON R.Period = T.Period AND R.Fld23173 = T.Fld23173 AND R.Fld23174 = T.Fld23174 AND R.Fld23175 = T.Fld23175 AND R.Fld23176 = T.Fld23176 AND T.Splitter = 0',Rows=1,Context='

Когда она была запущена? Когда она закончилась?
35 ДенисЧ
 
16.07.11
20:44
Заметил такую фигню...

Участок из (0) при проведении вне транзакции (есть у РСВ такая штука) выполняется за 4 минуты. В транзакции - 3 часа...
На одной и той же базе, разумеется...

Вот блЪ (через ять)...
36 Kraft
 
17.07.11
13:57
(35) интересно... Не забывай отписываться в процессе
37 Jolly Roger
 
17.07.11
14:41
(0) в твоем снеговике нет замера производительности, что ли?..
38 ДенисЧ
 
17.07.11
14:44
(37) есть, а что?
39 Jolly Roger
 
17.07.11
14:44
(35) проведение вне транзакции? это как это?
вобще, если используется автоматический режим управления блокировками, это похоже на ожидание на блокировках...
40 Jolly Roger
 
17.07.11
14:44
(38) и чо, не помогает?
41 ДенисЧ
 
17.07.11
15:08
(39) В РСВ есть кнопка такая.
(40) Помогает. Показывает на ту же строку. А ЖР позволяет это увидеть онлайн.
42 ДенисЧ
 
17.07.11
15:08
(39) Никаких блокировок, я один в базе.
43 ДенисЧ
 
17.07.11
15:08
+42 и ЦУП тоже блокировок не показывает.
44 Jolly Roger
 
17.07.11
15:39
(41) не понял, на какую строку?
45 ДенисЧ
 
17.07.11
15:53
(44) на СтруктураНаборыЗаписей.УчетЗатрат.Записать();

О чём вся ветка, собственно.
46 Jolly Roger
 
17.07.11
16:07
(45) а в модуле набора записей, в подписках чо-то делается при его записи? регистрация изменений есть?
47 ДенисЧ
 
17.07.11
16:08
(46) пусто. Типовая УПП. Планы обмена... А хз, я в них пока не понимаю...
48 ДенисЧ
 
17.07.11
16:09
Но специально обмены не настраивал. А в типовой - сомневаюсь, что они по умолчанию включены.
49 Jolly Roger
 
17.07.11
16:31
ну значит скуль тормозит. например, реиндексация запущена...
50 ДенисЧ
 
17.07.11
16:51
(49) Какой ты умный...
Ветку пробовал читать?
51 Живой Ископаемый
 
17.07.11
18:00
2(48) не-не, если есть в планах обмена хоть один не ЭтотУзел, и по по этому плану обмена включена авторегистрация - будет писать в таблицы. и настраивать ничего для этого не нужно...
Короче, если есть регистрация изменений, и есть хоть один узел - то да, в таблицы идет запись.
52 ДенисЧ
 
17.07.11
18:02
(51) нет распределенных узлов...
53 ДенисЧ
 
17.07.11
18:02
плюс - скуль не показывает активности.
54 Jolly Roger
 
17.07.11
18:14
(50) ну дык почитал... то что ты один в базе еще не говорит о том что скуль не нагружен. а искать где тормозит скуль с помощью ТЖ - "эта пять"...
55 ДенисЧ
 
17.07.11
18:18
(54) то, что скуль не нагружен - я вижу по его же монитору. К нему подключён только я. Я же не первый день вижу всю эту байду.
А про ТЖ - если в мониторе скуля нет запросов, то кого остаётся подозревать? Правильно, 1с. А для него именно ТЖ и нужен.
56 Живой Ископаемый
 
17.07.11
18:39
(52) тогда наверное не пишет.. но лучше проверить. :) скажем записать что-то и посмотреть таблицу регистрации изменений этого объекта.
57 ДенисЧ
 
17.07.11
18:49
(56) могу псомтреть, если подскажешь, где это смотреть :-)
58 Живой Ископаемый
 
17.07.11
18:53
минутку
59 Живой Ископаемый
 
17.07.11
18:58
вот так средствами 1С:
http://screencast.com/t/opBTYuns9h
60 ДенисЧ
 
17.07.11
19:02
(59) ага. У меня нет в конструкторе ни одной таблицы *Изменения.
Это значит?
61 Живой Ископаемый
 
17.07.11
19:04
либо средствами СКЛ посмотрев на таблицу, имя которой выцепляется например так:
http://screencast.com/t/pgaHsOsM5S

в твоем случае трудности в том, что нужно исследовать кучу регистров а не документ...
====
2(60) это значит что либо ты невнимательно посмотрел ролик, либо я забыл это записать:
http://screencast.com/t/6kEyfnfv
или их нет даже когда ты нажимаешь эту кнопку?
62 Живой Ископаемый
 
17.07.11
19:07
но вообще да, если нет таблицы Изменения, значит и не производятся изменения.. Они появляются сами когда мы что-то с планами обмена делаем
63 ДенисЧ
 
17.07.11
19:08
Да, кнопкку не увидел. Исправвился. В регистре УчетЗатратРегл - пусто.
64 Живой Ископаемый
 
17.07.11
19:09
ну.. :) значит это был отрицательный результат, который тоже результат...
65 ДенисЧ
 
17.07.11
19:12
(64) что я и предполагал :-)
Откуда возьмутся обмены, если их не настраивали?
66 Живой Ископаемый
 
17.07.11
19:14
ну вот у меня на картинке (59) аж 1683 записидля Узла - о котором я ни сном ни духом.. :)
67 Террз
 
18.07.11
10:04
Напишите чем закончатся изыскания. очень интерестно. у самого регулярно РСВ подвисает часов на 15-20 :(
И если не секрет - где такая кнопка - проведение вне транзакции???
68 ДенисЧ
 
18.07.11
10:04
(67) пока ничем не заканчиваются.
А кнопка - в документе, действия...
69 ДенисЧ
 
18.07.11
10:05
70 Террз
 
18.07.11
11:34
(68) - ясно, спасибо. а не подскажите что именно меняется при проведение без транзакции? и на сколько это опасно? (сори за глупые вопросы), но если честно - то достало расчитывать себестоимость в файловой базе и потом грузить в SQL, 1с никаких вразумительных ответов по этому поводу не дала
71 ДенисЧ
 
18.07.11
11:35
(70) пока не знаю :-)
Сам сижу экспериментирую.
А опасность пока вижу в том, что если в рассчитываемом периоде в момент проведения кто-то начнёт документы проводить...
72 Живой Ископаемый
 
18.07.11
11:46
2(70) а как вы это проделываете?
а) Выгружаете ДТ, загружаете  ДТ в файловую, там проводите, выгружаете в ДТ, загружаете в Клиент-Серверную...
б) У вас есть два узла ПолногоПлана обмена, центральная база клиент-серверная, периферия - файловая, вы создаете в файловой документ, проводите его, и потом отправляете в центральную с сообщением обмена.
в) у вас просто есть актуальная копия рабочей клиент-серверной базы в файловом формате, там вы проводите документ, который потом перегружаете в Клиент-серверную абзу при помощи ВыгрузитьЗагрузитьДанныеХМЛ.епф со всеми его движениями?
===
а?
73 Террз
 
18.07.11
12:06
(72) - один узел - выгружаю ДТ  в файловый вариант, расчитываю и загружаю обратно в SQL.
Просто в йаловом варианте месяч расчитывается максимум минут за 30. в SQL иногда и пару дней. При чем забавно получается - в SQL обычно подвисает первичный расчет себестоимости - то есть когда я создаю и провожу этот документ первый раз. все последующие перепроведения документа обычно проходят быстро, не намного медленнее SQL.

Но по факту такая схема уже надоела...
74 Террз
 
18.07.11
12:07
(73) - не намного медленнее файлового варианта имелось ввиду
75 Террз
 
19.07.11
09:48
ДенисЧ - если есть возможность и не трудно - можете посмотреть время перерасчета уже проведенного РСВ? так - интерестно для статистики - будет ли оно отличаться от проведения с "0"
76 Живой Ископаемый
 
19.07.11
10:36
2(73) просто вы бы могли попробовать какую-то из двух других схем...
а вот если второй и последующие разы проводится быстро - это прикольно... это значит что ко второму разу заполняются какие-то кэши, которые при первом разе еще не заполнены...
77 Террз
 
19.07.11
11:10
(76) - тоже думаю про кеши или про какие другие вычисления. хочу набрать статистики.

по поводу других вариантов - сейчас из-за пары удаленных подразделений будем вводить РИБ, попробуем Б вариант.

на счет В - пока размер базы позволяет выгружать в файловый вариант - будем им пользоваться (правда версионирование было почти сразу же отключено :) )

и будем эксперементировать в сторону тогда расчета вне транзакции