Hello everyone,
When I run V&R on one of my databases, it doesn’t display any dialogue box summarizing the results. There is a brief appearance of the progress bar to indicate that the process has been initiated, but it quickly disappears and nothing further happens.
Follow-up:
I tried rebuilding some of my simpler databases (e.g., those that are smaller and contain only imported content), and the V&R behaviour doesn’t improve.
For what it’s worth, I think that Verify & Repair would always display results, even if all is well. As it is, it looks like it’s not doing anything. It’s just as important to get positive confirmation that you’re database is OK as it is to know something is wrong. After all, I manually initiate a check. It’s like asking a friend, “Are you OK”, and he/she says nothing. What should I assume in that case?
It might be nice to have the log file add a notice that V&R completed successfully, without popping a notice to the user or bringing the window forward. That way the user can verify that things happened if they’re concerned.
The reason this would be valuable is that it would let you detect the difference between “Worked” and “Menu command didn’t even start things, or it just died silently somewhere or it is still running in a thread that’s hung”. I’ve seen bugs in a number of different apps where things could get into a state where pressing buttons didn’t do anything, so I’m paranoid enough to think it could happen here.
+1 for alanshutko’s suggestion: there really should be a line in the log notifying the user that Verify did in fact run properly.
(The way it acts now, with the Verify window popping up briefly to then disappear again almost immediately – before any progress has registered on the bar – feels a lot like the process has been aborted.)
tell application id "DNtp"
set theDatabase to current database
set theVR to verify database theDatabase
if theVR = 0 then
set theMessage to log message "Verify and Repair completed OK for " & the name of theDatabase
end if
(* else the log will show the relevant errors *)
end tell