[Pkg-owncloud-commits] [owncloud-client] 169/484: SyncJournal: Add checksumHeader column to metadata table #3735
Sandro Knauß
hefee-guest at moszumanska.debian.org
Wed Dec 16 00:37:39 UTC 2015
This is an automated email from the git hooks/post-receive script.
hefee-guest pushed a commit to branch master
in repository owncloud-client.
commit 60b2312ab65fcbc2962629321b87bb840fc0b25c
Author: Christian Kamm <mail at ckamm.de>
Date: Wed Oct 14 15:03:19 2015 +0200
SyncJournal: Add checksumHeader column to metadata table #3735
---
src/libsync/syncjournaldb.cpp | 23 +++++++++++++++++++----
src/libsync/syncjournalfilerecord.cpp | 3 ++-
src/libsync/syncjournalfilerecord.h | 1 +
3 files changed, 22 insertions(+), 5 deletions(-)
diff --git a/src/libsync/syncjournaldb.cpp b/src/libsync/syncjournaldb.cpp
index aaa53a1..0b099ee 100644
--- a/src/libsync/syncjournaldb.cpp
+++ b/src/libsync/syncjournaldb.cpp
@@ -206,6 +206,7 @@ bool SyncJournalDb::checkConnect()
"md5 VARCHAR(32)," /* This is the etag. Called md5 for compatibility */
// updateDatabaseStructure() will add a fileid column
// updateDatabaseStructure() will add a remotePerm column
+ // updateDatabaseStructure() will add a checksumHeader column
"PRIMARY KEY(phash)"
");");
@@ -346,13 +347,13 @@ bool SyncJournalDb::checkConnect()
}
_getFileRecordQuery.reset(new SqlQuery(_db));
- _getFileRecordQuery->prepare("SELECT path, inode, uid, gid, mode, modtime, type, md5, fileid, remotePerm, filesize, ignoredChildrenRemote FROM "
+ _getFileRecordQuery->prepare("SELECT path, inode, uid, gid, mode, modtime, type, md5, fileid, remotePerm, filesize, ignoredChildrenRemote, checksumHeader FROM "
"metadata WHERE phash=?1" );
_setFileRecordQuery.reset(new SqlQuery(_db) );
_setFileRecordQuery->prepare("INSERT OR REPLACE INTO metadata "
- "(phash, pathlen, path, inode, uid, gid, mode, modtime, type, md5, fileid, remotePerm, filesize, ignoredChildrenRemote) "
- "VALUES (?1 , ?2, ?3 , ?4 , ?5 , ?6 , ?7, ?8 , ?9 , ?10, ?11, ?12, ?13, ?14);" );
+ "(phash, pathlen, path, inode, uid, gid, mode, modtime, type, md5, fileid, remotePerm, filesize, ignoredChildrenRemote, checksumHeader) "
+ "VALUES (?1 , ?2, ?3 , ?4 , ?5 , ?6 , ?7, ?8 , ?9 , ?10, ?11, ?12, ?13, ?14, ?15);" );
_getDownloadInfoQuery.reset(new SqlQuery(_db) );
_getDownloadInfoQuery->prepare( "SELECT tmpfile, etag, errorcount FROM "
@@ -527,6 +528,17 @@ bool SyncJournalDb::updateMetadataTableStructure()
}
commitInternal("update database structure: add ignoredChildrenRemote col");
}
+
+ if( columns.indexOf(QLatin1String("checksumHeader")) == -1 ) {
+ SqlQuery query(_db);
+ query.prepare("ALTER TABLE metadata ADD COLUMN checksumHeader TEXT;");
+ if( !query.exec()) {
+ sqlFail("updateMetadataTableStructure: add checksumHeader column", query);
+ re = false;
+ }
+ commitInternal("update database structure: add checksumHeader col");
+ }
+
return re;
}
@@ -642,6 +654,7 @@ bool SyncJournalDb::setFileRecord( const SyncJournalFileRecord& _record )
_setFileRecordQuery->bindValue(12, remotePerm );
_setFileRecordQuery->bindValue(13, record._fileSize );
_setFileRecordQuery->bindValue(14, record._serverHasIgnoredFiles ? 1:0);
+ _setFileRecordQuery->bindValue(15, record._checksumHeader );
if( !_setFileRecordQuery->exec() ) {
qWarning() << "Error SQL statement setFileRecord: " << _setFileRecordQuery->lastQuery() << " :"
@@ -652,7 +665,8 @@ bool SyncJournalDb::setFileRecord( const SyncJournalFileRecord& _record )
qDebug() << _setFileRecordQuery->lastQuery() << phash << plen << record._path << record._inode
<< record._mode
<< QString::number(Utility::qDateTimeToTime_t(record._modtime)) << QString::number(record._type)
- << record._etag << record._fileId << record._remotePerm << record._fileSize << (record._serverHasIgnoredFiles ? 1:0);
+ << record._etag << record._fileId << record._remotePerm << record._fileSize << (record._serverHasIgnoredFiles ? 1:0)
+ << record._checksumHeader;
_setFileRecordQuery->reset();
return true;
@@ -732,6 +746,7 @@ SyncJournalFileRecord SyncJournalDb::getFileRecord( const QString& filename )
rec._remotePerm = _getFileRecordQuery->baValue(9);
rec._fileSize = _getFileRecordQuery->int64Value(10);
rec._serverHasIgnoredFiles = (_getFileRecordQuery->intValue(11) > 0);
+ rec._checksumHeader = _getFileRecordQuery->baValue(12);
} else {
QString err = _getFileRecordQuery->error();
qDebug() << "No journal entry found for " << filename;
diff --git a/src/libsync/syncjournalfilerecord.cpp b/src/libsync/syncjournalfilerecord.cpp
index c3c5613..22ee38b 100644
--- a/src/libsync/syncjournalfilerecord.cpp
+++ b/src/libsync/syncjournalfilerecord.cpp
@@ -35,7 +35,8 @@ SyncJournalFileRecord::SyncJournalFileRecord()
SyncJournalFileRecord::SyncJournalFileRecord(const SyncFileItem &item, const QString &localFileName)
: _path(item._file), _modtime(Utility::qDateTimeFromTime_t(item._modtime)),
_type(item._type), _etag(item._etag), _fileId(item._fileId), _fileSize(item._size),
- _remotePerm(item._remotePerm), _mode(0), _serverHasIgnoredFiles(item._serverHasIgnoredFiles)
+ _remotePerm(item._remotePerm), _mode(0), _serverHasIgnoredFiles(item._serverHasIgnoredFiles),
+ _checksumHeader(item._checksumHeader)
{
// use the "old" inode coming with the item for the case where the
// filesystem stat fails. That can happen if the the file was removed
diff --git a/src/libsync/syncjournalfilerecord.h b/src/libsync/syncjournalfilerecord.h
index f3546c5..d3a2a70 100644
--- a/src/libsync/syncjournalfilerecord.h
+++ b/src/libsync/syncjournalfilerecord.h
@@ -47,6 +47,7 @@ public:
QByteArray _remotePerm;
int _mode;
bool _serverHasIgnoredFiles;
+ QByteArray _checksumHeader;
};
bool OWNCLOUDSYNC_EXPORT
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/owncloud-client.git
More information about the Pkg-owncloud-commits
mailing list