|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79 Андрей Панфилов asv79, а нет, с таким кодом (раз карты не шарятся) больше похоже что в e.getStep() приходит 0 и оно в бесконечный цикл уходит. очень похоже на бесконечный цикл залез в бд есть 4 записи с step=0 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 01:04 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Андрей Панфилов asv79, да кто же знает какая там у тебя логика, написал 100.0 - оно вместо java.lang.ArithmeticException стало Infinity отдавать, а может там вообще отрицательные значения думаю ты прав- все на это и указывает что система на какой то момент уходит в бесконечный цикл в базе имеется 4 таких записи с нулевым step видимо я на них и напарывался - и появились они недавно,так как раньше просто не было такой проблемы сейчас закинул тернарник если 0,то ставим 1,посмотрим что будет ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 01:07 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79, А в отладчике нажать кнопку Стоп и увидеть что код "в бесконечном цикле" не работает что ли? Ну или то что вызов myFunctionWhile() занимает 100 процентов времени ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 07:16 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
>"в базе имеется 4 таких записи с нулевым step" = как неожиданно то. Не утечка памяти. И не блокировка потоков. А просто БД виновато.)) ... Если причина в этом, то в нормальных фирмах не может в бд появится ноль из за ограничений модели. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 07:31 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Это к моему комментарию о том что надо искать простое объяснение бага. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 09:07 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp >"в базе имеется 4 таких записи с нулевым step" = как неожиданно то. Не утечка памяти. И не блокировка потоков. А просто БД виновато.)) ... Если причина в этом, то в нормальных фирмах не может в бд появится ноль из за ограничений модели. это побочный эфект миграции из монго в постгрес.Тут надо задать вопрос деятелем ,отвечающим за монго данные,почему в монго в step лежит 0 ну и хороший пример того,что лучше итерацию - если вы используете какие то переменные для нее - проверить на 0. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 09:49 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, А в отладчике нажать кнопку Стоп и увидеть что код "в бесконечном цикле" не работает что ли? Ну или то что вызов myFunctionWhile() занимает 100 процентов времени про бесконечный цикл ты конечно загнул - сейчас то легко говорить - когда нашли причину. Собственно ты там выше что нам пел как соловей- БАЗА БАЗА БАЗА ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:04 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79, Модель странная само собой. Но почему ты полностью игнорируешь в топиках работу с бд, и влияние бд на проект, это вопрос лично к тебе. Ведь второй уже топик где у тебя отвращение к субд. Не было ответов на вопрос - как вырубить из юз кейса влияние обоих бд - как найти самую часто вызываемую или самую длительную функцию (зацикливание) - почему не нажал кнопку Стоп выполнения в отладке - почему в проекте нед логирования (мы не видели) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:09 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79 PetroNotC Sharp asv79, А в отладчике нажать кнопку Стоп и увидеть что код "в бесконечном цикле" не работает что ли? Ну или то что вызов myFunctionWhile() занимает 100 процентов времени про бесконечный цикл ты конечно загнул - сейчас то легко говорить - когда нашли причину. Собственно ты там выше что нам пел как соловей- БАЗА БАЗА БАЗА Ты и сейчас не знаешь как это сделать. Готовь грабли на след раз ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:12 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Вот тут совершенно идиотский ответ ТС на просьбу дать самую тяжелую функцию. 22310274 https://ru.m.wikipedia.org/wiki/Профилирование_(информатика) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:20 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp asv79, Модель странная само собой. Но почему ты полностью игнорируешь в топиках работу с бд, и влияние бд на проект, это вопрос лично к тебе. Ведь второй уже топик где у тебя отвращение к субд. Не было ответов на вопрос - как вырубить из юз кейса влияние обоих бд - как найти самую часто вызываемую или самую длительную функцию (зацикливание) - почему не нажал кнопку Стоп выполнения в отладке - почему в проекте нед логирования (мы не видели) про модель понятно - там все делалось на коленке как найти самую частую и длительную функцию я не знаю - было бы неплохо если бы рассказал ( без сарказма) логирования есть ,но минимальное почему не нажал стоп? потому что я думал что проблема вообще в не этом - сначала думал на память,потом на дедлок и тд,но только не на замкнутый цикл - ну и собственно там настолько сложная вложенность - что я сомневаюсь смог бы я увидеть это ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:28 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79, >как найти самую частую и длительную функцию я не знаю - было бы неплохо если бы рассказал ( без сарказма) = я знаю как в шарпе и постгре. Тут не знаю. Профи подскажут. >почему не нажал стоп? потому что я думал что проблема вообще в не этом ==))))))))))))))) Я так и думал. Тебе некогда было. Ты за петро гонялся. Я эту кнопу очень часто нажимаю. Как без них то. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:34 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
asv79, >настолько сложная вложенность - что я сомневаюсь смог бы я увидеть это = показывай.... Вместе со стеком. Чем занят комп. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:36 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Не верю что тут никто не профилировал java по тяжести методов вызовов. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 10:38 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
OFF/2 Что касается профилировки в шарпе и посгри Постгри - выставить флаг log_min_duration_statement=3000 В логах бут все тяжелые запросы более 3сек Шарп - IDE - Analyze - Perfofmance Profiler - указать проект. Получем ДЕРЕВООБРАЗНЫЙ вид всех вызываемых методов с тяжестью-временем. Java -? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:07 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Постгри - выставить флаг log_min_duration_statement=3000 В логах бут все тяжелые запросы более 3сек А какой смысл вкладывается в duration? В SQL-Запросах есть фаза execution когда данные сортируются джойнятся и группируются. И есть фаза fetch когда курсор уже начинает выдавать в сеть строки row-by-row. У Стаса КМК - имеет место второй тип нагрузки когда execution очень быстрый. Но долго занимает fetch. Он же там всю базу куда-то переливает. Тоесть если фильтровать по log_min_duration_statement то там может быть ничего и не будет. Т.к. фаза исполнения курсора (ожидание его до выдачи первой строки) будет быстрой. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:29 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
mayton, Выше было Офф пополам. Это значит вопрос не стаса а Профилирование "чем занят комп". Вопрос как это сделать в java?)) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:41 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
mayton А какой смысл вкладывается в duration? ... И есть фаза fetch когда курсор уже начинает выдавать в сеть строки row-by-row. AFAIK постгрес не Oracle, он все одним куском шлет. p.s. могу заблуждаться ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:42 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, Не вникая в тонкости можно представить что в бесконечном цикле идет запрос select 1 from dual ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:44 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev mayton А какой смысл вкладывается в duration? ... И есть фаза fetch когда курсор уже начинает выдавать в сеть строки row-by-row. AFAIK постгрес не Oracle, он все одним куском шлет. p.s. могу заблуждаться По разному. Там кажется зависит от опций ResultSet. У меня даже был баг когда jdbc драйвер PG вызывал OOM Exception. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 11:49 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Возвращаемся к профилированию тяжелых процедур. Вариант1 Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Инструмент - JFR https://www.baeldung.com/java-flight-recorder-monitoring ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 12:13 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
Я думал, что проблема не там(с) - давно так не смеялся,до слез фактически. Фраза просто в меморис. Действительно - зачем дебажить, взглянул разок на код и понятно как он работает) ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 12:33 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Не верю что тут никто не профилировал java по тяжести методов вызовов. в бою это нафиг не уперлось: - для знакомого кода достаточно пары-тройки дампов потоков, чтобы "угадать" что там происходит - для новичков какой-нить flamegraph подойдет ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 14:39 |
|
Блокировка потоков
|
|||
---|---|---|---|
#18+
PetroNotC Sharp Что то неверится. Чем плохо тут даже если повезет найти продуктовую среду, к которой удастся подключиться этой хренью (давно видели врубленный JMX-то?) через пачку VPN и джамп-хосты, то оно жаву завалит еще до отображения первых картинок, поэтому для прода основной инструмент - это дампы потоков и памяти (нужно только Operations научить их делать), а профайлер разве что для разработки подходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.04.2021, 14:52 |
|
|
start [/forum/topic.php?fid=59&msg=40063793&tid=2120472]: |
0ms |
get settings: |
4ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
29ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
383ms |
get tp. blocked users: |
0ms |
others: | 5ms |
total: | 432ms |
0 / 0 |