ECS: ECSSync-migreringsfejl: MySQLSyntaxErrorException: Ukendt kolonne 'source_md5' i 'feltliste'
Summary: ECSSync-migreringen fuldføres øjeblikkeligt, uden at nogen af Centera-klipsene rent faktisk migreres.
Symptoms
ECSSync-migreringen fuldføres øjeblikkeligt, uden at nogen af Centrea-klemmerne rent faktisk skal migreres.
I filen /var/log/ecssync/ecs-sync.log vises følgende fejl:
2020-05-04 03:08:38 ADVARSEL [sync-pool-1-t-15] SyncTask: O--! objekt DNVBT3VHL1NE1e2NMV9CJDMQV5FG41BCFNF5EM0AC0A4KU05821DC mislykkedes
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Ukendt kolonne 'source_md5' i 'feltliste'
på sun.reflect.GeneratedConstructorAccessor29.newInstance (Ukendt kilde)
på sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
... <output afkortet> ..
Cause
Følgende er et eksempel på den tabel, der er oprettet i henhold til den seneste procedure, som ikke indeholder denne kolonne:
MariaDB [ecs_sync]> beskriver <table_name>;
+-------------------+---------------+------+-----+---------+-------+
| Felt | Type | Null | Nøgle | Standard | Ekstra |
+-------------------+---------------+------+-----+---------+-------+
| source_id | varchar(54) | NEJ | PRI | NULL | |
| target_id | Varchar(54) | JA | | NULL | |
| is_directory | Int(11) | NEJ | | NULL | |
| størrelse | Bigint(20) | JA | | NULL | |
| mtime | datetime | JA | | NULL | |
| Status | Varchar(32) | NEJ | MUL | NULL | |
| transfer_start | datetime | JA | | NULL | |
| transfer_complete | datetime | JA | | NULL | |
| verify_start | datetime | JA | | NULL | |
| verify_complete | datetime | JA | | NULL | |
| retry_count | Int(11) | JA | | NULL | |
| error_message | Varchar(2048) | JA | | NULL | |
| is_source_deleted | Int(11) | JA | | NULL | |
+-------------------+---------------+------+-----+---------+-------+
13 rækker i sæt (0,00 sek.)
ECSSync version 3.2.9 tilføjede en kolonne til databasetabellen for at spore kilden MD5-kontrolsum (dette er nævnt i produktbemærkningerne).
Resolution
mysql Shell:
alter table <table_name> add column source_md5 VARCHAR(32);
Tabellen skal se ud som i følgende eksempel med den ekstra kolonne:
MariaDB [ecs_sync]> beskriver <table_name>;
+-------------------+---------------+------+-----+---------+-------+
| Felt | Type | Null | Nøgle | Standard | Ekstra |
+-------------------+---------------+------+-----+---------+-------+
| source_id | varchar(54) | NEJ | PRI | NULL | |
| target_id | Varchar(54) | JA | | NULL | |
| is_directory | Int(11) | NEJ | | NULL | |
| størrelse | Bigint(20) | JA | | NULL | |
| mtime | datetime | JA | | NULL | |
| Status | Varchar(32) | NEJ | MUL | NULL | |
| transfer_start | datetime | JA | | NULL | |
| transfer_complete | datetime | JA | | NULL | |
| verify_start | datetime | JA | | NULL | |
| verify_complete | datetime | JA | | NULL | |
| retry_count | Int(11) | JA | | NULL | |
| error_message | Varchar(2048) | JA | | NULL | |
| is_source_deleted | Int(11) | JA | | NULL | |
| source_md5 | Varchar(32) | JA | | NULL | |
+-------------------+---------------+------+-----+---------+-------+
14 rækker i sæt (0,00 sek)
MariaDB [ecs_sync]>
(hvor <table_name> er navnet på din eksisterende tabel).