Q1. How to force OOPS never go'DIRECT'?
A1. There are 2 ways:
    1) to use parent directive (not the one mentioned in the icp-peer description,
       but that one which is 'parent xxx.yyy.zzz 3128')
       In this case 
       a) ALL requests (except for ones occurring in local-domain or local-networks)
    	  will be satisfied through parent.
       b) no icp-requests are sent
       c) if there is no use of local-networks directive in oops.cfg,
          then no attempts to resolve names will be made.
       d) Requests to hosts occurring in local-domain or local-networks
          are satisfied directly.

    2) to use icp-peer parent description. In this case on getting
       the request from a client, icp-request is sent to all icp-peer (both
       parent and sibling). On receiving a 'HIT' reply from anywhere 
        - we go there. Only if we get 'MISS' we go to the parent, being 
       the quickest of all to have sent 'MISS' reply. And only if there isn't any   
       reply from parents we go directly. If we assume the latter variant
       is rather seldom, then oops can be considered to 
       go always through the fastest parent.

Q2. I compiled it successfully, ran it and I saw the following in oops.log:
    > -------------------------------------------------------
    > >>>>[0x400]db_open: Invalid argument                              
    > [0x400]oops 1.2d Started                                      
    > [0x400]DB engine by Sleepycat Software: DB 2.4.14: (6/2/98)   
    At this time nothing is being written in the disk cashe. Why is it so? What have I  
    got to do?
A2. The problem lies in the fact that OOPS was compiled with the old version of
    DB library. You've got to install the new version, run configure and
    make. You can download the fresh version from www.sleepycat.com.

Q3. I formatted storages which in their sum should occupy 1Gb, but the free space  
    volume on the disk was hardly changed, however. And should it be like that?
A3. Yes, it should. At formatting the following operations take place:
    1) a storage file is created, if it wasn't made before
    2) 'super-block' and bitmap are created and get stored in the beginning of the file
    3) seek on the last file byte of the storage is made and one byte is being recorded
       That is - the storage formatted this way represents a "hole"
       in file system, which will be filled in according to documents' saving. 
    If you don't like such behavior, it is possible to create storages in advance with 
the help of the following command:	
    dd if=/dev/null of=storage ...
    In this case you'll reserve the necessary space at once.
    After such dd don't forget, please, to run oops -z for this storage,
    you know, dd doesn't create any bitmap and superblock...

Q4. How to find: which group given connection will fall in.
A4. In description of each group you can see directives: 'networks' and
    'networks_acl'. networks_acl are searched first, in order they appear in
    config file. If request match any of networks_acl - we will use group,
    which contain this networks_acl.

    If request dont match nay networks_acl, then we use 'networks'
    Comparisons ordered so, that most specific networks are checked first.
    For example networks


    will be checked in next order:

    And host will fall in group, containing network, regardless of order of appearence of this networks in
    config file.

Q5. Which platform is best for OOPS?
A5. I develop and use OOPS under Solaris, and think this is best platform
    (both intel and sparc). Next and very close go FreeBSD (may-be it is
    even better on some parameters). Alas, as for today, you can use OOPS
    under Linux for limited number of simultaneous connections. This is
    because Linux use model 'one thread-one process', and OOPS use model one
    'connection-one thread'