Lazy load is a lie

One of the systems I’m working on uses LCDS Data Management and Hibernate to communicate between a database on the server and a Flex client. We’ve, uh, learned a lot. I don’t think I’d do it this way again, were I to choose (‘course, I didn’t really choose in this project, either).

We’ve had a lot of problems due to what is conceptually supposed to be a simple matter, that of lazy loading. Even overlooking the fact that lazy loading is not very transparent on the Flex side, there’s the question of how to distribute those lazy flags. And it’s my contention that in a complex data model with lots of interdependencies and lots of different data use-cases, it is very hard to answer that question. Too many lazy properties and you’re making all sorts of round trips across the internet (and lemme tell you, some of your customers may have ping times way worse than you do when you’re testing these things. Way, worse.). One too few and you’re sucking in the entire database in the midst of one property access.

Ah well, whatever.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.