PDA

View Full Version : Duplication across two locations....


kcbnac
06-10-04, 04:07 PM
I am highly intrigued by dotproject....I want to put it on my website (so that I can use it anywhere) but I also want it on my laptop, for when I don't have 'net access.

How difficult would it be to copy the data from one to the other?

Laptop - WAMP (On XP Pro). Site - remote host, basically LAMP. (preconfigured)

Would I just do a database backup and restore, or what would be involved?

<edit>
I just thought that if there was a way to automate this, it'd be great. I could use it online, then quick launch a script of some kind to quickly transfer everything down or up, syncronization would be difficult, but just duplication (right now i'd be the only one using it - syncronization can be done later, if possible)
</edit>

Thanks in advance for any help!

cyberhorse
06-10-04, 06:40 PM
Duplication can be done either directly through the database (as you suggested) or through the two backup modules, available on sourceforge - dotmods.
A script to automate this would be easy to make and will be considered for the next version of one of the backup modules - import_export.

caseydk
06-10-04, 10:45 PM
I've been thinking about this and I'm not sure how it would work in a shared environment...

If the system has 2 people working on 3 projects and each person has a local copy, then what happens as changes are introduced? If the web-based person adds a 4th project and tasks, what happens when the local-based person adds a 4th (to them, 5th overall) project and then goes to re-sync? Do we do this based on the project name/short name? How are tasks/task logs synchronized?

If there is a single user or projects are worked on by single users, then many of these issues go away... but in that case, it may be better to just run the system locally.

kcbnac
07-10-04, 02:36 AM
Perhaps some quick way of transferring transaction logs (thinking from MS SQL class here) and then executing those, as if one had lost a database, and had to restore from backup and then transaction logs, perhaps?

How difficult would this be? Is it even possible?

I'm thinking this could work, and if it hits a problem, it notes the transaction and continues, notifying the user at the end that the following ones containing the following information didn't work for whatever reason, and could be manually added in.

Someone tell me if I'm wrong here.

caseydk
07-10-04, 06:42 AM
The problem happens if user A creates a project on the main system and then user B creates another on the local system and then B goes to re-sync their system. They'd both have the same project_id.

Then both users add tasks to their project which generates a set of overlapping tasks. If you're just doing inserts, you'll get key conflicts. If you're doing updates, user B's local system will overwrite user A's system.... or add unrelated tasks to user A's project.

If you synchronize them according to project/task name, you won't run into those problems, but names can be changed quite easily, so you may end up with orphaned tasks that must be manually added.

Personally, I think this would be a better and safer way to go.