ECS: ECSSync Migration Error: MySQLSyntaxErrorException: неизвестный столбец «source_md5» в списке полей

Summary: Миграция ECSSync завершается мгновенно без переноса каких-либо клипов Centera.

Αυτό το άρθρο ισχύει για Αυτό το άρθρο δεν ισχύει για Αυτό το άρθρο δεν συνδέεται με κάποιο συγκεκριμένο προϊόν. Δεν προσδιορίζονται όλες οι εκδόσεις προϊόντων σε αυτό το άρθρο.

Symptoms

Проблема возникала во время переноса ECSSync из Centera в ECS.

Миграция ECSSync завершается мгновенно, без необходимости переноса каких-либо зажимов Centera.
В файле /var/log/ecssync/ecs-sync.log появляется следующая ошибка:

2020-05-04 03:08:38 WARN  [sync-pool-1-t-15] SyncTask: O--! object DNVBT3VHL1NE1e2NMV9CJDMQV5FG41BCFNF5EM0AC0A4KU05821DC failed
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'source_md5' in 'field list'
        at sun.reflect.GeneratedConstructorAccessor29.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        ... <output truncated> ..

 

Cause

Ошибка возникает из-за того, что используется таблица базы данных, созданная предыдущей версией ECSSync.

Ниже приведен пример таблицы, созданной в соответствии с последней процедурой. В эту таблицу не входит столбец source_md5:

MariaDB [ecs_sync]> describe <table_name>;
+-------------------+---------------+------+-----+---------+-------+
| Field             | Type          | Null | Key | Default | Extra |
+-------------------+---------------+------+-----+---------+-------+
| source_id         | varchar(54)   | NO   | PRI | NULL    |       |
| target_id         | varchar(54)   | YES  |     | NULL    |       |
| is_directory      | int(11)       | NO   |     | NULL    |       |
| size              | bigint(20)    | YES  |     | NULL    |       |
| mtime             | datetime      | YES  |     | NULL    |       |
| status            | varchar(32)   | NO   | MUL | NULL    |       |
| transfer_start    | datetime      | YES  |     | NULL    |       |
| transfer_complete | datetime      | YES  |     | NULL    |       |
| verify_start      | datetime      | YES  |     | NULL    |       |
| verify_complete   | datetime      | YES  |     | NULL    |       |
| retry_count       | int(11)       | YES  |     | NULL    |       |
| error_message     | varchar(2048) | YES  |     | NULL    |       |
| is_source_deleted | int(11)       | YES  |     | NULL    |       |
+-------------------+---------------+------+-----+---------+-------+
13 rows in set (0.00 sec)

В ECSSync версии 3.2.9 в таблицу базы данных добавлен столбец для отслеживания контрольной суммы исходного MD5 (он упоминается в примечаниях к выпуску).

 

Resolution

После обновления до этой версии необходимо либо создать новую таблицу базы данных, либо добавить соответствующий столбец. Выполните следующие действия в оболочке MySQL:

alter table <table_name> add column source_md5 VARCHAR(32);

Таблица должна выглядеть, как в следующем примере, с дополнительным столбцом:

MariaDB [ecs_sync]> describe <table_name>;
+-------------------+---------------+------+-----+---------+-------+
| Field             | Type          | Null | Key | Default | Extra |
+-------------------+---------------+------+-----+---------+-------+
| source_id         | varchar(54)   | NO   | PRI | NULL    |       |
| target_id         | varchar(54)   | YES  |     | NULL    |       |
| is_directory      | int(11)       | NO   |     | NULL    |       |
| size              | bigint(20)    | YES  |     | NULL    |       |
| mtime             | datetime      | YES  |     | NULL    |       |
| status            | varchar(32)   | NO   | MUL | NULL    |       |
| transfer_start    | datetime      | YES  |     | NULL    |       |
| transfer_complete | datetime      | YES  |     | NULL    |       |
| verify_start      | datetime      | YES  |     | NULL    |       |
| verify_complete   | datetime      | YES  |     | NULL    |       |
| retry_count       | int(11)       | YES  |     | NULL    |       |
| error_message     | varchar(2048) | YES  |     | NULL    |       |
| is_source_deleted | int(11)       | YES  |     | NULL    |       |
| source_md5        | varchar(32)   | YES  |     | NULL    |       |
+-------------------+---------------+------+-----+---------+-------+
14 rows in set (0.00 sec)

MariaDB [ecs_sync]>

(где <table_name> — имя существующей таблицы).

 

Επηρεαζόμενα προϊόντα

ECS
Ιδιότητες άρθρου
Article Number: 000081990
Article Type: Solution
Τελευταία τροποποίηση: 07 Ιουλ 2026
Version:  5
Βρείτε απαντήσεις στις ερωτήσεις σας από άλλους χρήστες της Dell
Υπηρεσίες υποστήριξης
Ελέγξτε αν η συσκευή σας καλύπτεται από τις Υπηρεσίες υποστήριξης.