[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Random namespace pruning
Date: Thu, 5 Apr 90 13:50:39 CDT
From: davel@mcc.com (Dave Loeffler for testing Rmail)
Posted-Date: Thu, 5 Apr 90 12:45 EDT
Received-Date: Thu, 5 Apr 90 13:23:05 CDT
Date: Thu, 5 Apr 90 12:45 EDT
From: Chris Lindblad <cjl@ai.mit.edu>
We have had similar problems in our 4 namespaces (1000 hosts), and the way I
made them go away is to stop use changes files. The inconvenience of the
extra time it takes our namespace servers to boot (as they have to reload the
namesapace files, instead of just reading the changes files) is more than
offset by the substantial reliability improvement. If you don't reboot your
namespace servers often, I suggest you try it too.
How do you stop using the changes files?
Remove the line starting with the word "changes" from your namespace
descriptor file, and then reboot or do a Reset Network.
I am in the process of
moving the last of 5 namespaces to a single machine. We have about
500 hosts total between the namespaces. I am doing tests now to
determine how to bring up all the namespaces on a single machine. Has
anyone a suggestion? Part of the problem is that each namespace has
search rules that point to the other namespaces. Also, because of
brain rot (or whatever) there are lots of minor problems - deleted hosts
referenced by users, other hosts that have nicknames of existing hosts
in the same namespace, .... Also, at reboot time if the namespace has
to be reloaded and you get one of these errors then the person doing
the reboot should fix it right away!? Well on to more testing. I
plan to do the consolidation this weekend so if anyone has suggestions
then pass them on soon. The last time we did something like this we
had Richard Lamson here and we split one huge namespace into five (one
for each domain at MCC) and we had two namespace serving machines.
Now I want to have just one machine be the server for all 5.
I am trying NET:SET-SITE on the main namespace (ACA) and then
answering queries about each namespace as the software tries to
resolve them. The main server is Alexandria and each of them refers
to this host as ACA|Alexandria. This seems to work but I am having to
hand edit several files clean up references to namespace objects that
do not exist anymore. Each time I do this I have to reboot the
machine to be sure I have a "clean" environment to start with. (I am
preserving the version numbers on the namespace files and am working
on an isolated machine that thinks it is alexandria - same chaos address).
You don't have to preserve file version numbers on any but your log file. The
version number of the log log file is used as the namespace timestamp. This
is specified by the "version" line in the namespace descriptor file.
Here's a way I use to build a world for a namespace server without having the
namespace server down while the world is built. Just chose any other machine,
boot it, and do this.
(let ((neti:*local-host-is-default-secondary-namespace-server* t))
(neti:keeping-namespace-server
(neti:with-fixups
(loop for namespace in neti:*namespace-search-list*
do (send namespace :compute-local-server-type)
(send namespace :set-unloaded "Building NameServer Worlds")
(send namespace :get-latest-timestamp))))))
And then disk save your world load. (This is assuming your namespace server
already has a valid and consistent database on it)
Other than that, you're on the right track. Everything you are experiencing
we encounter here too. Hang in there.