SWT 3.1 (I think) introduced the concept of Virtual Tables:
In virtual Tables, items are created on an on-demand basis. This ensures that no extra effort or memory footprint is spent creating items that are never viewed, and it spreads out the Table population effort over the lifetime of the control instead of being completely up-front.
The JFace TableViewer acts as a mediator between the application object model and the table widget. Sadly, as of JFace 3.2, support for virtual tables is still buggy. Given this Bugzilla entry, we should not expect full JFace support for some time:
Unfortunately, there are just too many changes required to fix the problems
with VIRTUAL TableViewer so we have to move this to 3.3.
Note: Eclipse 3.3 is targeted for release in late June 2007. See Eclipse 3.3 Project Plan.