[web-devel] Database.Persistent

Greg Weber greg at gregweber.info
Thu May 5 15:32:32 CEST 2011


An alternative to laziness would be selecting a subset of fields. There is
no support for this directly in persistent, but it might be possible to add
it and the future and have the value of an unselected field be something
like undefined.

At the moment you can select sub fields by dropping down to lower-level sql
methods (ask Michael about these methods if you are interested). I think
there is a technique for building your persistent data structure back up
from the return of raw sql, which again you might be able to do by inserting
dummy error fields.

Greg Weber

On Thu, May 5, 2011 at 4:18 AM, Michael Snoyman <michael at snoyman.com> wrote:

> On Thu, May 5, 2011 at 1:28 PM, Felipe Almeida Lessa
> <felipe.lessa at gmail.com> wrote:
> > On Thu, May 5, 2011 at 2:20 AM, Jeremy Hughes <jedahu at gmail.com> wrote:
> >> Is Database.Persistent lazy wrt reading fields? I need to iterate over
> >> entities containing both small and large fields. I do not need to use
> >> the large fields in this instance, and so would rather they were not
> >> read from the database.
> >
> > IIRC, they are read strictly.  I guess you should put them on a
> > different entity.
>
> That's correct. In fact, Persistent avoids any form of lazy I/O to
> ensure that database connections are returned to the pool as soon as
> possible (amongst other reasons).
>
> Michael
>
> _______________________________________________
> web-devel mailing list
> web-devel at haskell.org
> http://www.haskell.org/mailman/listinfo/web-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/web-devel/attachments/20110505/80390dc6/attachment.htm>


More information about the web-devel mailing list