Разная скорость выполнения запроса под разными пользователями. Почему? #293413


#0 by hopter
Имеется простенький запрос. Выполняется в УПП. Платформа 8.0.18.2. Файловый вариант. Так вот эта зараза работает с разной скоростью под разными пользователями. Через консоль запросов под админом менее 1сек., под другим пользователем около 2-х и чуть более секунд. Неужели так сильно влияют роли? У админа включены все, у юзера выборочно, причем у юзера присутствует роль "полные права" (пока надо для настройки).    ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.Склад
#1 by ТелепатБот
#2 by TormozIT
Кури RLS на склады и партии товаров
#3 by RomaH
а они разве должны использоваться если "у юзера присутствует роль "полные права"?
#4 by TormozIT
По логике не должны. Тут ты прав. Однако опыт показывает, что платформа не всегда отвечает правилам логики.
#5 by TormozIT
В каком контексте выполняется запрос. Если в коде, то приведи программу обработки его результата с указанием времени выполнения желательно.
#6 by Drock
берет права юзера, точнее проверяет, если есть другие права кроме полных
#7 by Wladimir_spb
На случай, если надо что-то ограничить... :)
#8 by hopter
запрос через консоль запросов выполняешь и уже разное время. Без всякой дополнительной обработки. Либо создаем внешнюю обработку, вставляем код Под админом Запрос.Выполнить работает ~0.6 сек, под юзером ~1.7 Вот такие дела.
#9 by Wladimir_spb
Попробуй выполнить в привелигерованом модуле
#10 by Drock
убери у юзера все права кроме полных и проверь
#11 by hopter
не понял, что значит в "привелигерованом модуле"?
#12 by Wladimir_spb
Опечатка должно быть "привилегированном модуле" )
#13 by Wladimir_spb
Модуль, все процедуры которого выполняются без контроля прав.
#14 by hopter
прошу прощения за тупость, но как модуль таким сделать? если все убрать кроме полных, то ноль эффекта, а вот если наоборот все поставить, то работает как и под админом :) Глюк :(
#15 by Wladimir_spb
Галочку в свойствах поставить. ЗЫ это свойство общих модулей
#16 by hopter
так это общих смысл?
#17 by hopter
сорри, по ошибке ткнул  "рекомендовать в базу..."
#18 by Wladimir_spb
смысл в
#19 by hopter
я к тому, что это совсем неудобно получается система работает через ж... хочешь нормальной скорости, пихай все в общие модули с привилегиями :( не знаю как там 8.1, но получается, что 8.0 при работе со своими ролями тупит безбожно разочарован
#20 by Wladimir_spb
То что RLS серьезно тормозит систему известно довольно давно...
#21 by hopter
я на восьмерке недавно :)
#22 by hopter
Последние эксперименты привели к неутешительным результатам. Информация приведенная в для не совсем достоверна. Прирост производительности при включении всех ролей незначителен, сегодня с утра проверил более тщательно. Все равно время выполнения запроса под юзером почти в два раза больше, чем под админом. Вынос выполнения запроса в привилегированный модуль не дает большого эффекта. Еще одна поганая штука - взял другого юзера с такими же правами, скорость еще ниже. У меня крыша едет, ничего не понимаю :(
#23 by Diman000
Забей на файловый варианта. Юзай сикульный и посмотри как там работает. И, вообще, зачем УПП в файловом варианте? Двум пользователям работать?
#24 by hopter
У меня сейчас все на этапе отладки :) Непосредственно в данный момент работают очень мало пользователей. Сиквел есть, но пока нет смысла переводить на него, есть свои объективные причины. Сам факт, что столкнулся с такой хренью, напрягает. Я как-то отошел от 1с, а теперь снова влез, уже на восьмерку, и снова вижу глюки. Ничего не меняется в этом мире :))
#25 by RomaH
а "пользователем" под каким юзером от виндов работаешь?
#26 by hopter
Юзер винды один и тот же. Просто при запуске выбираю разных пользователей в упп. Тестирую на локальной базе.
#27 by Diman000
LOL! Ты в УПП собрался работать в файловом режиме что ли? Забудь про это сразу. Это раз. В режиме отладки надо работать именно на той версии движка с которой ты будешь работать в реале. Это два.
#28 by Diman000
+ В SQL версии как-то проще понять, что творится с запросом, так как есть профайлер
#29 by marvak
Перевод базы на скуль занимает от 10 до 30 минут.
#30 by hopter
Я написал, есть свои причины. И нечего живот надрывать :) Я понимаю, когда начинаешь оптимизировать работу, но когда одинаковый код работает с разной скоростью, это писец. :) Придется лезть в профайлер, а лениво :)
#31 by hopter
особенно когда все готово и надо просто выгрузить и загрузить базу :) займусь уже завтра с утра.
#32 by hopter
Перекинул базу на скуль. Все работает хорошо, под всеми пользователями. Профайлер показал, что "Результат = Запрос.Выполнить;" дает одинаковый код, следовательно в файловой версии есть какой-то глюк, завязанный на пользователей. На самом деле проблема не решена. Это в моем случае все равно база на скуле будет, а если у кого файловый вариант, то иногда будут ловится необъяснимые глюки.
#33 by Diman000
Насчет файлового варианта напиши в техсаппорт 1С. А УПП в файловом варианте все равно будет только у очень заядлых мазохистов. Хотя, может тут и не в УПП дело... P.S. Посмотрел на номер релиза. Предвижу ответ саппорта: "воспроизводится ли ошибка на релизе 8.1.8.76?"
#34 by hopter
Регистр - он и в упп, и в бухгалтерии регистр А с саппортом не охота общаться. Действительно пошлют на 8.1.8, как расписано на сайте она вся такая оптимизированная :)
#35 by Diman000
Согласен насчет регистра, но задавать вопросы по 8.0 действительно уже как-то поздновато. Все равно на 8.1 все будем уже очень скоро. Попробуй на 8.1 файловой как там твой запрос работает, интересно же! ;-) Если тенденция сохранится, то в саппорт! Если тебе лень, выкладывай последовательность воспроизведения сабжа - я напишу, я с ними частенько воюю, привык уже ;-)
#36 by hopter
Попробовал на 8.1.7. Глюк не наблюдается, работает нормально. Так что не будет у тебя лишнего повода повоевать :) На этой мирной ноте и закрываем тему. :)
#37 by OrsoBear
Здравствуйте, не видел ранее этой ветки форума, потому завел другую. Хотел узнать, что думете по этому поводу: тестирую в однопользовательстком режиме.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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