Hi Folks, I am using the donation version of FFS and have the following issue:
try to mirroring a folder from:
C://folder/folder -> D://folder/folder
AND
D:// -> P://
in one step with RealTime while "D://folder/folder" is a part of "D://" means I want to sync in realtime a folder to drive D an then sync the whole drive D to drive P
D is a part of my PC
P is a network drive
I'm doing this tho have a backup of "C://folder/folder" on a different physical drive "D" while "P" is only temporarily present.
- Why do I get conflict errors and the recommendation to exclude files and how to deal correctly with it?
- It also seems RealTime works only if Drive P is active, the first part (C->D) is also dead when the second do not work
- I created a batch from it and imported it to RealTime and it seems this changes the sort order
the folders in RealTime are now arranged as follows:
C://folder/folder
D://
D://folder/folder
P://
in the GUI it is sorted like also shown above:
C://folder/folder -> D://folder/folder
AND
D:// -> P://
the issue may that I do not understand how this works, do I?
Thx in advance, hopefully this is not to much confusing...
coflicts when real and sort order seems to be canged
- Posts: 4
- Joined: 3 Jan 2024
- Posts: 1021
- Joined: 8 May 2006
(In the .ffs_real, it looks like all the source directories are listed, first, followed by all the associated corresponding pair directories.
So in that respect your .ffs_real would be correct.)
So in that respect your .ffs_real would be correct.)
- Posts: 1021
- Joined: 8 May 2006
I believe the reason for your errors is that you have overlapping directories between the 2 pairs.
Likewise, as you are running a single .ffs_real, it is expecting that all your listed drives are available (at the same time).
If you were to set up 2 separate .ffs_real's, & have them both running (concurrently).
(Is that going to work? Or will the 1 still report conflict errors? Not sure?)
The first, C://folder/folder to D://folder/folder.
The second, C:// to P://.
Then when D: is available, the first will run.
When P: is available, the second will run.
And when both are available?
They would both run. (But would you get messages... ?)
Likewise, as you are running a single .ffs_real, it is expecting that all your listed drives are available (at the same time).
If you were to set up 2 separate .ffs_real's, & have them both running (concurrently).
(Is that going to work? Or will the 1 still report conflict errors? Not sure?)
The first, C://folder/folder to D://folder/folder.
The second, C:// to P://.
Then when D: is available, the first will run.
When P: is available, the second will run.
And when both are available?
They would both run. (But would you get messages... ?)
- Posts: 2430
- Joined: 22 Aug 2012
(I re-used you location notation, although the combination of drive-letters and forward slashes appears strange or simply incorrect to me)
The fact that you first list
C://folder/folder -> D://folder/folder
as your first folder pair AND then
D:// -> P:// as your second folder pair
does not mean that first C://folder/folder will be synced to D://folder/folder
and only then D:// to P://, but rather that (apart from the overlap
between D://folder/folder and D://) that
C://folder/folder is compared to D://folder/folder and the required sync actions
are determined and that (before any actual sync is run)
D:// is compared to P:// to determine the required sync actions.
So, any changes to D://folder/folder (as a result of sync actions of your first pair) have yet to occur and thus do not (yet) result in compare differences of your second pair that would result in sync actions.
If you want to do all in one go, you can sync
C://folder/folder -> D://folder/folder
AND
C://folder/folder -> P://folder/folder
AND
D:// -> P://
where (in order to prevent your overlap) for the 3rd pair you add /folder/folder to the local Exclude Filter (the funnel-icon in between the 3rd pair) or if /folder/folder does and will not occur inside D://folder/folder and/or P://folder/folder, you can add /folder/folder to your global Exclude Filter (the funnel-icon mid above your folder pairs).
Alternatively, you can run a first FFS sync
C://folder/folder -> D://folder/folder
and only after that sync has finished run a second FFS sync
D:// -> P://
The fact that you first list
C://folder/folder -> D://folder/folder
as your first folder pair AND then
D:// -> P:// as your second folder pair
does not mean that first C://folder/folder will be synced to D://folder/folder
and only then D:// to P://, but rather that (apart from the overlap
between D://folder/folder and D://) that
C://folder/folder is compared to D://folder/folder and the required sync actions
are determined and that (before any actual sync is run)
D:// is compared to P:// to determine the required sync actions.
So, any changes to D://folder/folder (as a result of sync actions of your first pair) have yet to occur and thus do not (yet) result in compare differences of your second pair that would result in sync actions.
If you want to do all in one go, you can sync
C://folder/folder -> D://folder/folder
AND
C://folder/folder -> P://folder/folder
AND
D:// -> P://
where (in order to prevent your overlap) for the 3rd pair you add /folder/folder to the local Exclude Filter (the funnel-icon in between the 3rd pair) or if /folder/folder does and will not occur inside D://folder/folder and/or P://folder/folder, you can add /folder/folder to your global Exclude Filter (the funnel-icon mid above your folder pairs).
Alternatively, you can run a first FFS sync
C://folder/folder -> D://folder/folder
and only after that sync has finished run a second FFS sync
D:// -> P://
- Posts: 4
- Joined: 3 Jan 2024
it looks like I didn't understood the logic of the synchronization, thx for explanations. Whats unclear to me is the structure and the mode of operation. Why do i have in batch file left and right pairs in a given order but FFS does not consider the order at the end? would this be a missing feature? It might also be an idea to synchronize when parts of the folder paths are available, e.g. the first pair of folders can always be synchronized, as it should always be available, the second only when P:\ is available. Can I post this somewhere as a suggestion?
@therube-> I haven't considered running two instances, but that's certainly an idea that would work, unfortunately I don't like it so much.
@Plerry-> sorry for confusing notation, I would follow your proposal but if FFS stops depending of missing connection to P:\ it does not help
So I'm playing around with Time Scheduling. Next issue follows i fear... ;-)
Question: Time Scheduling works not in the same manner like *.ffs_real right? I understood RealTimeSync takes the info about changes from system protocol and works only with this files not with the complete sync action, whereas time scheduling always runs through the entire synchronization? Is this right? This could make a difference in system load, makes it?
@therube-> I haven't considered running two instances, but that's certainly an idea that would work, unfortunately I don't like it so much.
@Plerry-> sorry for confusing notation, I would follow your proposal but if FFS stops depending of missing connection to P:\ it does not help
So I'm playing around with Time Scheduling. Next issue follows i fear... ;-)
Question: Time Scheduling works not in the same manner like *.ffs_real right? I understood RealTimeSync takes the info about changes from system protocol and works only with this files not with the complete sync action, whereas time scheduling always runs through the entire synchronization? Is this right? This could make a difference in system load, makes it?
- Posts: 2430
- Joined: 22 Aug 2012
> Why do i have in batch file left and right pairs in a given order
> but FFS does not consider the order at the end?
Order is only relevant if there are dependencies between sync locations, forming an overlap.
Overlaps must be avoided, because they create potential sync conflicts or ambiguities.
And overlaps can be avoided by proper definition of folder pairs and/or Exclude Filter rules.
> It might also be an idea to synchronize when parts of the folder
> paths are available ... Can I post this somewhere as a suggestion?
That's what the "General discussion" section is for.
RealTimeSync (RTS) monitors the specified folder(s) for changes, and upon detecting any such change executes its command line, normally launching FFS to run a specified (*.ffs_batch) sync configuration.
Time scheduling, e.g. via the Windows Task Scheduler, always executes its command line at specified times or events (e.g. at logon). Like RTS, time scheduling could launch FFS to run a specified (*.ffs_batch) sync configuration.
In either case, if one or more locations specified in your *ffs_batch sync configuration is not available, FFS will not perform a sync.
> but FFS does not consider the order at the end?
Order is only relevant if there are dependencies between sync locations, forming an overlap.
Overlaps must be avoided, because they create potential sync conflicts or ambiguities.
And overlaps can be avoided by proper definition of folder pairs and/or Exclude Filter rules.
> It might also be an idea to synchronize when parts of the folder
> paths are available ... Can I post this somewhere as a suggestion?
That's what the "General discussion" section is for.
RealTimeSync (RTS) monitors the specified folder(s) for changes, and upon detecting any such change executes its command line, normally launching FFS to run a specified (*.ffs_batch) sync configuration.
Time scheduling, e.g. via the Windows Task Scheduler, always executes its command line at specified times or events (e.g. at logon). Like RTS, time scheduling could launch FFS to run a specified (*.ffs_batch) sync configuration.
In either case, if one or more locations specified in your *ffs_batch sync configuration is not available, FFS will not perform a sync.
- Posts: 4
- Joined: 3 Jan 2024
Thank you very much, I really appreciate your help! I have one last speculation and would be happy if you could comment on it again.
Presumably, if a target is not available, the events are not logged, so that the synchronization is executed the next time the target is online (for this you would have to find a definable timeout in the settings, if such a thing existed), right?
Presumably, if a target is not available, the events are not logged, so that the synchronization is executed the next time the target is online (for this you would have to find a definable timeout in the settings, if such a thing existed), right?
- Posts: 2430
- Joined: 22 Aug 2012
I am not sure what is, or is not, being logged in those cases.
Irrespective of logging: the sync is not automatically performed by FFS the next time the target is/becomes on line.
However, you could use RTS for that purpose:
Obviously you can also define a time scheduled task that launches FFS to (try to) run the relevant sync configuration at some suitable repetition interval.
But, whatever you do, you should never add sync locations that may be temporarily unavailable to FFS sync configurations that need to be able to perform FFS syncs (also) at times that any such location is not available.
Irrespective of logging: the sync is not automatically performed by FFS the next time the target is/becomes on line.
However, you could use RTS for that purpose:
by creating an RTS instance specifically monitoring your targte (in casu: P:\ or a suitable subdirectory thereof), and having that RTS instance launch FFS to run the relevant sync configuration upon detection of availability of your target.The function of RealTimeSync is to execute a command line ... when a directory becomes available (e. g. insert of a USB-stick)
Obviously you can also define a time scheduled task that launches FFS to (try to) run the relevant sync configuration at some suitable repetition interval.
But, whatever you do, you should never add sync locations that may be temporarily unavailable to FFS sync configurations that need to be able to perform FFS syncs (also) at times that any such location is not available.
- Posts: 4
- Joined: 3 Jan 2024
Thx again for making me smart in using FFS ;-) that was a great help!