При создании таблицы склеивания с использованием terraform я получаю следующее сообщение об ошибке
at 'table.storageDescriptor.columns.5.member.type' failed to satisfy constraint: Member must satisfy regular expression pattern: [\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*;
Тип столбца terraform выглядит следующим образом:
struct<
subscriber_id:string,
price_plan_id:string,
usage_rate_id:string,
entitlement_id:string,
charged_gl:string,
uncharged_gl:string,
audit_trail:array<
struct<
time:string,
outcome_details:array<
struct<balance_id:array<string>,
balance_delta:string,
event_type:string,
invoice_text:string>>>>>
Я сохранил отступы для удобства чтения.Когда я изменяю это на уменьшенную версию, как показано ниже, ошибка исчезает.
struct<subscriber_id:string,price_plan_id:string,usage_rate_id:string,entitlement_id:string,charged_gl:string,uncharged_gl:string,audit_trail:array<struct<time:string,outcome_details:array<struct<balance_id:array<string>,balance_delta:double,event_type:string,invoice_text:string>>>>>"
Документация AWS также описывает этот шаблон для нескольких API.Ниже приведено упоминание типа столбца таблицы Glue.
Тип Тип данных в столбце.
Тип: String
Ограничения длины: минимальная длина0. Максимальная длина 131072.
Шаблон: [\ u0020- \ uD7FF \ uE000- \ uFFFD \ uD800 \ uDC00- \ uDBFF \ uDFFF \ t] *
Обязательно: нет
Я хочу недооценить этот шаблон, что означает этот шаблон.Я попытался найти символы Юникода, упомянутые в шаблоне, но не смог определить, какие символы представлены здесь.Я знаком с регулярными выражениями, но никогда не сталкивался с такой моделью.