Skip to content

Минорный патч 4.16.3

Choose a tag to compare

@ascrus ascrus released this 21 Oct 15:22
· 75 commits to master since this release

Кратко о патче

  • Исправлены ошибки работы с Excel файлами, имеющие не корректные ячейки;
  • Исправлены ошибки работы с JDBC таблицами, имеющими в наименовании символы, на которых теряются JDBC драйвера вендоров;
  • Исправлены ошибки обработки SQL скриптов, в которых неожиданно встречается SELECT, хотя они не возвращают набор данных;
  • Добавлено логирование работы SQLScripter;
  • Расширен функционал скриптового языка;

Dsl фичи

  • main: в options добавлено свойство sqlScriperDebug, при включении которой выполняемый код в sql начинает логировать действия над операторами, который выполняет Sql scripter. Так же эту опцию можно указать в разделе sqlscripter в параметре debug.
  • scripts: в скриптовый язык добавлены функции isNull и nullIf.

Dsl Баги

  • main: при проверке корректности имен объектов репозитория не учитывались следующие специальные символы: перенос и возврат строки, а так же табуляция. Теперь проверка корректно говорит, что таких символов в имени объекта быть не может.
  • main: при использовании конвертации имени в разрешенное имя объекта репозитория могла возникнуть ошибка, где объекты имели разные имена, а получали одинаковые. Например, table@1 и table:1 были бы сконвертированы в table_1 и table_1. Теперь вместо символа подчеркивания, запрещенные к использованию в именовании объектов репозитория символы заменяются на символ подчеркивания, плюс их ascii код.

Getl баги

  • getl.excel.ExcelDriver: при чтении ячеек с типом ERROR возникала ошибка и чтение прерывалось. Теперь таким ячейкам присваивается значение null.
  • getl.h2.H2Driver: при получении списка таблиц по маске таблицы не находились, если маска не была указана в верхнем регистре. Теперь маска не зависит от регистра.
  • getl.jdbc.JDBCDriver: при получении списка таблиц и списка полей первичного ключа не обрабатывались таблицы, у которых в именах присутствовали переносы строк или кавычки. Эта проблема существует на уровне реализации JDBC драйверов вендоров РСУБД. Проблема была решена своим кодом.
  • getl.jdbc.SQLScripter: при выполнении скриптов некоторые операторы (например EXPORT TO VERTICA AS SELECT) могли ошибочно приниматься за оператор SELECT и пытаться получить набор данных при выполнении, что приводило к ошибке. Эта проблема устранена.

Download GETL