Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
What I really want from future foxpro version. Uptime
Message
 
 
To
27/04/2001 23:36:53
General information
Forum:
Visual FoxPro
Category:
Other
Miscellaneous
Thread ID:
00501027
Message ID:
00501188
Views:
21
>Anyway, why would you want the ability to do these things without an exculsive lock? Man, the potential train wreck from a structural change without exclusive is scary to think about.

I don't think it is impossible. How about an exclusive hold that can be forced for a split second?

1) Set a database container property indicating the change to take place.
2) Set Database container flag indicating that there is a pending request to change the database.
3) Database finishes current table write then forces exclusive hold to the table. To the other clients this would appear as if all records in the table were locked.
4) Perform the queued structure change request
5) Release the exclusive hold on the table. Database operations then continue as normal.

This would all happen in a split second. The user may see a "wait for a lock" message for a spit second or however you have coded this.

These would be easy
- changing field size
- adding a field
- adding a table

Medium
- removing a field

Hard
- changing the type of a field.

Okay for reindexing. The system would start as above, then...

1) Copy the table. Then keep a list of all data changes
2) Reindex the copied table
3) Force an exclusive hold (this be as above)
4) Insert recorded changes into table and index
5) Release exclusive hold

Once again the lock would only be for a split second and appear to the other clients as if every record in the table was locked.

Ability to keep a VFP database up for 24/7 all year would be a great feature for the product. Of course I could code and app to do this and it would only open tables when it needed to write, delete or change data, but thing of all the overhead.
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform