5 Replies Latest reply on Apr 6, 2012 10:17 AM by dzittin

    More than one user at a time via dropbox

    dzittin

      Title

      More than one user at a time via dropbox

      Post

      Will there be any problem if more than one user uses a runtime copied across more than one machine? These copies are maintained via dropbox. I was wondering if network latency is an issue. Are there any other problems that would make this not work.

      In short, I am developing a runtime and will update it from time to time for bug fixes and minor interface fixes. The runtime is to be shared on multiple machines via dropbox migration. The individual users are divving up data entry tasks, each entering data for different tables and sometimes the same table. This is a temporary situation the multiple runtimes will eventually shrink to a single runtime,

       

      I could optionally have separate copies and then collect and merge the data before creating the single runtime instance.

       

      Ideas? Comments?
       

        • 1. Re: More than one user at a time via dropbox
          philmodjunk

          Sounds like a recipe for major trouble, if I understand you correctly...

          User one downloads the file and then user two downloads the file.

          User one enters "apple" ; "Orange" ; "Kiwi" in their copy.

          User two enters "carrot" ; "beet" ; "radish" in their copy.

          If User one uploads back to drop box and then user two uploads after, the database will contain the vegetables but not the fruit. If user two uploads first you'll get fruit but not vegetables. And no way to get both...

          • 2. Re: More than one user at a time via dropbox
            GuyStevens

            I have one Database running that's backed up using dropbox. It's perfect if it is only used by one user that uses in on two computers.

            You modify your database on your laptop, then it updates to the dropbox server, you go home and open the file on your home computer and you're up and running.

            But No way can this work with multiple users.

            Your filemaker file only gets saved to dropbox the moment you close it. Not every time you edit a field.
            So if you open the dropbox file in the morning and work on it all day and someone else opens it during the day to make a few changes you'll have a "conflicted copy" in the evening when you close your file. Because Dropbox can't upload your copy because the copy on the dropbox server is newer than your file.

            I guarantee you it's bound to go completely wrong.

            Dropbox is already tricky because there is always the risk that you work on your laptop all day, then you close your database and shut your laptop down before your filemaker file is uploaded to dropbox.
            Then you open your dropbox filemaker file at home but you have none of the changes you made on your laptop. You make changes in your old dropbox file and low and behold, the next morning, when you open your laptop and he finally starts uploading yesterday's file to the dropbox server: "Conflicted copy"

            Try and figure out at that point what data is lost, and which file is best to be restored.

            I agree it's a major recipe for disaster.

            • 3. Re: More than one user at a time via dropbox
              dzittin

              PhilModJunk and DeSaint,

              Thanks for your answers. I suspected that might be the case, but wanted to make sure. So, if the users are careful to not overlap their input efforts it's possible this could work.

              If I had access to a mechanism that created a semiphore file with a guarantee of no race conditions across 2 or more dropbox instances, this could work to ensure there is only one running copy at a time. I suspect this is impossible, but I can dream. :-).

              It would be nice to have a networked version of FM, but not worth it for this one-time event. So I guess I will have to schedule activities with a time break in between to ensure the copies are sync'ed across the multiple machines. From experience, this occurs well within a minute given the machines involved. The multi-machine data entry effort was created to solve 2 problems: more than one data entry person entering at a time and that they did not have to be at the same location. I guess I get #2, but not #1. :-(

              Thanks again for the prompt replies.

              -D

              • 4. Re: More than one user at a time via dropbox
                philmodjunk

                Thanks for your answers. I suspected that might be the case, but wanted to make sure. So, if the users are careful to not overlap their input efforts it's possible this could work.

                But how can they not overlap their input efforts? As soon as two or more users download the file and starting modifying it, this problem will occur. You have to keep in mind that each time they save a file back to the drop box, their copy of the file replaces the current copy of the file in the drop box and that will overwrite any copies uploaded by others. The only way you could avoid this is to only allow one user to modify data until that user saves the file back to the drop box.

                What you might be able to do is issue each user a copy of the data in a file with a different name. If the data can be segregated so that user 1 and user 2 can't modify the same records, then you can use imports to import the data from each file back into a common merged file of all the data. I can't tell you if that is or isn't possible for your data.

                • 5. Re: More than one user at a time via dropbox
                  dzittin

                  PhilModJunk,

                  Your idea is good, different file names with a later merge.

                  Regarding not overlapping efforts: I guess I was not clear. I meant that input activities would have to be scheduled in a way that no overlap could occur with a time break to ensure sync'ing across the machines by the dropbox server. I know this is not perfect, but it is likely to work ok for this purpose.

                  I will consider the different filename approach you suggested. It's a good idea. As an example, one user could be entering parts data, the other could be working on customer lists, etc. and then later after a merge, sales records (which draw from parts and customers) could be formed. This might work and would arguable be safe when multiple data entry efforts are occuring at the same time.

                  Thanks.

                  -D