Проблема INSERT INTOSELECT в Columnstore MariaDB

У меня есть новая установка MariaDB 10.5.8, которая включает Columnstore в качестве плагина. Я сталкиваюсь с проблемой, когда пытаюсь вставить строки в таблицу columnstore из оператора select. Я сузил его до тестового случая, который последовательно воспроизводит проблему.

Если я создам таблицу ниже:

CREATE TABLE `test_table` (
    `id` INT(11) NULL DEFAULT NULL,
    `code` VARCHAR(1) NULL DEFAULT NULL,
    `enter_dt` DATE NULL DEFAULT NULL
)
ENGINE=Columnstore

и выполните следующую команду вставки:

INSERT INTO test_table(id,code,enter_dt)
SELECT 1,'M',date(NOW()) FROM dual;

Я получаю сообщение об ошибке:

введите здесь описание изображения

Однако, если столбец VARCHAR идет после столбца DATE, ошибка исчезает:

CREATE TABLE `test_table` (
    `id` INT(11) NULL DEFAULT NULL,
    `enter_dt` DATE NULL DEFAULT NULL,
    `code` VARCHAR(1) NULL DEFAULT NULL
)
ENGINE=Columnstore

Кто-нибудь сталкивался с подобной проблемой?


person Juan Arias    schedule 04.01.2021    source источник
comment
скрипт БД еще не имеет доступного движка columnstore, поэтому я не смог проверить, но имеет ли значение, что оператор вставки пытается вставить дату в столбец code и код в столбец date_dt?   -  person Paul T.    schedule 05.01.2021
comment
@ПолТ. Спасибо за ваш ответ. Это была моя ошибка при расшифровке. Я исправил пример.   -  person Juan Arias    schedule 05.01.2021


Ответы (1)


Я попробовал фрагмент с последним кодом MCS, который будет поставляться со следующим выпуском сообщества 10.5.9 MDB. Похоже, это работает. Я попытаюсь протестировать его с отправленными пакетами, но не могли бы вы сказать мне, будет ли ошибка такой же, когда вы используете собственный клиент MDB без каких-либо диспетчеров соединений с графическим интерфейсом? Вот мои результаты:

MariaDB [test]> show status like '%columnstore%';                                                                                                                                         

+-------------------------+-----------+
| Variable_name           | Value     |
+-------------------------+-----------+
| Columnstore_commit_hash | eec5dd6c0 |
| Columnstore_version     | 5.5.1     |
+-------------------------+-----------+
2 rows in set (0.002 sec)

MariaDB [test]> CREATE TABLE `test_table` (
    ->     `id` INT(11) NULL DEFAULT NULL,
    ->     `code` VARCHAR(1) NULL DEFAULT NULL,
    ->     `enter_dt` DATE NULL DEFAULT NULL
    -> )
    -> ENGINE=Columnstore;
Query OK, 0 rows affected (0.768 sec)

MariaDB [test]> INSERT INTO test_table(id,code,enter_dt)
    -> SELECT 1,'M',date(NOW()) FROM dual;
Query OK, 1 row affected (1.353 sec)
Records: 1  Duplicates: 0  Warnings: 0
MariaDB [test]> select * from test_table;
+------+------+------------+
| id   | code | enter_dt   |
+------+------+------------+
|    1 | M    | 2021-01-06 |
+------+------+------------+
1 row in set (0.134 sec)
person drrtuy    schedule 06.01.2021
comment
Спасибо за Ваш ответ. Я пробовал это без диспетчера соединений с графическим интерфейсом. Я получил насыщенное сообщение о значениях. Попробую с новой версией. - person Juan Arias; 07.01.2021