'Report a "significant" event in database processing.
Various parts of the database can call this with a string
description before performing some significant event. If
this database was created with an event-reporter callback
then it will be passed on.
Guidelines:
- report an event before doing a *long* action (e.g. importing a
stdlib CIX file)
- report None when that long action is completed'

def report_event(self, desc):

    log.info('event:    %s', desc)
    if self.event_reporter:
        try:
            self.event_reporter(desc)
        except Exception as ex:
            log.exception('error    calling    event    reporter:    %s', ex)
