- All features restored - search, sort, and paging forward/back when viewing an individual message
- All features are fast regardless of message corpus size - except for search - there is a property to shut off search (simply remove it from the UI) above a threshold - this is defaulted to 2500 messages.
- The session state for MailArchive is virtually zero - about 10 strings - no live objects at all ever end up in session - so MailArchive will never run you out of memory again.
- The pattern has been made more REST-like - pretty much every action turns into one SQL query which returns *exactly* the right records. There is no more searching, or selecting or sorting in the CPU. Each action only de-serialized the exact number of records that will be displayed on each screen.
This is pretty nice - it means that MailArchive is safe on any sized message corpus - at the point where search would cause a query become more than 3-4 seconds it shuts off (you can play with this value)
This *does* require a DB conversion - the conversion is included. It uses the conversion pattern used by Content - it is a shell script that does the conversion (adding columns) off-line. The recent K! jar reorganization broke the conversion - but it was heavily tested pre-K1 - and I will soon have it working again. The conversion can run repeatedly.
For developers who start with autoddl - it automatically makes the columns for you on fresh startup.
This does not touch incoming mail handling - nor does it affect outbound mail handling - it does touch the storage - I tested this mostly using SASH scripts. SO when we do QA - we do nee to check the mail coming into and out of storage carefully.
The conversion is broken because of K1 - and will be fixed. See the README in this commit.