Christian Kamm
eed91ddf46
Legacy propagator: Don't use mtime retrieved via _fstat64.
...
May be the cause of #2431
2014-11-06 12:16:55 +01:00
Klaas Freitag
0692fea9d8
discovery: handle 503 reply code from server for directories
...
503 for directories means that the dir is a mounted directory from an
external mount which currently is not available. The directory is
ignored and not traversed into during discovery phase.
2014-10-27 19:21:12 +01:00
Daniel Molkentin
d76192cce1
Ignore reserved words on Windows
...
Fixes #2385 and #2386
2014-10-24 13:18:57 -04:00
Olivier Goffart
dab01e3f3f
csync_update: add the perms in the log
2014-10-22 17:25:38 +02:00
Markus Goetz
47ad4e3fe8
CSync: Close/Reopen DB between update and reconcile
...
update and reconcile happen in different threads. This code is safer.
(Even though depending on sqlite3 version it should work anyway)
2014-10-22 15:42:13 +02:00
Christian Kamm
de48e65091
Csync tests: Fix compile.
2014-10-22 11:45:48 +02:00
Markus Goetz
61e72ef50b
CSync: statedb sanity check changes
2014-10-21 18:09:23 +02:00
Markus Goetz
24d4840c93
SyncJournalDB: Set WAL files to hidden
2014-10-21 15:58:56 +02:00
Olivier Goffart
56316bc980
csync_reconcile: remove useless debug output
2014-10-21 11:47:18 +02:00
Olivier Goffart
86d8079739
Reconcile: Make sure not to loose new files added in a directory removed on the server
...
Found while investigating #2296
The problem is that we should not remove a directory locally if it contains
modified files.
But the modification time of the directory is not necessarily chaning (so
the instruction of the directory may still be NONE)
We have to move the child_modified test a bit down to be recursive
2014-10-21 10:38:21 +02:00
Markus Goetz
5d048c18bc
Sqlite3: Switch to WAL
...
This is faster.
2014-10-20 23:09:28 +02:00
Markus Goetz
0fb779d363
SyncEngine: De-initialize recursive PROPFIND value correctly
2014-10-20 22:24:28 +02:00
Markus Goetz
d33b68ccc9
CSync: Error out if DB error
2014-10-20 19:32:06 +02:00
Klaas Freitag
b5736fb5a7
Sql: Handle SQLITE_BUSY properly for sqlite3_step and sqlite3_prepare.
...
Repeat the statements a couple of times and sleep in between.
2014-10-18 16:16:29 +02:00
Klaas Freitag
7822a6b000
csync_statedb: Finalize the precompiled statements after discovery.
...
As described in http://www.sqlite.org/cvstrac/wiki?p=MultiThreading precompiled
statements should not be used across thread borders. However, the reconcile
phase would reuse the statements if defined (it calls statedb function from
a different thread) so it is saver to finalize them at the end of the
update run.
2014-10-18 14:18:11 +02:00
Markus Goetz
1d5b3aadea
sqlite3: Bundle 3.8.6 for Mac and Windows
...
it is linked into ocsync.
2014-10-16 17:38:45 +02:00
Markus Goetz
b285e98988
SQlite: Print versions we use
2014-10-11 17:33:35 +02:00
Olivier Goffart
7e898cf60c
SelectiveSync: rename blacklist to selectiveSyncBlackList in some places
...
Issue #2301
2014-10-11 16:24:45 +02:00
Klaas Freitag
2f5cea0e73
owncloudcmd: Add a custom ssl verification callback for neon.
...
That fixes the SSL related problems we had with ci.owncloud.org
2014-10-11 15:55:37 +02:00
Markus Goetz
75dbf12ae6
CSync: Remove dead code
2014-10-10 11:44:40 +02:00
Olivier Goffart
661fe5df66
csync_statedb: fix inverted logic in testing if the sqlite was compiled with threads
2014-10-10 10:12:54 +02:00
Klaas Freitag
edf7cd29dd
csync statedb: Set PRAGMA synchronous to NORMAL for read only db.
2014-10-09 10:05:20 +02:00
Klaas Freitag
27318dded6
csync statedb: Issue a warning if sqlite is not compiled thread safe.
2014-10-09 10:05:20 +02:00
Klaas Freitag
11fe0c5b4b
csync statedb: Open the statedb in read only mode and with mutex set.
...
For that, sqlite3_open_v2 is used with the appropiate flags.
2014-10-09 10:05:20 +02:00
Olivier Goffart
fe1653ede6
csync_update: don't recurse into ignored directory.
...
This save some time when selective sync deselected a large tree
2014-09-26 12:35:56 +02:00
Klaas Freitag
2e12acdf32
doc: add a memo about the issue that defines the permission flags.
2014-09-24 16:35:50 +02:00
Klaas Freitag
0cc2bbf5d9
csync exclude: Export the csync_exclude_add function in debug mode
2014-09-18 15:34:24 +02:00
Christian Kamm
a88ac00115
SyncEngine: Better reporting when ignoring hardlinks. #2217
...
Also touch csync to actually let us know it's ignoring the file
due to it having hard links.
2014-09-18 11:32:29 +02:00
Christian Kamm
0eb9401c62
File change detection: Also look at file sizes.
...
See #2167 and #2169 .
* csync_detect_update: Reupload a file if the sizes differ, similar
to how we reupload if the mtimes differ.
* PropagateUploadFileQNAM::slotPutFinished(): Abort an upload if the
size changed, similar to how we abort an upload if the mtimes changed.
2014-09-17 09:05:13 +02:00
Daniel Molkentin
2dfbc2058f
Win32: ignore files ending in '.' or at least one space
...
Fixes #416
Fixes #2176
2014-09-10 15:21:19 +02:00
Olivier Goffart
79ee6c2f3b
csync_vio_local on windows: fix overflow when computing the size of file > 4GiB
...
MAXDWORD is 0xFFFFFFFF, so if we add one, it overflows and is 0.
We need to cast it to 64 bits before
2014-09-10 13:21:31 +02:00
Olivier Goffart
fa962b7f53
csync_update: fix compilation warning
2014-09-10 11:08:00 +02:00
Markus Goetz
1909b465dc
CSync: Show file size and inode during update traversal
...
With the previous code, we saw those values only when the file/dir was also in the local DB
2014-09-05 15:23:33 +02:00
Olivier Goffart
a73fbccf8c
t4.pl: add a test to test that ignored file are not deleted
2014-08-28 19:33:52 +02:00
Olivier Goffart
d4bbd28757
csync: remove ignored_cleanup: it's not used anymore
2014-08-28 17:16:51 +02:00
Olivier Goffart
98b7248df0
reconcile/update: don't remove directory that contains ignored files
2014-08-28 17:16:17 +02:00
Olivier Goffart
79d13d9242
Selective sync: deselecting a folder removes it from the local file system
2014-08-28 15:53:49 +02:00
Klaas Freitag
dc8f437b31
Excludes: Add an context free implementation of exclude file loading.
...
So that we are more thread safe.
2014-08-21 12:43:04 +02:00
Olivier Goffart
936252765a
Merge branch 'master' into selective_sync
...
Conflicts:
src/mirall/syncengine.cpp
src/mirall/syncengine.h
2014-08-18 14:44:43 +02:00
Klaas Freitag
ddbe181e48
Update phase progress: Check if callback is defined.
2014-08-18 11:51:45 +02:00
Markus Goetz
64a7025522
CSync: Add a 30 second connect (not read) timeout
2014-08-15 15:54:13 +02:00
Markus Goetz
ce2741cebc
SyncEngine & UI: Progress notifications for update phase
...
For each directory (local and remote, we have UI update throtting code)
a signal is emitted.
It is used by the settings dialog and the tray menu.
2014-08-15 15:28:35 +02:00
Olivier Goffart
c1831f4946
Selective sync: use a black list instead of a white list
2014-08-15 12:29:10 +02:00
Olivier Goffart
4b2c1bacd1
Merge remote-tracking branch 'origin/master' into selective_sync
2014-08-15 10:28:50 +02:00
Klaas Freitag
b09498d852
csync journal: Improve get_below_path query.
...
Add another index on the pathlen column. Use that column to deselect
all rows that are shorter than the path to search files below. That
shrinks the amount of rows to examine using LIKE tremendously by
a cheaply to query for criteria.
2014-08-14 13:52:44 +02:00
Klaas Freitag
8bc0d9acd3
Updater: Added a bit of useful logging.
2014-08-14 11:07:31 +02:00
Klaas Freitag
73325bcd41
csync statedb: Fixed handling of sqlite reply value.
2014-08-14 11:07:31 +02:00
Klaas Freitag
1b5bbfdad3
csync statedb: Set sqlite3_busy_timeout to 5 seconds.
2014-08-14 11:07:31 +02:00
Olivier Goffart
4ff0e7e0a2
Silent some warnings
2014-08-12 14:03:04 +02:00
Olivier Goffart
12459bf07e
selective sync: fix whitelist matching
2014-08-12 11:43:42 +02:00