Trying to repair a library that disappeared but seaf-fsck.sh is throwing an error that the column counts on table Branch don’t match. I tried to find the seaf-db.c file referenced in the error message but must be in the sources. Any suggestions?
[root@datavault seafile-server-6.2.2]# ./seaf-fsck.sh --repair 7e5964a7-35eb-45bf-9e06-be289e4ad2d7
Starting seaf-fsck, please wait …
[07/03/20 19:59:13] fsck.c(586): Running fsck for repo 7e5964a7-35eb-45bf-9e06-be289e4ad2d7.
[07/03/20 19:59:13] repo-mgr.c(296): Commit a610140c9e9ef349e25fb26a5964ea075b79537a is missing
[07/03/20 19:59:13] fsck.c(603): Repo 7e5964a7 HEAD commit is damaged, need to restore to an old version.
[07/03/20 19:59:13] fsck.c(498): Scanning available commits…
[07/03/20 19:59:27] fsck.c(558): Find available commit d69ce30e(created at 2020-06-18 12:19:24) for repo 7e5964a7.
[07/03/20 19:59:27] fsck.c(413): Checking file system integrity of repo RadVision(7e5964a7)…
[07/03/20 21:06:48] fsck.c(391): Update repo 7e5964a7 status to commit 8ffa9aae.
[07/03/20 21:06:48] …/…/common/seaf-db.c(425): Error prepare statement REPLACE INTO Branch VALUES (?, ?, ?): mysql_stmt_prepare failed: Column count doesn’t match value count at row 1.
[07/03/20 21:06:48] fsck.c(395): Update head of repo 7e5964a7 to commit 8ffa9aae failed, recover failed.
[07/03/20 21:06:48] fsck.c(650): Fsck finished for repo 7e5964a7.
seaf-fsck run done
Done.
And looking at table Branch:
mysql> explain Branch;
+-----------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-------------+------+-----+---------+----------------+
| id | bigint(20) | NO | PRI | NULL | auto_increment |
| name | varchar(10) | NO | | NULL | |
| repo_id | char(41) | NO | MUL | NULL | |
| commit_id | char(41) | YES | | NULL | |
+-----------+-------------+------+-----+---------+----------------+