Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Locking records
Message
 
 
To
05/02/2007 17:32:43
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Environment versions
Visual FoxPro:
VFP 7
Miscellaneous
Thread ID:
01192613
Message ID:
01192620
Views:
23
Hi Rich,

Here's relevant piece of code from our Recycle routine
...
SET DELETED OFF
SET ORDER TO
llGotOne = .F.
SCAN FOR DELETED() 
  IF RLOCK()
	llGotOne = .T.
	* Blank out all the fields and get out of the loop
	BLANK
	RECALL
	EXIT
  ENDIF	
ENDSCAN
...
* Restore SET DELETED here
* Restore SET ORDER here
...
>We have a situation where the table size is approaching the 2GB limit. There is a process in place to extract a set of records, put them in an archive table, delete them, and then pack the table.
>
>Obviously, this requires a maintenance window to grab exclusive access to the table. This isn't always easy to get.
>
>My suggestion (based on several similar one's I've seen here) is to do essentially the same archive process but not pack the table. Whenever a new record needs to be insertted, the system will search for a deleted() record. If it finds one it BLANKS it and then updates the data. Otherwise it will follow the same Insert routine it now uses.
>
>The tables are NOT part of a database container and I'm pretty sure that no buffering is done. I'm also pretty sure that any solution which requires adding buffering would be rejected. In a multi-user environment (a couple of dozen simultaneous users) I'm wondering what the best technique is to avoid a situation where two users try to grab the same deleted record.
>
>All responses appreciated............Rich
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform