Klaas Freitag
b9ea7c3414
csync: Do not compute the journal name in csync_update any more.
...
Rely on the name that was passed to csync_init()
2016-07-10 12:54:33 +02:00
Christian Kamm
6f454feb39
Fix hidden file handling #4655
...
There were two issues:
* With the refactoring of how Folder and SyncEngine relate, the
ignore_hidden_files flag on the CSync context was reset after
each sync run and not updated from the configuration again.
* The folder watcher failed to enumerate hidden folders and thus
didn't watch for changes inside them. (linux only)
2016-04-12 11:59:07 +02:00
Jocelyn Turcotte
7561f5c717
Add comment and cleanup the csync exclude list code
...
Removed the csync_add_exclude_list function that isn't use anywhere
anymore.
2016-03-03 20:26:48 +01:00
Jocelyn Turcotte
b8227afcaa
Move the csync_context creation in SyncEngine
...
The creation doesn't need to be separated from the SyncEngine anymore.
This allows the SyncEngine to be created in fewer steps if we want to
use it in tests.
This moves most of the direct csync code from Folder into the SyncEngine.
The exclude file logic for the context has been wrapped using the
existing ExcludedFiles class as well.
2016-02-25 20:53:13 +01:00
Jocelyn Turcotte
b8dee63d7a
Remove superfluous error checking from csync_create and csync_init
...
Given that we control all call sites, the only way that this can fail is during
OOM. Also remove the code in csync itself to make sure that it's obvious that
any new error case wouldn't be handled by call sites.
2016-02-25 20:53:13 +01:00
Christian Kamm
2458f07ca1
Checksums: Reuse the discovery checksum where possible
2015-11-23 14:13:10 +01:00
Christian Kamm
a25f094c4c
Checksums: Don't reupload if size and checksum are unchanged #3235
...
* Compute the content checksum (in addition to the optional
transmission checksum) during upload (.eml files only)
* Add hook to compute and compare the checksum in csync_update
* Add content checksum to database, remove transmission checksum
2015-11-23 11:59:56 +01:00
Markus Goetz
c8590c4468
Remove legacy propagator and neon
...
The code was already uneeded/unbuilt on Windows and OS X.
2015-10-20 17:57:43 +02:00
Klaas Freitag
ddf7419aca
csync: Initialize the hidden files flag properly.
2015-07-15 15:54:41 +02:00
Klaas Freitag
a4336092f6
Hidden Files: Add a setting to ignore hidden files or not.
...
This setting goes to the folder definition. By default, no hidden
files are synced.
2015-07-15 15:54:41 +02:00
Klaas Freitag
b0aedef4b0
Sync: Store information about ignored files on the server in database.
...
That allows better handling of remove requests that should not be done
because the directory is not empty on the remote side (as it contains
ignored files).
2015-07-15 15:49:27 +02:00
Olivier Goffart
45180a024d
Rename should_update_etag to should_update_metadata
...
This should avoid some confusion
2015-07-09 15:05:37 +02:00
Olivier Goffart
505dba5b23
csync walk tree: Try to find the 'other_node' in the source directory in case of renames
...
This fixes t2.pl
2015-05-12 16:32:00 +02:00
Christian Kamm
adcf40afc3
Discovery: Speed up initial run. #2796
2015-04-08 15:43:49 +02:00
Markus Goetz
fe574dbbf9
Discovery: Free some memory before propagate ( #2902 )
2015-03-02 15:08:21 +01:00
Markus Goetz
7f1f62e14a
CSync: Clean some more
2015-01-23 17:26:30 +01:00
Olivier Goffart
fe51ada1e8
Don't require NEON with Qt 5.4
2015-01-23 17:11:34 +01:00
Markus Goetz
6708c959d9
CSync: Remove c_list
2015-01-23 17:09:13 +01:00
Markus Goetz
906779c4b1
SyncEngine: Use QNAM for csync_update
...
This is for #2507
2015-01-20 18:27:25 +01:00
Olivier Goffart
08d3ae9f02
csync_statedb: Have more granular error reporting when the loaddb fails
...
In order to distiguish error from sqlite_open or from the integrity check
Issue #2673
2015-01-15 11:36:24 +01:00
Olivier Goffart
de11f602d5
Merge remote-tracking branch 'origin/il'
...
Conflicts:
csync/src/csync_private.h
src/CMakeLists.txt
src/gui/folder.cpp
src/libsync/owncloudpropagator.cpp
src/libsync/owncloudpropagator.h
src/libsync/propagator_qnam.cpp
src/libsync/propagator_qnam.h
src/libsync/syncengine.cpp
src/libsync/syncengine.h
src/mirall/syncjournaldb.cpp
2014-11-08 10:48:36 +01: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
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
Olivier Goffart
1cd5681967
permissions: Remember the permissions for the root folder
2014-09-19 10:58:52 +02:00
Olivier Goffart
d4bbd28757
csync: remove ignored_cleanup: it's not used anymore
2014-08-28 17:16:51 +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
02704cdf74
Merge remote-tracking branch 'origin/1.6' into il
...
Conflicts:
VERSION.cmake
csync/src/csync_statedb.c
src/mirall/syncengine.cpp
src/mirall/syncfileitem.h
2014-06-23 12:48:34 +02:00
Klaas Freitag
db3d2eed5f
csync core: Remove logically dead code: Can never be reached.
...
This fixes Coverity CID 12881
2014-06-20 13:08:03 +02:00
Markus Goetz
70ff928381
CSync & statedb: Parse 'perm' from server
...
ownCloud 6 sends this.
2014-06-06 15:24:17 +02:00
Markus Goetz
b48ab79a92
CSync & statedb: Remove uid/gid
...
Columns are still in the DB as we don't want to break any compatibility.
2014-06-06 13:41:16 +02:00
Olivier Goffart
7d00c3646a
csync: remove unused variable
2014-06-05 15:45:15 +02:00
Markus Goetz
6897c5d41f
CSync: Always have statedb enabled
2014-06-04 11:06:41 +02:00
Markus Goetz
233450d850
CSync: Remove config dir setting
2014-06-04 10:56:56 +02:00
Olivier Goffart
806ab8ea46
csync: remove the local mode
...
It is no longer used for a long time
2014-06-03 17:52:07 +02:00
Markus Goetz
4d4eab8b1c
CSync & Propagator: Support a direct download URL
...
This is for server file backends that support sending a
direct URL.
2014-06-03 14:55:34 +02:00
Markus Goetz
b8e20b412c
CSync: We can access the context directly
2014-06-03 11:51:12 +02:00
Markus Goetz
e36f3c5b10
CSync: Remove one VIO layering
2014-06-03 11:51:12 +02:00
Markus Goetz
8a55f831f4
CSync: Use context instead of global variable
2014-06-03 11:51:12 +02:00
Klaas Freitag
1303379c9e
Remove useless global varialbe for auth callback.
2014-05-22 12:54:14 +02:00
Klaas Freitag
a50c39cd0c
Maintain the original inode value for renamed files.
...
In case two renames are done on the same file/folder very quickly we
lost the information that the second operation was also a rename. That
was because we tried to get the inode value from a stat on the file once
the first rename was finished. But at that point, the file was already
gone because of the second rename.
Now the original inode is kept and written to db in case the file can
not be stat'ed.
This fixes bug #1737
2014-05-06 12:55:54 +02:00
Olivier Goffart
988c162d2f
Have only one place where we read the timeout
2014-05-02 13:04:53 +02:00
Olivier Goffart
9da261acd8
Do not read from the database when upgrading from 1.5
...
We need to make sure that the file id are updated (if the user
had upgraded from owncloud 5 to owncloud 6 while using owncloud 1.5)
2014-04-25 13:31:44 +02:00
Olivier Goffart
7d3b0fe0c5
Fix memory leak: Don't need to call strdup here
...
The other_node outlive the trav structure, so we can just use the same pointer
2014-04-18 19:16:10 +02:00
Olivier Goffart
8de9bec122
Remove progress info from csync
...
csync doesn't do no propagation no more
2014-03-28 10:50:15 +01:00
Markus Goetz
67f4d0c85b
CSync: Debug message if no exclude file defined
2014-03-27 17:11:19 +01:00
Klaas Freitag
67ae541e2a
Safe use of c_strdup
2014-03-26 18:16:27 +01:00
Klaas Freitag
c5100a789b
Collect data from the "other" tree for the treewalk functions.
...
This enables us to log all relevant information that were used
to decide on sync activity.
2014-03-26 18:12:22 +01:00
Olivier Goffart
98d7ff5116
Don't create .ctmp of sync journal
...
Fixes #1559
2014-03-26 10:25:50 +01:00
Klaas Freitag
c3cee3426e
Improved database access code for csync.
...
- Use precompiled database statements
- Store them in the csync context struct
- Hand whole context as parameter to db access functions
2014-03-20 11:15:28 +01:00
Markus Goetz
1c8f279214
csync: Remove more vio abstraction
2014-02-28 09:13:40 +01:00