main.c:5:19: warning: variable 'size' is uninitialized when used here [-Wuninitialized]
for(int i = 0;i<size;i++)
^~~~
main.c:4:11: note: initialize the variable 'size' to silence this warning
int size;
Автор посчитал что 50к строк загружалось около часа. Тоесть это около 14 строк в секунду.
Это - позорная скорость. Не знаю что там за БД и что за структура у этого объекта.
И так жить нельзя.
Смотри. Когда ты делаешь java -version именно в том батнике и именно в том окружении командной
строки тебе будет выдана именно та версия runtime которая будет запускать jar.
karabasina, современная ОС - это целый космос. Она иногда живет своей жизнью. Например Windows толи качает и ставит обновление. Толи ntfs чего-то там передвигает. Толи антивирус. Толи IndexingService решил что-то индексировать в МоиДоки. В Linux возможно тоже есть какие-то процессы. Несколько лет назад у меня почему-то RabbitMq брокер сам по себе стартовал и чего-то делал (в старой версии Ubuntu). На нем какой-то функционал был.
Вобщем проведи еще эксперимент. Перенеси свои задачи на соседний VPS и понаблюдай. Будут ли пики.
Java 19 которую ты включил является как-бы тестовой версией. Она идет как-бы филлером между стабильных 8, 11, 17
Поэтому использовать ее надо только в целях разработки когда ты разработчик и ты исследуешь особые ФИЧИ которые тестируются в рамках этих тестовых релизов. Там - целый ритуал. Надо опциями активировать эти фичи. Но тебе это скорее всего не надо.
Ошибка скорее всего связана с тем что Runtime у тебя ниже чем Java 19 и он не может прочитать хедеры class files.
Поэтому понижай версию компилляции хотя-бы до той которая соотвествует Runtime.
karabasina, смотри. Существует условно 2 класса систем.
1) Системы реального времени.
2) Джобы.
Это деление условние, и между классами (1) и (2) можно протащить бесконечное число градаций серого цвета.
Если твоя задача которая тебя беспокоит относится к (2) типу - то беспокоиться нечего. Джобу будет плевать
на кратковременные пиковые нагрузки. В той области где я работаю джобы тоже вызывают пики нагрузок
но такова природа bigdata. Короткая высокая нагрузка под 100% в течение 30 минут или часа а потом нет
ничего и кластер можно тушить. Короче говоря - забей.
Если у тебя - система реального времени - то она проектируется по другому. И ее метрики производительности
наблюдаются не по загрузке CPU а условно по чек-поинтами которые пробегает бизнес флоу от стартовой
точки до конечной в системе. В этом случае - ты меряешь не загрузку CPU а пишешь в лог метики.
Например пользователь смотрит котировки запросом и запрос внутри твоей системы работает 1 милисекунду.
Вот эту милисекунду ты и пишешь в лог. Потом в графану и наблюдаешь графики. Потом - разбираешся где
чего. Возможно ты попал на maintenance окно когда твоя VPS делает бекап самой себя. Но стартовой
точкой исследований в твоем вопросе должен быть не пик по CPU а именно реальный отклик твоей системы
в милисекундах. Если отклик хороший (суточная 95 процентиль не превышает 1 мс) то все нормально
и беспокоиться не очем.
Мне реверс напоминает археологию. Я не знаю реальных мотиваций которые заставят обычного
разработчика что-то реверсить. Заказа на это - почти нет. Ну да типа греет ощущение что ты такой
себе в черном капюшоне... в маске Гая Фокса сидишь и хачишь игры и Windows. Да только
никому это особо не надо. Для себя - зачем? Пока глаза не выгорят? Или геморр не вырстатет в жопе?
Иди в корпорации и поднимай там зелень каждый день! И главное - с гарантией.
А реверсеры - это странные чудаки. Оставим им их странное хобби. За идею как говорицца...
Похоже ты в поле ID пытаешся запихнуть строку ' Israel 4000 10000 ...'
Причина может быть в неправильно выбранных сепараторах. Обычно это символы запятая или точка
с запятой или вертикальная палочка.