• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

тормоза при открытии View

  • Автор темы Fugitive
  • Дата начала
Статус
Закрыто для дальнейших ответов.
F

Fugitive

Не так давно в нескольких представлениях создал невидимую колонку как цвет, чтобы по условию строки имели другой цвет. Теперь почему-то при открытии этих view появляются страшые тормоза. Сначала мигает надпись "opening", а потом "rebuilding index". Соверошенно точно тормоза из-за цвета. Убирал колонки - вьюхи нормально открывались, добавляю - опять тормоза. Обновление всех вьюх через ctrl+shift+F9 помогает на 5 минут. В базе около 200 000 записей. Заметил еще особенность: в начале дня такие тормоза не наблюдаются, может это связано с загрузкой сервера ?
Главный вопрос что происходит с индексами вьюшек при добавлении цвета ??
Вот формула цвета: @If(@Date(@Now)=@Date(Plan) & @Time(plan)<@TextToTime("18:00");253:234:244:0:0:0;0:0:0)
 
D

Domino6

Это не цвет а формула @Now тормозит :
- постоянное вычисление
- постоянное переиндексирование

Решение:
- перенести формулу вычисления из колонки вида в поле документа
 
30.05.2006
1 345
12
BIT
0
Это не цвет а формула @Now тормозит :
- постоянное вычисление
- постоянное переиндексирование

Решение:
- перенести формулу вычисления из колонки вида в поле документа
Не, они-ж именно сегодняшние хотят подкрашивать. Ежедневно перевычислять все и пересохранять вчерашние и сегодняшние док-ты агентом? Накладно, но можно. Правда, все даты обновления и "подписи" ($UpdatedBy) уйдут..
Мне больше нравится раз в сутки пересохранять саму Вьюху! (заменяя в формулах @Now на текущую дату: "["+@Text(@Now)+"]"). Т.о. вьюха полностью пересчитывается один раз в день
 
D

Domino6

<!--QuoteBegin-Constantin A Chervonenko+27:07:2006, 18:04 -->
<span class="vbquote">(Constantin A Chervonenko @ 27:07:2006, 18:04 )</span><!--QuoteEBegin-->Правда, все даты обновления и "подписи" ($UpdatedBy) уйдут..
[snapback]41145" rel="nofollow" target="_blank[/snapback]​
[/quote]
Если подписано сервером и опция на базу то останутся прежнии
<!--QuoteBegin-Constantin A Chervonenko+27:07:2006, 18:04 -->
<span class="vbquote">(Constantin A Chervonenko @ 27:07:2006, 18:04 )</span><!--QuoteEBegin-->Мне больше нравится раз в сутки пересохранять саму Вьюху! (заменяя в формулах @Now на текущую дату: "["+@Text(@Now)+"]"). Т.о. вьюха полностью пересчитывается один раз в день
[snapback]41145" rel="nofollow" target="_blank[/snapback]​
[/quote]

Тогда уже лутше так
Код:
@if(@Right(@Lowercase(@text(DateTimeField;"S3"));" ")="cегодня":"today";"ДА";"НЕТ")

и нет никаких вичислений сегодняшней даты
 
30.05.2006
1 345
12
BIT
0
Если подписано сервером и опция на базу то останутся прежнии
Тогда уже лутше так
Код:
@if(@Right(@Lowercase(@text(DateTimeField;"S3"));" ")="cегодня":"today";"ДА";"НЕТ")

и нет никаких вичислений сегодняшней даты
Правильно. Перевычислений нет совсем! И почему назавтра вчерашние док-ты сменят окраску? То-то и оно...
Перевычислять даты надо, но не непрерывно, а раз в день
 
D

Domino6

<!--QuoteBegin-Constantin A Chervonenko+27:07:2006, 22:12 -->
<span class="vbquote">(Constantin A Chervonenko @ 27:07:2006, 22:12 )</span><!--QuoteEBegin-->Правильно. Перевычислений нет совсем! И почему назавтра вчерашние док-ты сменят окраску? То-то и оно...
[snapback]41167" rel="nofollow" target="_blank[/snapback]​
[/quote]
Потому-что индекс вида не обновлен
 
30.05.2006
1 345
12
BIT
0
Потому-что индекс вида не обновлен
И не обновится. Документ не менялся - индексировать нечего. Даже ручками - не сработает. Только после уничтожения индекса он будет перестроен с учетом текущей даты
 
D

Domino6

<!--QuoteBegin-Constantin A Chervonenko+28:07:2006, 08:38 -->
<span class="vbquote">(Constantin A Chervonenko @ 28:07:2006, 08:38 )</span><!--QuoteEBegin-->И не обновится. Документ не менялся - индексировать нечего.
[snapback]41192" rel="nofollow" target="_blank[/snapback]​
[/quote]
а причем тут изменение документа индекс можно удалять после использования индекс можно удалять и перестраивать после 1-дня главное настроить опции индекса вида конечно если стоит не удалять индекс то он никогда с мертвой точки(неизмеенных документолв) не перстроится
 
F

Fugitive

главное настроить опции индекса вида конечно если стоит не удалять индекс то он никогда с мертвой точки(неизмеенных документолв) не перстроится

А как настраивать и удалять индекс к конкретному виду ?
 
D

Domino6

<!--QuoteBegin-Fugitive+28:07:2006, 09:15 -->
<span class="vbquote">(Fugitive @ 28:07:2006, 09:15 )</span><!--QuoteEBegin-->А как настраивать и удалять индекс к конкретному виду ?
[snapback]41200" rel="nofollow" target="_blank[/snapback]​
[/quote]
В дизайнере в свойтсвах вида
 
F

Fugitive

А если сравнивать вот так: @If(@TextToTime("today")=@Date(Plan) & @Time(plan)<@TextToTime("18:00");253:234:244:0:0:0;0:0:0)

Эффективно это ?
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!