TDengine 3.3.8.8 Ошибка создания потока — синтаксическая ошибка (производственная версия, контейнеризованный Linux)MySql

Форум по Mysql
Ответить
Anonymous
 TDengine 3.3.8.8 Ошибка создания потока — синтаксическая ошибка (производственная версия, контейнеризованный Linux)

Сообщение Anonymous »

Описание проблемы
В моей производственной среде (контейнерное развертывание Linux) я столкнулся с синтаксической ошибкой при попытке создать потоковые вычисления в TDengine 3.3.8.8. Сбой происходит после успешного создания двух супертаблиц, и это блокирует мой рабочий процесс агрегирования данных в реальном времени, основанный на потоковых вычислениях.
Подробности среды
  • Среда развертывания: рабочая
  • Версия TDengine: 3.3.8.8
  • Операционная система: Linux (универсальный дистрибутив)
  • Метод развертывания: контейнерный
Этапы воспроизведения
  • Сначала я успешно создаю первую супертаблицу (без ошибок):

    Код: Выделить всё

    CREATE TABLE IF NOT EXISTS equ_state (ts TIMESTAMP, status INT) TAGS (code BINARY(25));
    
  • Затем я успешно создаю вторую супертаблицу (без ошибок):

    Код: Выделить всё

    CREATE TABLE IF NOT EXISTS equ_ss (ts TIMESTAMP, run DOUBLE) TAGS (code BINARY(25));
    
  • При выполнении следующего оператора CREATE STREAM для построения вычислений потока он немедленно завершается с ошибкой синтаксиса:

    Код: Выделить всё

    CREATE STREAM IF NOT EXISTS equ_ss_stream
    INTERVAL(1d)
    FROM equ_state PARTITION BY code
    into equ_ss
    OUTPUT_SUBTABLE(concat('', code))
    as
    select
    _wstart,
    round(sum(case when status = 1 then 1 else 0 end)/60,2)  run
    from %%tbname;
    
Информация об ошибке
Ошибка TDengine явно указывает на синтаксическую ошибку рядом с выделенным разделом SQL создания потока. Основное сообщение об ошибке:

Код: Выделить всё

round(sum(case when status = 1 then 1 else 0 end)/60,2)  run
from %%tbname, desc: syntax error near "from equ_state partition by code
into equ_ss
output_subtable(concat(‘’, code))
Что я уже пробовал
  • Проверил SQL создания супертаблицы (обе таблицы существуют и доступны для запроса через SHOW TABLES).
  • Перекрестно проверил официальную документацию TDengine 3.3.8.8 на предмет синтаксиса создания потока (с упором на PARTITION BY, INTO и OUTPUT_SUBTABLE).
  • Удалены лишние пробелы в потоке SQL, чтобы устранить синтаксические проблемы, связанные с пробелами (без улучшений).
  • Протестировано создание минимального потока (без PARTITION BY/)

    Код: Выделить всё

    OUTPUT_SUBTABLE
    ), который работает, подтверждая, что основные функции потока не повреждены.
Мои вопросы
  • Какая конкретная синтаксическая ошибка вызывает ошибку в моем операторе создания потока TDengine 3.3.8.8?
  • Существуют ли строгие требования к порядку/формату для PARTITION BY, Предложения INTO и OUTPUT_SUBTABLE в потоке SQL TDengine?
  • Является ли concat('', code) допустимым способом ссылки на тег code в OUTPUT_SUBTABLE для TDengine 3.3.8.8 или существует правильная альтернатива?


Подробнее здесь: https://stackoverflow.com/questions/798 ... tainerized
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «MySql»