John,
>So would it be wise to leave some deleted records in the tables? Something like IF SELECT FOR DELETED() > some value then recycle??
>>Just check query performance carefully with full-size tables with a usual mix of deleted and live records (see my reply to Rick). If you will have lots of deleted records, the performance penalty of DELETED() tag may not apply.
I was not suggesting that you recycle or not recycle. I just said to check performance of queries carefully with full-size data tables with a usual mix of deleted and non-deleted.
Check it with or without DELETED() index tag. If query performance is much better without the DELETED() tag, which is sometimes the case, your recycling code no longer works, since you are using the DELETED() tag in a SEEK.
If you know that you will have a very large number of deleted records in this table, then recycling may be a good option. If your data tables are very small, then the performance problems with DELETED() tag may not apply. There are no easy answers other than "it depends". Test, test, test with realistic-sized tables.