Скульная глючная фича
|
|||
---|---|---|---|
#18+
Код: SQL 1.
Фигня получается. Если считать сколько дней прошло с момента рождения Исуса Иосифовича, то неточность в 10 дней набегает. ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 20:29 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
SandalTree 09.11.2021, 20:29 Код: SQL 1.
Фигня получается. Если считать сколько дней прошло с момента рождения Исуса Иосифовича, то неточность в 10 дней набегает. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 20:33 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Тут спрошу по скулю. Короче запрос писал вчера. Там надо было два джойна к таблицам в другой базе левых сделать. В исходной времянке в запросе порядка 100 тыс записей. Короче сам запрос отрабатывал почти моментально. Но если два джойна к другой баз сделать в этом запросе, то я не дожидался окончания его работы. И плана актуального не смог посмотреть. Блокировок не было. Данных в тех таблицах (в другой базе) по паре лямов было. Ну не сильно больше. Если их залить отдельно во времянку и к ней сджойнить, то тоже все летает. Чо это было? Sql server 2017 ... |
|||
:
Изменено: 09.11.2021, 20:48 - WildMage
Нравится:
Не нравится:
|
|||
09.11.2021, 20:46 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Программизд 02 09.11.2021, 20:33 SandalTree 09.11.2021, 20:29 Код: SQL 1.
Фигня получается. Если считать сколько дней прошло с момента рождения Исуса Иосифовича, то неточность в 10 дней набегает. Собственно, если подсчитать точное количество времени с этого события, то там ошибка вообще нарастёт до умопомрачения. Предлагаю сделать в скуле новую функцию SpecialDate. туда загоняешь то что тебе надо, и можешь юзать результат. Цитата SELECT DATEDIFF(DAY,SpecialDate('Peisah'),SpecialDate('Rojdestwo')); ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 20:47 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Дед-Попыхтет знаешь чё по вопросу выше?(моему посту) ... |
|||
:
Изменено: 09.11.2021, 20:49 - WildMage
Нравится:
Не нравится:
|
|||
09.11.2021, 20:48 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
WildMage 09.11.2021, 20:46 Тут спрошу по скулю. Короче запрос писал вчера. Там надо было два джойна к таблицам в другой базе левых сделать. В исходной времянке в запросе порядка 100 тыс записей. Короче сам запрос отрабатывал почти моментально. Но если два джойна к другой баз сделать в этом запросе, то я не дожидался окончания его работы. И плана актуального не смог посмотреть. Блокировок не было. Данных в тех таблицах (в другой базе) по паре лямов было. Ну не сильно больше. Если их залить отдельно во времянку и к ней сджойнить, то тоже все летает. Чо это было? Sql server 2017 2. однозначно что планы у времянки и "другой базы" разные 3. можно глянуть на разницу в планах и понять в чём проблема 4. поняв проблему можно подоткнуть хинты или достроить индексы - оба варианта - говно. 5. Поэтому для разных баз/серверов придумали ETL, но он не предназначен к летанию. Поэтому (постоянные) времянки рулят. ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 20:55 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
SandalTree 09.11.2021, 20:55 WildMage 09.11.2021, 20:46 Тут спрошу по скулю. Короче запрос писал вчера. Там надо было два джойна к таблицам в другой базе левых сделать. В исходной времянке в запросе порядка 100 тыс записей. Короче сам запрос отрабатывал почти моментально. Но если два джойна к другой баз сделать в этом запросе, то я не дожидался окончания его работы. И плана актуального не смог посмотреть. Блокировок не было. Данных в тех таблицах (в другой базе) по паре лямов было. Ну не сильно больше. Если их залить отдельно во времянку и к ней сджойнить, то тоже все летает. Чо это было? Sql server 2017 2. однозначно что планы у времянки и "другой базы" разные 3. можно глянуть на разницу в планах и понять в чём проблема 4. поняв проблему можно подоткнуть хинты или достроить индексы - оба варианта - говно. 5. Поэтому для разных баз/серверов придумали ETL, но он не предназначен к летанию. Поэтому (постоянные) времянки рулят. ... |
|||
:
Изменено: 09.11.2021, 20:58 - WildMage
Нравится:
Не нравится:
|
|||
09.11.2021, 20:57 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Когда через линк если обращаешься, бывает тормознее, если бы на прямую обращался к таблице. Но тут то просто разные бд на одном сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 20:59 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
WildMage 09.11.2021, 20:57 SandalTree 09.11.2021, 20:55 WildMage 09.11.2021, 20:46 ... 2. однозначно что планы у времянки и "другой базы" разные 3. можно глянуть на разницу в планах и понять в чём проблема 4. поняв проблему можно подоткнуть хинты или достроить индексы - оба варианта - говно. 5. Поэтому для разных баз/серверов придумали ETL, но он не предназначен к летанию. Поэтому (постоянные) времянки рулят. Лукап, на даже средних обьёмах, пипец какой тормозной. Оно понятно? ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:44 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
WildMage 09.11.2021, 20:46 Тут спрошу по скулю. Короче запрос писал вчера. Там надо было два джойна к таблицам в другой базе левых сделать. В исходной времянке в запросе порядка 100 тыс записей. Короче сам запрос отрабатывал почти моментально. Но если два джойна к другой баз сделать в этом запросе, то я не дожидался окончания его работы. И плана актуального не смог посмотреть. Блокировок не было. Данных в тех таблицах (в другой базе) по паре лямов было. Ну не сильно больше. Если их залить отдельно во времянку и к ней сджойнить, то тоже все летает. Чо это было? Sql server 2017 ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:46 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
WildMage 09.11.2021, 20:59 Когда через линк если обращаешься, бывает тормознее, если бы на прямую обращался к таблице. Но тут то просто разные бд на одном сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:47 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Дед-Попыхтет 09.11.2021, 21:47 WildMage 09.11.2021, 20:59 Когда через линк если обращаешься, бывает тормознее, если бы на прямую обращался к таблице. Но тут то просто разные бд на одном сервере. Скорее всего там всё по дефолту. (судя по уровню персонала) ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:53 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
План оценочный увидеть проще будет чем гадать ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:55 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Дед-Попыхтет 09.11.2021, 21:55 Однако, проблема уже решена и WildMage вопрошал "что это могло быть?" Грубо: занимаемся сборкой хрустального шара из разбитого чёрного квадрата. ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 21:58 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
SandalTree 09.11.2021, 21:58 Причина - сначала я думал что кроссерверный запрос - в этом случае оптимизатор априори не сможет оценить статистику удаленных таблиц. Позже прочитал что на одном инстансе. В этом случае некорректный план из-за некорректной статистики по индексам. Скорее всего в основных таблицах индексы другие чем во временной... Хз может seek+lookup выбрал, может порядок соединений. Здесь для исправления может помочь что-то 1. sp_updatestats 2.hint - option(fast 1) 3. Другие хинты ... |
|||
:
Нравится:
Не нравится:
|
|||
09.11.2021, 22:08 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Дед-Попыхтет 09.11.2021, 22:08 SandalTree 09.11.2021, 21:58 Дед-Попыхтет 09.11.2021, 21:55 ... Однако, проблема уже решена и WildMage вопрошал "что это могло быть?" Грубо: занимаемся сборкой хрустального шара из разбитого чёрного квадрата. Причина - сначала я думал что кроссерверный запрос - в этом случае оптимизатор априори не сможет оценить статистику удаленных таблиц. Позже прочитал что на одном инстансе. В этом случае некорректный план из-за некорректной статистики по индексам. Скорее всего в основных таблицах индексы другие чем во временной... Хз может seek+lookup выбрал, может порядок соединений. Здесь для исправления может помочь что-то 1. sp_updatestats 2.hint - option(fast 1) 3. Другие хинты Поэтому нужто добавить "(FORCESCAN)" к табличке из другой базы. Тем более что этот процесс одноразовый. ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
09.11.2021, 22:22 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
Сейчас посмотрел. У баз разные уровни совместимости. Видимо другую базу мигрировали откудато-то на этот сервак. Да так и оставили. ... |
|||
:
Изменено: 10.11.2021, 05:34 - WildMage
Нравится:
Не нравится:
|
|||
10.11.2021, 05:33 |
|
Скульная глючная фича
|
|||
---|---|---|---|
#18+
WildMage 10.11.2021, 05:33 Сейчас посмотрел. У баз разные уровни совместимости. Видимо другую базу мигрировали откудато-то на этот сервак. Да так и оставили. Если скажем линк был по INT то какая хер разница. С другой стороны, если по текстовому полю, и с разными коллэйшенами, то тогда не использовались-бы индексы, а это значит что было-бы полное сканирование таблиц, что было-бы достаточно быстро. ... |
|||
А вы шо думали, всё так просто?
:
Нравится:
Не нравится:
|
|||
10.11.2021, 05:38 |
|
Start [/forum-old/topic.php?fid=2&tid=69389]: |
0ms |
get settings: |
1ms |
get forum list: |
3ms |
check forum access: |
0ms |
check topic access: |
0ms |
track hit: |
36ms |
get topic data: |
11ms |
get forum data: |
1ms |
get page messages: |
97ms |
update_topic_read_status (69389): 10.11.2021 05:38:29: |
0ms |
get tp. blocked users: |
2ms |
get online users: |
2ms |
others: | 17ms |
total: | 170ms |
0 / 0 |