ECS: ECSSync Geçiş Hatası: MySQLSyntaxErrorException: 'Alan listesi'nde bilinmeyen 'source_md5' sütunu

摘要: ECSSync geçişi, Centera kliplerinin hiçbiri taşınmadan anında tamamlanır.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

症状

Sorun, Centera'dan ECS'ye ECSSync geçişi sırasında oluşur.

ECSSync geçişi, taşınacak Centera kliplerinden herhangi biri olmadan anında tamamlanır.
/var/log/ecssync/ecs-sync.log dosyasında aşağıdaki hata görüntülenir:

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> ..

 

原因

Hata, ECSSync'in önceki bir sürümü tarafından oluşturulan bir veritabanı tablosu kullandığınız için oluşur.

Aşağıda, en son prosedüre göre oluşturulan tabloya bir örnek verilmiştir. Bu tablo, source_md5 sütununu içermez:

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 sürüm 3.2.9, kaynak MD5 sağlama toplamını izlemek için veritabanı tablosuna bir sütun ekledi (bu, sürüm notlarında belirtilmiştir).

 

解决方案

Bu sürüme yükselttikten sonra yeni bir veritabanı tablosu oluşturmanız veya uygun sütunu eklemeniz gerekir. MySQL kabuğunda aşağıdakileri gerçekleştirin:

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

Tablo, ek sütunla birlikte aşağıdaki örnekteki gibi görünmelidir:

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]>

(burada <table_name> mevcut tablonuzun adıdır).

 

受影响的产品

ECS
文章属性
文章编号: 000081990
文章类型: Solution
上次修改时间: 07 7月 2026
版本:  5
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。