I have a Seafile server running Ubuntu 18.04 and Server Version: 6.2.12. The storage is Minio, S3.
First issue (double files):
When uploading small files it’s fine. However large files, say over 600MB are uploaded twice. Using the web client, I can see the folder /opt/seafile/seafile-data/httptemp space increase as the file is uploaded. The file then transfers to /opt/seafile/seafile-data/storage as it should. But then, the web interface just stays on “saving”, and it then re-uploads the file itself, without any interaction. The result is a file renamed with a “(1)” in the file name. Both the original and the “(1)” are present in the library.
Sccond issue (Seadrive reports errors):
Seadrive for Linux has the below errors, but it still says finished and it uploads fine. When uploading with Linux Drive client there are some errors in the logs while testing “ubuntu-budgie-18.04-beta2-desktop-amd64.iso” to upload.
logs/index.log
05/13/2018 03:13:04 [ERROR] seafes:119 thread_task: Index Repo Error: 36585256-49fe-441a-b072-684055866957
Traceback (most recent call last):
File "/opt/seafile/seafile-pro-server-6.2.12/pro/python/seafes/index_local.py", line 105, in thread_task
self.fileindexupdater.update_repo(repo_id, commit_id)
File "/opt/seafile/seafile-pro-server-6.2.12/pro/python/seafes/file_index_updater.py", line 67, in update_repo
self.check_recovery(repo_id)
File "/opt/seafile/seafile-pro-server-6.2.12/pro/python/seafes/file_index_updater.py", line 63, in check_recovery
self.update_files_index(repo_id, old, new)
File "/opt/seafile/seafile-pro-server-6.2.12/pro/python/seafes/file_index_updater.py", line 33, in update_files_index
new_commit = commit_mgr.load_commit(repo_id, 0, new_commit_id)
File "/opt/seafile/seafile-pro-server-6.2.12/seahub/thirdpart/seafobj/commits.py", line 31, in load_commit
data = self.obj_store.read_obj(repo_id, version, obj_id)
File "/opt/seafile/seafile-pro-server-6.2.12/seahub/thirdpart/seafobj/backends/base.py", line 12, in read_obj
data = self.read_obj_raw(repo_id, version, obj_id)
File "/opt/seafile/seafile-pro-server-6.2.12/seahub/thirdpart/seafobj/backends/s3.py", line 66, in read_obj_raw
data = self.s3_client.read_object_content(real_obj_id)
File "/opt/seafile/seafile-pro-server-6.2.12/seahub/thirdpart/seafobj/backends/s3.py", line 52, in read_object_content
self.do_connect()
File "/opt/seafile/seafile-pro-server-6.2.12/seahub/thirdpart/seafobj/backends/s3.py", line 48, in do_connect
self.bucket = self.conn.get_bucket(self.conf.bucket_name)
File "/usr/local/lib/python2.7/dist-packages/boto/s3/connection.py", line 509, in get_bucket
return self.head_bucket(bucket_name, headers=headers)
File "/usr/local/lib/python2.7/dist-packages/boto/s3/connection.py", line 542, in head_bucket
raise err
S3ResponseError: S3ResponseError: 403 Forbidden
seadrive.log
[05/13/18 02:43:06] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'fs') --> ('finished', 'finished')
[05/13/18 02:43:06] sync-mgr.c(561): Repo 'Minio' sync state transition from 'downloading' to 'load repo'.
[05/13/18 02:43:06] sync-mgr.c(561): Repo 'Minio' sync state transition from 'load repo' to 'synchronized'.
[05/13/18 02:44:57] sync-mgr.c(561): Repo 'Minio' sync state transition from 'synchronized' to 'committing'.
[05/13/18 02:44:57] sync-mgr.c(2635): All operations of repo Minio(36585256) have been processed.
[05/13/18 02:44:57] sync-mgr.c(561): Repo 'Minio' sync state transition from 'committing' to 'uploading'.
[05/13/18 02:44:57] http-tx-mgr.c(3878): Upload with HTTP sync protocol version 2.
[05/13/18 02:44:57] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'init') --> ('normal', 'check')
[05/13/18 02:44:57] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'check') --> ('normal', 'commit')
[05/13/18 02:44:57] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'commit') --> ('normal', 'fs')
[05/13/18 02:44:57] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'fs') --> ('normal', 'data')
[05/13/18 02:44:57] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'data') --> ('normal', 'update-branch')
[05/13/18 02:44:58] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'update-branch') --> ('finished', 'finished')
[05/13/18 02:44:58] sync-mgr.c(2261): removing blocks for repo 36585256-49fe-441a-b072-684055866957
[05/13/18 02:44:58] sync-mgr.c(561): Repo 'Minio' sync state transition from 'uploading' to 'get sync info'.
[05/13/18 02:44:58] sync-mgr.c(561): Repo 'Minio' sync state transition from 'get sync info' to 'synchronized'.
[05/13/18 02:46:35] sync-mgr.c(561): Repo 'Minio' sync state transition from 'synchronized' to 'committing'.
[05/13/18 02:46:44] sync-mgr.c(2556): Creating partial commit after adding ubuntu-budgie-18.04-beta2-desktop-amd64.iso in repo Minio(36585256).
[05/13/18 02:46:45] sync-mgr.c(561): Repo 'Minio' sync state transition from 'committing' to 'uploading'.
[05/13/18 02:46:45] http-tx-mgr.c(3878): Upload with HTTP sync protocol version 2.
[05/13/18 02:46:45] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'init') --> ('normal', 'check')
[05/13/18 02:46:45] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'check') --> ('normal', 'commit')
[05/13/18 02:46:45] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'commit') --> ('normal', 'fs')
[05/13/18 02:46:46] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'fs') --> ('normal', 'data')
[05/13/18 03:12:50] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'data') --> ('normal', 'update-branch')
[05/13/18 03:12:50] http-tx-mgr.c(3752): Bad response code for PUT https://<server>/seafhttp/repo/36585256-49fe-441a-b072-684055866957/commit/HEAD/?head=f410beb05edf4a28898e00b8b0f450a7fc0fba99: 500.
[05/13/18 03:12:50] http-tx-mgr.c(3970): Failed to update branch of repo 36585256.
[05/13/18 03:12:50] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'update-branch') --> ('error', 'finished')
[05/13/18 03:12:50] sync-mgr.c(595): Repo 'Minio' sync state transition from uploading to 'error': 'Error occured in upload.'.
[05/13/18 03:12:51] sync-mgr.c(561): Repo 'Minio' sync state transition from 'synchronized' to 'uploading'.
[05/13/18 03:12:51] http-tx-mgr.c(3878): Upload with HTTP sync protocol version 2.
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'init') --> ('normal', 'check')
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'check') --> ('normal', 'commit')
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'commit') --> ('normal', 'fs')
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'fs') --> ('normal', 'data')
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'data') --> ('normal', 'update-branch')
[05/13/18 03:12:51] http-tx-mgr.c(1145): Transfer repo '36585256': ('normal', 'update-branch') --> ('finished', 'finished')
[05/13/18 03:12:51] sync-mgr.c(2261): removing blocks for repo 36585256-49fe-441a-b072-684055866957
[05/13/18 03:12:51] sync-mgr.c(561): Repo 'Minio' sync state transition from 'uploading' to 'get sync info'.
[05/13/18 03:12:51] sync-mgr.c(561): Repo 'Minio' sync state transition from 'get sync info' to 'synchronized'.
[05/13/18 03:12:52] sync-mgr.c(561): Repo 'Minio' sync state transition from 'synchronized' to 'committing'.
[05/13/18 03:12:52] sync-mgr.c(2492): All operations of repo Minio(36585256) have been processed.
[05/13/18 03:12:52] sync-mgr.c(561): Repo 'Minio' sync state transition from 'committing' to 'synchronized'.
Any ideas why there are file duplicates with the web UI, and then Bad response code for PUT with Seadrive?