Прочитать на английском

Поделиться через


INCONSISTENT_BEHAVIOR_CROSS_VERSION error condition

SQLSTATE: 42K0B

Вы можете получить другой результат из-за обновления системы до новой версии.

DATETIME_PATTERN_RECOGNITION

Spark >= 3.0:

Не удается распознать <pattern> шаблон в DateTimeFormatter.

  1. You can set <config> to "LEGACY" to restore the behavior before Spark 3.0.

  2. You can form a valid datetime pattern with the guide from '<docroot>/sql-ref-datetime-pattern.html'.

DATETIME_WEEK_BASED_PATTERN

Spark >= 3.0:

Все шаблоны на основе недели не поддерживаются, так как Spark 3.0 обнаружил символ на основе недели: <c>

Вместо этого используйте функцию SQL EXTRACT.

PARSE_DATETIME_BY_NEW_PARSER

Spark >= 3.0:

Не удается разобрать <datetime> в новом синтаксическом анализаторе.

You can set <config> to "LEGACY" to restore the behavior before Spark 3.0, or set to "CORRECTED" and treat it as an invalid datetime string.

READ_ANCIENT_DATETIME

Spark >= 3.0:

считывание дат до 1582-10-15 или меток времени до 1900-01-01T00:00:00Z

from <format> files can be ambiguous, as the files may be written by

в Spark 2.x или устаревших версиях Hive, в которых используется устаревший гибридный календарь,

that is different from Spark 3.0+'s Proleptic Gregorian calendar.

Дополнительные сведения см. в SPARK-31404. Вы можете задать SQL конфигурацию <config> или

the datasource option <option> to "LEGACY" to rebase the datetime values

w.r.t. the calendar difference during reading. To read the datetime values

as it is, set the SQL config <config> or the datasource option <option>

to "CORRECTED".

Подлежит уточнению

Spark >= <sparkVersion>: <details>

WRITE_ANCIENT_DATETIME

Spark >= 3.0:

writing dates before 1582-10-15 or timestamps before 1900-01-01T00:00:00Z into <format> files can be dangerous, as the files may be read by Spark 2.x or legacy versions of Hive later, which uses a legacy hybrid calendar that is different from Spark 3.0+'s Proleptic Gregorian calendar.

Дополнительные сведения см. в SPARK-31404.

You can set <config> to "LEGACY" to rebase the datetime values w.r.t. the calendar difference during writing, to get maximum interoperability.

Or set the config to "CORRECTED" to write the datetime values as it is, if you are sure that the written files will only be read by Spark 3.0+ or other systems that use Proleptic Gregorian calendar.