WL#3927: LCP progress report

Status: On-Hold   —   Priority: Medium

1. Current status:
At present, when a LCP is triggered, at the system restart or a periodically LCP
after system restart, as we know, we have no detailed info regarding progress of
the LCP. 
In the cluster log file(ndb_X_cluster.log), we only see something to tell us a
specific LCP is started, e.g.:
2007-02-27 18:40:44 [MgmSrvr] INFO     -- Node 2: Local checkpoint 2 started.
Keep GCI = 1 oldest restorable GCI
 = 2 

2. usability is a little weak:
But there are no more info, such as middle processing info, when the LCP is

Especially when the cluster DB is very big, then it will take a very long time
to perform a LCP dumping to disk. During the long time, users cannot see any
useful progress info, just have to wait. 

So, usability will be good if we can show users LCP progress.

3. So need to be improved:
to print LCP's progress status to cluster log file and console screen, if users
want that.
How to implement LCP progress:

1. To add a user interface parameter(Unit: seconds) to decide whether we need to
record LCP progress info into log file. By default, if the parameter isnot
configured(or == 0 sec), we donot write LCP progress log info, otherwise, we
record LCP progress info into logfile at a specific seconds interval configured
by the parameter.

2. In backup module, we implement the most function we need. 

3. We will record LCP progress info:
a) when LCP No.X started
b) LCP No.X's middle info periodically: (at a specific interval), including how
many records and how many bytes.
c) when LCP No.X completed

4. Seems there's already a DumpStateOrd:DihStartLcpImmediately :7099 which can
trigger a LCP.