Отладка хранимой процедуры VOLT DB
У меня установлен voltdb на удаленной машине. Я хотел бы знать, как я могу отладить хранимую процедуру, которую я пишу. Чтобы быть конкретным, я хотел бы видеть значения различных переменных в разные моменты времени. Есть ли какой-либо механизм регистрации или отображения контента на терминале (например, поднять уведомление в netizza).
1 ответ
На этой вики-странице " Использование Eclipse для разработки и отладки клиентских приложений VoltDB" проекта voltdb в Github описывается, как это настроить с помощью отладчика в Eclipse.
Если вы ищете что-то очень простое для устранения неполадок командной строки, есть несколько вариантов, но мы не рекомендуем добавлять вызовы к log4j в хранимых процедурах. Это для временного использования и должно быть впоследствии удалено:
Используйте вызовы System.out.println() в процедуре и запустите VoltDB из консоли, чтобы увидеть выходные данные. Вызовите процедуру вручную. Если вы делаете много вызовов для процедуры, это не будет очень полезно.
Создайте таблицу и используйте вставки в процедуре для записи сообщений, значений переменных или всего, что вы хотите отслеживать в процедуре. Это может обрабатывать множество вызовов, так как вы можете запросить таблицу после выполнения рабочей нагрузки и даже создать представление для агрегирования результатов. Я использовал это больше для таких вещей, как подсчет наносекунд, прошедших в ходе выполнения процедуры в различных точках, подсчет случаев, когда в процедуре были достигнуты определенные логические точки, или подсчет промежуточных записей, возвращаемых в процедуре, как правило, только для очень сложных процедур., Это не поможет, если ваша процедура приведет к ошибке, потому что вставки будут откатываться, так что это ограниченное использование.