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

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

Dit artikel is van toepassing op Dit artikel is niet van toepassing op Dit artikel is niet gebonden aan een specifiek product. Niet alle productversies worden in dit artikel vermeld.

Symptomen

Проблема возникала во время переноса 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> ..

 

Oorzaak

Ошибка возникает из-за того, что используется таблица базы данных, созданная предыдущей версией 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 (он упоминается в примечаниях к выпуску).

 

Oplossing

После обновления до этой версии необходимо либо создать новую таблицу базы данных, либо добавить соответствующий столбец. Выполните следующие действия в оболочке 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> — имя существующей таблицы).

 

Getroffen producten

ECS
Artikeleigenschappen
Artikelnummer: 000081990
Artikeltype: Solution
Laatst aangepast: 07 jul. 2026
Versie:  5
Vind antwoorden op uw vragen via andere Dell gebruikers
Support Services
Controleer of uw apparaat wordt gedekt door Support Services.