Dedicated Indexing (OpenInsight Specific)
At 13 JUN 1998 11:57:22AM Jeff Word wrote:
I have used Get_Env/Set_Env commands to set the number of seconds and index before query settings. Are these settings on per user basis or global? I thought setting seconds to 1 for a user made them a dedicated indexer and setting seconds to 0 for a user turned indexing off for them.
Now I found the SetIDXSvr(0), and Set_Bgnd_IX_Time(0) functions. Can someone please clarify how you use these different functions to setup a dedicated indexer.
At 13 JUN 1998 04:23PM Aaron Kaplan wrote:
Set_IdxSvr( Option ) changes the look of OpenEngine. When Option is True$, OE displays a screen telling you what indexes are updating, what file it's on, and what the percentage is. When Option is False$, it displays the standard way.
Set_Bgnd_IX_Time( Seconds ) sets the timer values on OE. I'm pretty sure this is lower levels and is the one that @environ.set updates, since it's a call into the engine, but I never really bothered to find out.
Generally, I use both these commands when @USERNAME is indexer.
akaplan@sprezzatura.com
At 13 JUN 1998 09:50PM Cameron Revelation wrote:
Jeff,
The dedicated index is set up by using the Set_IDXSvr and Set_Bgnd_IX_Time functions as shown in the help file.
If you have dedicated indexing on, set the background indexing to 0 seconds between updates, which shuts it off.
This is how I suggest setting it up, even if there are only a few users. One user can be the dedicated indexer and still do other things, since the dedicated indexer mode does not prevent normal operation … it just slows it down occasionally.
Cameron Purdy
Revelation Software
At 15 JUN 1998 12:07PM Jeff Word wrote:
Thanks for the explanation. We want our indexes to be up-to-date all the time. We have a stored procedure on every write and every delete in our software. In that stored procedure we call update_index so that we know indexes are up-to-date all the time.
Using this method:
Do we need dedicated indexing?
Should we set the seconds to 0 for each user except set one user to 500 seconds just in case they do writing or deleting outide our routines?
At 16 JUN 1998 03:08AM Peter Bowyer, Swiftscan Systems wrote:
We used the method you described, having each user maintain the index after a write, but found that the indexes were prone to corruption when several users call update_index at the same time. We now use one workstation as a dedicated index server (which is also used as regular workstation) and the problem has gone away.
At 16 JUN 1998 04:44PM Jeff Word wrote:
With our current approach of issuing update_index on each write and delete, this ensures that our indexes are update-to-date instantly. Can we ensure the same accuracy with using a dedicated indexer? And how exactly do set this up?
For a one user system, should we turn dedicated indexing on for the one user who logs in?
Should the dedicated indexer (on a single user and network) have the seconds set to 1 to make indexing virtually instant?
At 16 JUN 1998 04:53PM Jeff Word wrote:
I would like to talk to someone who is actually doing dedicated indexing. We are about to ship one component of our app in about one week. Would you please email me at jeff@wordenterprises.com and provide me with your phone number?
At 27 JUN 1998 01:53PM Aaron Kaplan wrote:
The whole idea of a dedicated indexer to avoid potential problems with deadlocks. A good number of these were solved as the ARev/OI indexing routines were updated over the years. However, it's still a good idea so that your workstation does not get caught doing a massive index update.
On a one user system, you don't need one. In general, you don't need one until about 4 or 5 users. But this is in general, not a hard rule.
akaplan@sprezzatura.com