Subject: | |
From: | |
Reply To: | |
Date: | Mon, 29 May 2006 16:17:18 +0200 |
Content-Type: | text/plain |
Parts/Attachments: |
|
|
> - tcpgui or any listserv query is just too slow to find all of
> a person's subscriptions (2.5 minutes)
There are three main scenarios where it takes LISTSERV an abnormally long
time to give you information about subscribers and the like:
1. You are using the "wrong" command or the wrong logic in your script.
There are often several ways to get the information, but some are faster
than other. For instance, QUERY XYZ-L FOR [log in to unmask] is a lot faster than
SCAN XYZ-L [log in to unmask] QUERY has the exact e-mail address and can use the
index, whereas SCAN is a brute-force text scan whose parameter just happens
to be an e-mail address. Likewise, while you can parse the output of QUERY *
to get a list of all subscribers, it is much faster to use GET. In the
present case, you should be using QUERY * FOR [log in to unmask]
2. You have a lot of DBMS lists, or a slow/remote DBMS, or some large DBMS
lists without DBMS_NO_HOSTNAME_ALIASING=1. If LISTSERV has to make hundreds
of queries to a remote site, it is going to take time. If it has to use LIKE
on a large query because of hostname aliasing, it will also take time,
especially if the DBMS does not use its index for LIKE 'XYZ%' type of
queries (some do, some don't).
3. You have a lot of lists, or very large lists, and do not have the high
performance (HPO) version of LISTSERV. It still shouldn't be taking 2.5
minutes, though.
The above assumes that the server is not swapping to death or otherwise
badly underpowered.
Eric
|
|
|