Suppose we create a maintenance that is active from 07.11.2011 12:00. Suppose we also create a maintenance period for an hour, starting from the same time: 07.11.2011 12:00. The problem is that maintenance will not start at 12:00.
The reason this happens is because the "active from" value in the database is actually 07.11.2011 12:00 plus a bunch of seconds (depending on when the maintenance was created), i.e., not exactly 12:00:00. Server then considers "12:00" from the period to be less than "12:00" from "active from", and the maintenance does not start.
The solution is to make GUI save the "active from" timestamp with a zero number of seconds.