First, there's only one thaw(), so there won't be any problems with
thawing nfrozen data versus frozen data.
Second, I attach a simple benchmark script. On my boxes nfreeze() ends
up being 5-10% slower.
Thawing nfrozen data also is 5-10% slower. See for yourself.
Втр Авг 24 12:04:11 2010, mark@summersault.com писал:
Show quoted text> On Tue, 24 Aug 2010 11:55:50 -0400
> "Alex Kapranoff via RT" <bug-CGI-Session@rt.cpan.org> wrote:
>
> > Tue Aug 24 11:55:49 2010: Request 60694 was acted upon.
> > Transaction: Ticket created by KAPPA
> > Queue: CGI-Session
> > Subject: (No subject given)
> > Broken in: 2.2
> > Severity: Important
> > Owner: Nobody
> > Requestors: KAPPA@cpan.org
> > Status: new
> > Ticket <URL:
https://rt.cpan.org/Ticket/Display.html?id=60694 >
> >
> >
> > CGI::Session uses Storable::freeze and thus its sessions are
inherently
Show quoted text> > non-portable between differently endian machines.
> >
> > We have a driver that does s/freeze/nfreeze/. It would be simpler
and
Show quoted text> > nicer to just have an option to use nfreeze (or even default to it,
the
Show quoted text> > overhead is neglible).
>
> Will changing the default from freeze to nfreeze break anyones code
who
Show quoted text> upgrades and has data that has been frozen with "freeze" instead of
> "nfreeze" ? Some automated tests that illustrate the safety of that
> would be helpful.
>
> A benchmark of freeze vs. nfreeze would also be helpful. If there is
> really little overhead and better compatibility, I like the idea of
> updating it as the default.
>
> Mark