diff options
author | Erik Verbruggen <erik@verbruggen.consulting> | 2022-09-08 15:31:42 +0300 |
---|---|---|
committer | Erik Verbruggen <erik@verbruggen.consulting> | 2022-09-08 15:31:42 +0300 |
commit | 188ee2ed91aa7276bb1b353bc931530716c5b8dd (patch) | |
tree | caa8435feaad6e460df5ccc89105fb23520f9c90 | |
parent | 14f97d94afb568f8065982359f711768be82580e (diff) |
More detailed debug logging
-rw-r--r-- | src/libsync/discovery.cpp | 10 | ||||
-rw-r--r-- | src/libsync/filesystem.cpp | 3 | ||||
-rw-r--r-- | src/libsync/propagatedownload.cpp | 2 |
3 files changed, 11 insertions, 4 deletions
diff --git a/src/libsync/discovery.cpp b/src/libsync/discovery.cpp index 984f33b5d..b89be8453 100644 --- a/src/libsync/discovery.cpp +++ b/src/libsync/discovery.cpp @@ -1039,8 +1039,14 @@ void ProcessDirectoryJob::processFileConflict(const SyncFileItemPtr &item, const // If there's no content hash, use heuristics if (serverEntry.checksumHeader.isEmpty()) { // If the size or mtime is different, it's definitely a conflict. - bool isConflict = (serverEntry.size != localEntry.size) || (serverEntry.modtime != localEntry.modtime); - + bool sizeDiffers = serverEntry.size != localEntry.size; + bool modTimeDiffers = serverEntry.modtime != localEntry.modtime; + bool isConflict = sizeDiffers || modTimeDiffers; + if (isConflict) { + qCDebug(lcDisco) << serverEntry.name << ": detected conflict: size difference: " << sizeDiffers << "mtime difference: " << modTimeDiffers; + } else { + qCDebug(lcDisco) << serverEntry.name << ": no conflict detected"; + } // It could be a conflict even if size and mtime match! // // In older client versions we always treated these cases as a diff --git a/src/libsync/filesystem.cpp b/src/libsync/filesystem.cpp index 1c0f89158..af0b1a71a 100644 --- a/src/libsync/filesystem.cpp +++ b/src/libsync/filesystem.cpp @@ -82,7 +82,8 @@ bool FileSystem::setModTime(const QString &filename, time_t modTime) int rc = c_utimes(filename, times); if (rc != 0) { qCWarning(lcFileSystem) << "Error setting mtime for" << filename - << "failed: rc" << rc << ", errno:" << errno; + << "failed: rc" << rc << ", errno:" << errno + << ", strerr: " << strerror(errno); Q_ASSERT(false); return false; } diff --git a/src/libsync/propagatedownload.cpp b/src/libsync/propagatedownload.cpp index 43be0181e..a76876580 100644 --- a/src/libsync/propagatedownload.cpp +++ b/src/libsync/propagatedownload.cpp @@ -953,7 +953,7 @@ void PropagateDownloadFile::downloadFinished() emit propagator()->touchedFile(fn); // The fileChanged() check is done above to generate better error messages. if (!FileSystem::uncheckedRenameReplace(_tmpFile.fileName(), fn, &error)) { - qCWarning(lcPropagateDownload) << "Rename failed:" << _tmpFile.fileName() << "=>" << fn; + qCWarning(lcPropagateDownload) << "Rename failed:" << _tmpFile.fileName() << "=>" << fn << "with error:" << error; propagator()->_anotherSyncNeeded = true; done(SyncFileItem::SoftError, error); return; |