Eclipse caching visual copy of .frm file

Hello all,

We have Subclipse set to require us to lock a file before modifying it (we’re trying to mimic the way Visual Source Safe works using a pre-commit hook in SVN with “svn:needs-lock=true” and “enable-auto-props = yes” in our clients’ config file). If we try to modify a .js file without first locking it, we are prevented and prompted to lock it first. If we try to modify a .frm file, we get no notification, but when we try to save the file we get an error message saying “Could not write object [formname] to workspace directory [workspace path]”. That is not ideal, but acceptable, since we can then go and get the lock and then either re-make our changes or whatever. The problem is, though, that the form in Eclipse gives the appearance as though it saved our changes. If I close and reopen the form it shows the changes that were made. If I get a lock, then try to commit it says no changes were made and won’t let me, but there is clearly a label that has been moved to another area of the form.

If I restart Servoy it shows me the form as it was before I made changes. It seems like there is a caching or something going on with the form editor. How do we get it to re-read the .frm file without having to restart Servoy?

Perhaps a better long-term option is to have Eclipse block us from making changes without a lock (as it does with .js files). Any help is appreciated tremendously.

Thanks

Servoy doesn’t support pessimistic locking and it is also not in the planning to support this any time soon.

Why do you want to do this? Personally i find that a quite horrible approach. As a developer i can work on days for a specific feature, that would mean that all the files i touch can’t be worked on by other developers, that would mean that the rest just stands still. Let the tooling do the merging, and if there are merge conflicts, which don’t happen that much, then yes you need to look a bit better. But also there the tooling with nice merge/compare editors are helping you a lot.