nasa/mct — pull request #185 by VWoeltjen (2013-09-16 19:21:20+00:00)
Title: [Database] Allow configuration of polling interval

Reduces database polling interval, and allows
configuration on a per-user basis. This addresses
both perceived and actual issues with object
modification:

* nasa/mct#54 notes that object deletion seems
to take a long time. Root cause is that the
Browse area is refreshed by database polling,
which takes place at a longer interval (3s).
Decreasing this interval means that the user
sees the consequences of their action sooner.
* nasa/mct#132 occurs when the user switches
back and forth between objects faster than
the poll interval. This can cause an object
to be flagged as stale because changes from
one save have not made their way back to
the Browse area. While this still may occur
with a shorter polling interval, the odds
of the user observing this decrease
significantly.
* nasa/mct#111 describes latency issues, some
of which may be related to the poll
interval. (It is unlikely, however, that
menu item latency is related to this.)

Wrote or re-wrote unit tests (Y/N): N
Ran entire suite of unit tests successfully (Y/N): Y
Verified bug fix with the described replication steps or verified the implementation meets the requirement cited (Y/N): Y (for nasa/mct#54 and nasa/mct#132)
Code coverage requirements satisfied (new code=80%, changed code=at least as high as existing) (Y/N): Y
Code review date and attendees: Code review by pull request
Describe potential impact on other areas of the code: Persistence, object refresh
Describe any test prerequisites for this fix (e.g., restart the database): N/A
For bugs marked "Regression - Yes", describe the cause of the regression: N/A
Did you modify any pom.xml file? If yes, did you thoroughly document your changes and reasons? N

No unit tests written as this is essentially a configuration change.

The defaults for derby and mysql have been verified only in light load cases. User testing will be required to determine correct configuration option (polling interval) for specific deployments. This change permits such configuration.