Hi Joachim,
Joachim Schmitz writes :
by accident I discovered a person entry which in its form is definitely not wanted:
*pn: Stefan Seiz *ad: Herdweg 73 *ad: \ ... > 128 empty address lines!!! *ad: / *ad: 70174 Stuttgart *ad: Germany *ph: +49 711 18748-0 *fx: +49 711 18748-32 *em: index@schwaben.com *nh: SSE2-RIPE *ny: noc@ecrc.de *ch: wer@ecrc.de 951115 *so: RIPE
I am in no position to decide whether the entry was done including these empty lines or whether this is an error of the database software.
I am in such a position and found indeed a bug (It was the power of two that made me feel that there was a bigger problem then at first sight). I could quickly trace the problem *and* have fixed the code. The software was doubling the number of empty attributes during the reindexing process :-(. The fix will also remove the extra empty lines during the reindexing process. Note for the real-time mirror people: The fix might cause some faulty updates (the software will warn you about this). Please get the new software when Ambrose makes it available.
I think a check should be implemented during acceptance of new database objects (or updates) which - removes empty input lines (or fields which do contain nothing but white space)
The software intended to do the following: - Remove leading and trailing empty lines in every attribute. (attribute=all lines with the same attribute together) - Accept empty lines inside the attribute (This allows for punctuation in Free Text attributes) I changed this one to: Accept at most one consecutive empty line in an attribute. Note: some individual attributes might have syntax checking code that disallows any empty lines inside the attribute.
- afterwards checks whether all mandatory fields for the object are filled in should be done (actually I expect such a test to be performed anyway...)
This is done & was done. The database working group might want to decide to completely disallow empty attribute lines inside a (non empty) attribute. I personally feel that this should be done through the config file: give every attribute a property of allowed empty lines or not. For example 'remarks:' lines can be read easier when they may contain empty lines while empty rev-srv: lines are useless. David K.