From time to time my users complain they get error “The full text index for this database is in use” on monitor while FT searching.
I decided to analyze this problem.
Because of complexity getting this error manually (usually FT search works good) i created simple stupid script agent, which constantly sent search request to server
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Set db = session.CurrentDatabase
Set view = db.GetView( "BySource" )
While true
foundc = view.FTSearch( "medvedev*", 0 )
Print Cstr(Now)+" - found:"+foundc
Wend
End Sub
I run this agent on client and wait server to update FT. As soon as server started update my agent stoped running with error “The full text index for this database is in use”
I tested this agent with clients 6.5.4, 7.0.2, 7.0.4, 8.5., 8.5.1 and servers 6.5.6, 7.0.2, 7.0.4FP1, 8.5., 8.5.1 in any combinations. I’ve got the same result:“The full text index for this database is in use”
I noticed that error appears at the begining of updating FT.
Could anybody tell me it is normal for Lotus Domino or some my configuration mistake???
Subject: Like I said in the other forum, that’s just a problem that you have to deal with
If the server is updating the index then you can’t use it. This happens with 8.5.1 as well.
That’s just one of several errors you have to always check for in a busy environment. The database I manage now (oops, this is the 8.5 forum…application) gets some 30,000 updates a week and the mail server is really busy as well. In all my code that accesses external databases, I have to always first check that I actually have a handle to the db, and then I have to check if the db is open. If it isn’t open I try to open the db, and then I check again. I STILL get errors and have to exit code from being unable to access a mail db or some other db.
And of course, no matter how gently you give the error message, an error is an error. And you being the programmer…well…it must be your fault, right? Oy vey.
Subject: Full text error. Many thanks for your response
Hi, Willy.Many thanks for your response.
About correct technics of Lotus programming You are absolutely right. I do the same in my application. But this code is just example to catch error and test versions, which my users get using standard “Search for” in view.
My database is very active, it collects information. Users need full text searching for this information almost real-time. I have to update index often.
I haven’t created a solution yet because the problem is infrequent and my error message says to “try again”, which the users do and it seems to always work the second time.
Eric C. Brooks has a solution for this problem. It’s in this forum post →