Я условно копирую данные из базы данных MS SQL в Hsqldb и обрабатываю их в своей Java-программе.
Проблема в том, что после обработки некоторого количества записей (оно различается при каждом запуске) Я получаю следующее исключение
Вызвано: java.sql.SQLSyntaxErrorException: пользователю не хватает привилегий или объект не найден: MYTABLE в оператореЯ видел много тем, в которых упоминалась эта проблема, но в этих случаях проблема заключалась в том, что таблица вообще не создавалась в hsqldb из-за какой-то синтаксической проблемы или около того. Но здесь таблица присутствует (была) до какого-то момента, и в каком-то случайном месте Hsqldb начинает ее выдавать. Вначале я даже проверил, что все записи присутствуют в таблице Hsqldb, используя журналы. Я не могу выполнить отладку, поскольку проблема возникает только при наличии большого количества записей, поэтому я не могу воспроизвести ее в своей локальной среде, и это происходит только в более высоких средах, где обрабатываются большие объемы данных.< /p>
Такое поведение прерывистое, в некоторых исполнениях оно может вообще не возникать, а иногда такое случается только для некоторых записей.
В чем может быть корень причина этого?
Я использую
java 8 |
hibernate-core-5.4.32 |
hsqldb- 2.4.0 (в памяти)
Изменить: в Stacktrace нет ничего особенного, кроме исключения спящего режима и серии исключений, основное исключение «Вызвано: java.sql. SQLSyntaxErrorException: пользователю не хватает привилегий или объект не найден: MYTABLE в заявлении: «Я могу опубликовать здесь полную трассировку стека по соображениям конфиденциальности/безопасности, а полная трассировка стека ни к чему не приводит, как я уже упоминал.
Что мне было интересно, так это то, как таблица внезапно не найдена, поскольку процесс читал из нее всего минуту назад, а затем это выбрасывается. Опять же, через некоторое время таблица возвращается, а оставшиеся записи не попадают в это исключение.
Я читал из нескольких источников, что причина может быть в версии hsqldb (до версии 2.x). вроде все в порядке) а я все еще расследую этот вопрос. Другой возможной причиной может быть: нехватка памяти или других ресурсов может привести к нестабильной работе базы данных и потере отслеживания таблицы.
Я просто хотел знать, сталкивался ли кто-нибудь с чем-то подобным. Я опубликую решение, если мы (надеюсь) сможем решить эту проблему.
Спасибо.
Подробнее здесь: https://stackoverflow.com/questions/787 ... rmittently