RELEASE NOTES for RIPE Database 2.2.1

This is a bugfix release with a very little new functionality
added. There are some operational changes which should be
transparent to the end user but ease the database
maintenance.

SUPPORTED SYSTEMS
        
This release has been tested with perl 5.004_04 on bsdi3.1
and Solaris 2.6 systems. Please let us know if you have
problems running it on other systems.

NEW FEATURES

	Domain name queries
	-------------------

The behaviour of domain name queries has been changed. When a
domain object cannot be found in the database, the search
string is stripped towards higher level domains (xxx.yyy.zzz
-> yyy.zzz) and the lookup is repeated until a domain object
is found or the search string becomes empty. If a domain
object with stripped domain name exists in the database and
it does not contain a referral attribute the server response
is "No entries found ..." and reflects the fact that the
domain name originally queried doesn't exist. This is
opposite to the behaviour of the previous software version
which in this situation returned the higher level domain
object if there was one.

	Referral mechanism
	------------------

When referral is made the originally queried domain name is
passed to the authoritative server instead of the domain name
of the object containing the actual referral.

If while doing an inverse query the referral mechanism is
activated and the referred server is of type RIPE, the -r
flag is passed to it and the -i flag is not passed. This
means that the authoritative server's domain object is
displayed instead of the local copy in an inverse query
response when applicable.

The new configuration variable REFERRALENDTXT contains text
to be displayed as an end of referred query reponse marker.
It is useful for inverse queries when the referred query
response can be intermixed with local server responses.

A limit for length of referred query response has been
implemented, configurable via REFERRALMAXLINES variable. The
goal was to prevent badly behaved remote servers from
flooding the local server with a huge amount of data. When a
referred query response gets truncated a warning message is
displayed. Message text is the value of the REFERRALTRUNCTXT
configuration variable.

MAINTENANCE RELATED CHANGES

Timeout for reading from remote server for referred queries
implemented.

Timing added to processing of overflow index files. If
processing of overflow file takes more than 5 second, its
time is logged to audit log.

Timing of queries implemented. Time info written to query
log.

Messages about lock contention and time spent waiting for a
lock added to audit log.

Mechanism for disabling integrity checks implemented. It is
needed in some pathological cases involving legacy data.
Warnings are still generated though.

Debugging printout facility added. It is activated with -b
flag and is now separate from verbose output (-V).

BUG FIXES

PGP error "This signature applies to another message" is now
catched properly.

There were performance problems related to file locking and
opening of multiple databases at the same time. These have
been fixed.

Syntax checks' error messages clarified for admin-c, tech-c,
zone-c and author attributes.

It was possible to create top level domain automatically
(hierarchical authorisation did't work in this case). It is
not possible any more - requests for top level domain
creation are refused now.

Domain creation was refused due to hierarchical authorisation
procedure when there was no higher level domain object found.
It is fixed now.

AUTO1 (actually AUTO\d*) is not treated as a valid nic handle
any more. It is a reserved word.

When a delete request was sent with a missing source
attribute it caused dbupdate process to return with an error
code and a bounce sent to update originator. It is corrected
now.

It was not possible to add a nic handle attribute to an
existing person object without a nic handle. Such an update
was interpreted as the creation of a new person object which
led to a situation when two essentially identical person
objects exist in the database. This behaviour has been fixed.
Now, it is possible to add a nic-handle attribute to an
existing person object.

It was not possible to update the values of changed attribute
only. An attempt to do so resulted in NOOP error. This is
corrected now and changed attribute values are now taken into
account when comparing objects.
