Skip Menu |
 

This queue is for tickets about the MooseX-Storage CPAN distribution.

Report information
The Basics
Id: 104106
Status: resolved
Priority: 0/
Queue: MooseX-Storage

People
Owner: Nobody in particular
Requestors: todd.bruner [...] gmail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 0.50



MIME-Version: 1.0
X-Spam-Status: No, score=-2.698 tagged_above=-99.9 required=10 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
X-Spam-Flag: NO
Content-Type: multipart/alternative; boundary="001a1140bc9614c7b90514e3b88d"
Message-ID: <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com>
X-Received: by 10.107.156.69 with SMTP id f66mr1533501ioe.36.1430343162052; Wed, 29 Apr 2015 14:32:42 -0700 (PDT)
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Spam-Score: -2.698
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id D46D42400EE for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Wed, 29 Apr 2015 17:32:48 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id roGJvxh7yzP0 for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Wed, 29 Apr 2015 17:32:47 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id 8CCB12400D8 for <bug-MooseX-Storage [...] rt.cpan.org>; Wed, 29 Apr 2015 17:32:47 -0400 (EDT)
Received: (qmail 15987 invoked by alias); 29 Apr 2015 21:32:46 -0000
Received: from mail-ie0-f173.google.com (HELO mail-ie0-f173.google.com) (209.85.223.173) by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Wed, 29 Apr 2015 14:32:45 -0700
Received: by iecrt8 with SMTP id rt8so53316384iec.0 for <bug-MooseX-Storage [...] rt.cpan.org>; Wed, 29 Apr 2015 14:32:42 -0700 (PDT)
Received: by 10.36.47.135 with HTTP; Wed, 29 Apr 2015 14:32:21 -0700 (PDT)
Authentication-Results: hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] gmail.com
Delivered-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
Subject: Confess message
Return-Path: <todd.bruner [...] gmail.com>
X-RT-Mail-Extension: moosex-storage
X-Original-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
X-Spam-Check-BY: la.mx.develooper.com
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:from:date:message-id:subject:to:content-type; bh=B81Ls0vV/YVWAd5Woj12dLOzyOs61e3hixuZ1xnwtGY=; b=VhKOnitNbWL7zplvf+SpkLq2FII2zQL4F7EyHljiWLVlf933fHGHpe45/27UHM5WMZ rd4D9wiPYuyZ+qtwC5EK+Y+NJhhiyG6GNYPAwFRGyibM2BtiuZ8uRY5KnZ+M4rLGjSqi ijDspeayEzGguq4vL3I0LPS3yViXTRzuiWlZqAduuu5zFAyBXX6Uuv+iY7dcTW3h8Zn4 dGw0sTHnbW3K/awaxQ12/hZAta7suAVP/kzJnKWlvWPoI+VR2HLmGlhLRYF3jD8fL7D7 vTocihzUEtmDMgZUij1cFMpfCZAMTHjQevw+RW9nh6s+QFO+IY8OW5y2pE0fKrz5I+wy 3JeQ==
Date: Wed, 29 Apr 2015 15:32:21 -0600
X-Spam-Level:
To: bug-MooseX-Storage [...] rt.cpan.org
From: Todd Bruner <todd.bruner [...] gmail.com>
X-RT-Interface: Email
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 875
Download (untitled) / with headers
text/plain 875b
I'm using David Golden's Meerkat to create objects and store them in a MongoDB. My code works without complaint on my development system. The MooseX::Storage version is 0.48 and Meerkat is 0.10 on my dev box. On my production box, (MooseX::Storage 0.49 and Meerkat 0.10) I get the following message when I execute this code: Package MyApp::Collection::Foo; use Moose 2; extends 'Meerkat::Collection'; sub create_obj { my $self = shift; my $href = shift; return $self->create($href); } 1; Object (1) does not have a &pack method, cannot collapse at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 207. ...stack trace omitted... The object is created, so this isn't critical, but the confess stack trace is annoying. What do I need to do differently in 0.49 to quiet this confess? thanks, Todd ------------------------------ todd.bruner@gmail.com
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 1286
MIME-Version: 1.0
In-Reply-To: <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-26630-1430352044-16.104106-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 1176
Download (untitled) / with headers
text/plain 1.1k
On 2015-04-29 14:32:49, toddbruner wrote: Show quoted text
> I'm using David Golden's Meerkat to create objects and store them in a > MongoDB. > My code works without complaint on my development system. The > MooseX::Storage version is 0.48 and Meerkat is 0.10 on my dev box. > On my production box, (MooseX::Storage 0.49 and Meerkat 0.10) I get the > following message when I execute this code:
Show quoted text
> Object (1) does not have a &pack method, cannot collapse at > /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 207. > ...stack trace omitted... > > The object is created, so this isn't critical, but the confess stack trace > is annoying. What do I need to do differently in 0.49 to quiet this > confess?
I'm not sure what Meerkat is doing with its serializers, but the bit of code that you're hitting (the collapse handler at line 207) should only be getting called for blessed objects. However, the $obj being printed in the error message doesn't look like it's blessed. Can you try editing MooseX::Storage::Engine to include a Data::Dumper of the $obj in the confess message? And being able to see the full stack trace (that you omitted above) would be quite helpful here too.
MIME-Version: 1.0
X-Spam-Status: No, score=-4.698 tagged_above=-99.9 required=10 tests=[AWL=2.000, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, FROM_OUR_RT=-4, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
In-Reply-To: <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org>
X-Spam-Flag: NO
X-RT-Interface: API
References: <RT-Ticket-104106 [...] rt.cpan.org> <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com> <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org>
X-Virus-Checked: Checked
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Received: by 10.50.29.40 with SMTP id g8mr4616402igh.41.1430410746595; Thu, 30 Apr 2015 09:19:06 -0700 (PDT)
Message-ID: <CALBikpKJ+QebmiUcCn=+YVzWAYWN_XF2tyM0tzZQiOo_Q2Y_aQ [...] mail.gmail.com>
Content-Type: multipart/alternative; boundary="047d7bd758b66f0ee10514f37499"
X-Spam-Score: -4.698
Authentication-Results: hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] gmail.com
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id 2CFAF2403CE for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Thu, 30 Apr 2015 12:19:29 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xP1BgKeMziO9 for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Thu, 30 Apr 2015 12:19:27 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id 055AB24037F for <bug-MooseX-Storage [...] rt.cpan.org>; Thu, 30 Apr 2015 12:19:26 -0400 (EDT)
Received: (qmail 11554 invoked by alias); 30 Apr 2015 16:19:25 -0000
Received: from mail-ie0-f172.google.com (HELO mail-ie0-f172.google.com) (209.85.223.172) by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Thu, 30 Apr 2015 09:19:18 -0700
Received: by iecrt8 with SMTP id rt8so71262475iec.0 for <bug-MooseX-Storage [...] rt.cpan.org>; Thu, 30 Apr 2015 09:19:06 -0700 (PDT)
Received: by 10.36.47.135 with HTTP; Thu, 30 Apr 2015 09:18:46 -0700 (PDT)
Delivered-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
Subject: Re: [rt.cpan.org #104106] Confess message
Return-Path: <todd.bruner [...] gmail.com>
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=5UBgxIzWuSkX9/Srer7pssuAuFekr0d4GABZ58bCWk4=; b=n7d67SHbsI/dpCRExxGoPdQRCg5xhfygG7Tfrs5aXydlT08CQ+K+quMu2xXl5b3AFj ZpIj5B54sQMCEkAHcCeI9vthyc3Qsr9P6CvVBor4b5Bnl33i2IB8W8t7Bt7TEdt72csr Ih4BwxxYWlC5Da8ZCGOD9ie4h9BQJbi9QOObBdQgEIPwKxQnPHGUZMvdZMVqI0qW9KGa Ly/WVJMcOGG4eMLrGomZy0cTntmo8IQUOa3kfG0nwWF/aWswVXSWUlkYueEJDIibe8Zi xh5j04c6bP31PiJA2ihilBVFx2jazFhgur8EMzkoAOnlz6qsiTbb63nxzgWOem0s5V8j T07w==
X-Spam-Check-BY: la.mx.develooper.com
X-Original-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
X-RT-Mail-Extension: moosex-storage
Date: Thu, 30 Apr 2015 10:18:46 -0600
X-Spam-Level:
To: bug-moosex-storage <bug-MooseX-Storage [...] rt.cpan.org>
From: Todd Bruner <todd.bruner [...] gmail.com>
RT-Message-ID: <rt-4.0.18-1756-1430410770-521.104106-0-0 [...] rt.cpan.org>
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 4229
Download (untitled) / with headers
text/plain 4.1k
Karen: Thank you for looking into this and creating this PM. Here's the dump of the object as requested and the full stack trace. MyApp::Collection::System is a subclass of Meerkat::Collection. Let me know if you have any questions or I can perform an additional tests. Todd Object (1) does not have a &pack method, cannot collapse$VAR1 = bless( do{\(my $o = 1)}, 'JSON::PP::Boolean' ); at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 208. MooseX::Storage::Engine::__ANON__(JSON::PP::Boolean=SCALAR(0x4ff0f68), HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 280 MooseX::Storage::Engine::__ANON__(HASH(0x647a530), HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 249 MooseX::Storage::Engine::__ANON__(ARRAY(0x660f9a0), HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 91 MooseX::Storage::Engine::collapse_attribute_value(MooseX::Storage::Engine=HASH(0x685fca0), Moose::Meta::Class::__ANON__::SERIAL::5=HASH(0x6772df8), HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 61 MooseX::Storage::Engine::collapse_attribute(MooseX::Storage::Engine=HASH(0x685fca0), Moose::Meta::Class::__ANON__::SERIAL::5=HASH(0x6772df8), HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 144 MooseX::Storage::Engine::map_attributes(MooseX::Storage::Engine=HASH(0x685fca0), "collapse_attribute", HASH(0x4d047e8)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 38 MooseX::Storage::Engine::collapse_object(MooseX::Storage::Engine=HASH(0x685fca0)) called at /usr/local/share/perl/5.18.2/MooseX/Storage/Basic.pm line 12 MooseX::Storage::Basic::pack(MyApp::Model::System=HASH(0x685fda8)) called at /usr/local/share/perl/5.18.2/Meerkat/Collection.pm line 327 Meerkat::Collection::_save(MyApp::Collection::System=HASH(0x666e898), MyApp::Model::System=HASH(0x685fda8)) called at ../lib/MyApp/Collection/System.pm line 18 MyApp::Collection::System::__ANON__(MyApp::Collection::System=HASH(0x666e898), HASH(0x63b1be8)) called at /usr/local/lib/perl/5.18.2/Moose/Meta/Method/Overridden.pm line 38 MyApp::Collection::System::create(MyApp::Collection::System=HASH(0x666e898), HASH(0x63b1be8)) called at ../lib/MyApp/Collection/System.pm line 58 MyApp::Collection::System::create_from_hopper(MyApp::Collection::System=HASH(0x666e898), HASH(0x6669078)) called at ../lib/MyApp/Controller/Hopper.pm line 195 MyApp::Controller::Hopper::update_system(MyApp::Controller::Hopper=HASH(0x1683158), 231058, HASH(0x6669078)) called at ../lib/MyApp/Controller/Hopper.pm line 145 MyApp::Controller::Hopper::run(MyApp::Controller::Hopper=HASH(0x1683158), HASH(0x1683278)) called at ./get_foo_updates.pl line 10 ------------------------------ todd.bruner@gmail.com On Wed, Apr 29, 2015 at 6:00 PM, Karen Etheridge via RT < bug-MooseX-Storage@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=104106 > > > On 2015-04-29 14:32:49, toddbruner wrote:
> > I'm using David Golden's Meerkat to create objects and store them in a > > MongoDB. > > My code works without complaint on my development system. The > > MooseX::Storage version is 0.48 and Meerkat is 0.10 on my dev box. > > On my production box, (MooseX::Storage 0.49 and Meerkat 0.10) I get the > > following message when I execute this code:
>
> > Object (1) does not have a &pack method, cannot collapse at > > /usr/local/share/perl/5.18.2/MooseX/Storage/Engine.pm line 207. > > ...stack trace omitted... > > > > The object is created, so this isn't critical, but the confess stack
> trace
> > is annoying. What do I need to do differently in 0.49 to quiet this > > confess?
> > I'm not sure what Meerkat is doing with its serializers, but the bit of > code that you're hitting (the collapse handler at line 207) should only be > getting called for blessed objects. However, the $obj being printed in the > error message doesn't look like it's blessed. > > Can you try editing MooseX::Storage::Engine to include a Data::Dumper of > the $obj in the confess message? > And being able to see the full stack trace (that you omitted above) would > be quite helpful here too. > >
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 5248
MIME-Version: 1.0
In-Reply-To: <rt-4.0.18-1756-1430410770-521.104106-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <RT-Ticket-104106 [...] rt.cpan.org> <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com> <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org> <CALBikpKJ+QebmiUcCn=+YVzWAYWN_XF2tyM0tzZQiOo_Q2Y_aQ [...] mail.gmail.com> <rt-4.0.18-1756-1430410770-521.104106-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-32663-1430783319-732.104106-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 1176
Download (untitled) / with headers
text/plain 1.1k
On 2015-04-30 09:19:30, toddbruner wrote: Show quoted text
> Karen: > > Thank you for looking into this and creating this PM. Here's the dump > of > the object as requested and the full stack trace. > > MyApp::Collection::System is a subclass of Meerkat::Collection. Let > me > know if you have any questions or I can perform an additional tests.
Without knowing the details of how you constructed your Meerkat::Collection object, I cannot reproduce this to run under either 0.48 or 0.49. However, this error is critically important: Show quoted text
> Object (1) does not have a &pack method, cannot collapse$VAR1 = bless( > do{\(my $o = 1)}, 'JSON::PP::Boolean' );
It shows that MooseX::Storage doesn't know how to serialize/deserialize JSON::PP::Boolean objects - because it hasn't been instructed how. While constructing a test case to see how arrayrefs of JSON::PP::Booleans are handled, I found a bug in the 0.49 changes, but I don't think that this fix will directly help you (as the problem is only in new deep expansion code that was added in 0.49.) Can you send me the Moose type definition of the object you are attempting to serialize, ideally simplified down to just a few attributes?
MIME-Version: 1.0
In-Reply-To: <rt-4.0.18-32663-1430783319-732.104106-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <RT-Ticket-104106 [...] rt.cpan.org> <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com> <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org> <CALBikpKJ+QebmiUcCn=+YVzWAYWN_XF2tyM0tzZQiOo_Q2Y_aQ [...] mail.gmail.com> <rt-4.0.18-1756-1430410770-521.104106-0-0 [...] rt.cpan.org> <rt-4.0.18-32663-1430783319-732.104106-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-24142-1430856801-277.104106-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 1476
Download (untitled) / with headers
text/plain 1.4k
On 2015-05-04 16:48:39, ETHER wrote: Show quoted text
> On 2015-04-30 09:19:30, toddbruner wrote:
> > Karen: > > > > Thank you for looking into this and creating this PM. Here's the > > dump > > of > > the object as requested and the full stack trace. > > > > MyApp::Collection::System is a subclass of Meerkat::Collection. Let > > me > > know if you have any questions or I can perform an additional tests.
> > Without knowing the details of how you constructed your > Meerkat::Collection > object, I cannot reproduce this to run under either 0.48 or 0.49. > > However, this error is critically important: >
> > Object (1) does not have a &pack method, cannot collapse$VAR1 = > > bless( > > do{\(my $o = 1)}, 'JSON::PP::Boolean' );
> > It shows that MooseX::Storage doesn't know how to > serialize/deserialize > JSON::PP::Boolean objects - because it hasn't been instructed how.
You can instruct the engine to pack/unpack these objects thusly: I suspect that previously (in version 0.48) you were simply getting the numified form of the JSON booleans (i.e. 1 or 0) after packing->unpacking, so you still had a lossy translation, but this didn't break your application. I've reverted the deep pack/unpack changes in the new 0.50 release, so you should be back to where you were before in 0.48. However any reproduction cases that you can provide will still be helpful, as we do want to re-introduce the deep packing/unpacking feature later on, when we can be sure it works properly.
MIME-Version: 1.0
X-Spam-Status: No, score=-5.698 tagged_above=-99.9 required=10 tests=[AWL=1.000, BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, FROM_OUR_RT=-4, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=ham
In-Reply-To: <rt-4.0.18-24142-1430856802-468.104106-6-0 [...] rt.cpan.org>
X-Spam-Flag: NO
X-RT-Interface: API
References: <RT-Ticket-104106 [...] rt.cpan.org> <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com> <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org> <CALBikpKJ+QebmiUcCn=+YVzWAYWN_XF2tyM0tzZQiOo_Q2Y_aQ [...] mail.gmail.com> <rt-4.0.18-1756-1430410770-521.104106-6-0 [...] rt.cpan.org> <rt-4.0.18-32663-1430783319-732.104106-6-0 [...] rt.cpan.org> <rt-4.0.18-24142-1430856802-468.104106-6-0 [...] rt.cpan.org>
X-Virus-Checked: Checked
X-Virus-Scanned: Debian amavisd-new at bestpractical.com
X-Received: by 10.107.156.69 with SMTP id f66mr27814964ioe.36.1430862176171; Tue, 05 May 2015 14:42:56 -0700 (PDT)
Message-ID: <CALBikpJdxqDrNQDwrJ=usT7NOTZt=9+M9s9MuVRm9JR4LcThQQ [...] mail.gmail.com>
Content-Type: multipart/alternative; boundary="001a1140bc96bbc1d705155c8fac"
X-Spam-Score: -5.698
Authentication-Results: hipster.bestpractical.com (amavisd-new); dkim=pass header.i= [...] gmail.com
Received: from localhost (localhost [127.0.0.1]) by hipster.bestpractical.com (Postfix) with ESMTP id 7D1FE240406 for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Tue, 5 May 2015 17:43:05 -0400 (EDT)
Received: from hipster.bestpractical.com ([127.0.0.1]) by localhost (hipster.bestpractical.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J2LC86GyYCHo for <cpan-bug+MooseX-Storage [...] hipster.bestpractical.com>; Tue, 5 May 2015 17:43:03 -0400 (EDT)
Received: from la.mx.develooper.com (x1.develooper.com [207.171.7.70]) by hipster.bestpractical.com (Postfix) with SMTP id 54ED22403F0 for <bug-MooseX-Storage [...] rt.cpan.org>; Tue, 5 May 2015 17:43:03 -0400 (EDT)
Received: (qmail 17885 invoked by alias); 5 May 2015 21:43:00 -0000
Received: from mail-ie0-f172.google.com (HELO mail-ie0-f172.google.com) (209.85.223.172) by la.mx.develooper.com (qpsmtpd/0.28) with ESMTP; Tue, 05 May 2015 14:42:59 -0700
Received: by iecrt8 with SMTP id rt8so444009iec.0 for <bug-MooseX-Storage [...] rt.cpan.org>; Tue, 05 May 2015 14:42:56 -0700 (PDT)
Received: by 10.36.47.135 with HTTP; Tue, 5 May 2015 14:42:35 -0700 (PDT)
Delivered-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
Subject: Re: [rt.cpan.org #104106] collapse handler being called for a non-object
Return-Path: <todd.bruner [...] gmail.com>
Dkim-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=xo5pLn8F/H2JC0L8T9PrWbijx9LwnLt0lci037JkxLY=; b=by5IN4d4je2wNnokuUscNF/reTUav+MV3q53PvwQneSI02d18ls2KBoHybH6YUyRUf czZRjBe8Gm2EnZtCVZ3w92YoWWML+GRmBrSSlrw4p29UJiNLe4EDWC+fMscT2bYcrpFa hIK9ieu1qzG6nVbYTaGvEtBgksJwty3/2rIxDAY4MnJiqagLIOFBeRq/5HztefZcXPcd x78ktPUI2jIwcjYz028V9ysW+xgH3+yXZoR0qXhDFQI5UYNF0w2OriGu+XyehhE/dee9 Vu7gjn+ss+3IJRk90rDt44nkkn+ogD/eBsjftJ8FHdFEa2+Zayt26OPTNEu2q8R1VI4K joVA==
X-Spam-Check-BY: la.mx.develooper.com
X-Original-To: cpan-bug+MooseX-Storage [...] hipster.bestpractical.com
X-RT-Mail-Extension: moosex-storage
Date: Tue, 5 May 2015 15:42:35 -0600
X-Spam-Level:
To: bug-moosex-storage <bug-MooseX-Storage [...] rt.cpan.org>
From: Todd Bruner <todd.bruner [...] gmail.com>
RT-Message-ID: <rt-4.0.18-9874-1430862186-698.104106-0-0 [...] rt.cpan.org>
Content-Length: 0
content-type: text/plain; charset="utf-8"
X-RT-Original-Encoding: utf-8
Content-Length: 2459
Download (untitled) / with headers
text/plain 2.4k
I think that you are correct. The app was building an href from a the result of a JSON webservice. Upon dumping the href I can see that some of the values are JSON::Boolean::false. Interestingly enough, I really don't care about those key/values and wasn't using them. The lossy-ness was not noticed, but welcome! :-) I've been trying to create a mini-example to recreate the problem without much success. I'm going to keep trying and will send you the example if I can reproduce. I won't update to 0.5 until I can reproduce. As for my application, I will explicitly remove those key/value pairs in the future. Thank you again for looking into this and for creating this module. Todd ------------------------------ todd.bruner@gmail.com On Tue, May 5, 2015 at 2:13 PM, Karen Etheridge via RT < bug-MooseX-Storage@rt.cpan.org> wrote: Show quoted text
> <URL: https://rt.cpan.org/Ticket/Display.html?id=104106 > > > On 2015-05-04 16:48:39, ETHER wrote:
> > On 2015-04-30 09:19:30, toddbruner wrote:
> > > Karen: > > > > > > Thank you for looking into this and creating this PM. Here's the > > > dump > > > of > > > the object as requested and the full stack trace. > > > > > > MyApp::Collection::System is a subclass of Meerkat::Collection. Let > > > me > > > know if you have any questions or I can perform an additional tests.
> > > > Without knowing the details of how you constructed your > > Meerkat::Collection > > object, I cannot reproduce this to run under either 0.48 or 0.49. > > > > However, this error is critically important: > >
> > > Object (1) does not have a &pack method, cannot collapse$VAR1 = > > > bless( > > > do{\(my $o = 1)}, 'JSON::PP::Boolean' );
> > > > It shows that MooseX::Storage doesn't know how to > > serialize/deserialize > > JSON::PP::Boolean objects - because it hasn't been instructed how.
> > You can instruct the engine to pack/unpack these objects thusly: > > I suspect that previously (in version 0.48) you were simply getting the > numified form of the JSON booleans (i.e. 1 or 0) after packing->unpacking, > so you still had a lossy translation, but this didn't break your > application. > > I've reverted the deep pack/unpack changes in the new 0.50 release, so you > should be back to where you were before in 0.48. However any reproduction > cases that you can provide will still be helpful, as we do want to > re-introduce the deep packing/unpacking feature later on, when we can be > sure it works properly. > >
content-type: text/html; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
X-RT-Original-Encoding: utf-8
Content-Length: 3334
MIME-Version: 1.0
In-Reply-To: <rt-4.0.18-9874-1430862186-698.104106-0-0 [...] rt.cpan.org>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <RT-Ticket-104106 [...] rt.cpan.org> <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com> <rt-4.0.18-26630-1430352045-1724.104106-6-0 [...] rt.cpan.org> <CALBikpKJ+QebmiUcCn=+YVzWAYWN_XF2tyM0tzZQiOo_Q2Y_aQ [...] mail.gmail.com> <rt-4.0.18-1756-1430410770-521.104106-6-0 [...] rt.cpan.org> <rt-4.0.18-32663-1430783319-732.104106-6-0 [...] rt.cpan.org> <rt-4.0.18-24142-1430856802-468.104106-6-0 [...] rt.cpan.org> <CALBikpJdxqDrNQDwrJ=usT7NOTZt=9+M9s9MuVRm9JR4LcThQQ [...] mail.gmail.com> <rt-4.0.18-9874-1430862186-698.104106-0-0 [...] rt.cpan.org>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-30441-1432660909-1713.104106-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 225
Download (untitled) / with headers
text/plain 225b
For anyone else who is reading this ticket - it is my understanding that 0.50 fixes all outstanding issues noted here. Please advise immediately if this is not the case - it is NOT my intention to be shipping broken software.
MIME-Version: 1.0
In-Reply-To: <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com>
X-Mailer: MIME-tools 5.504 (Entity 5.504)
Content-Disposition: inline
X-RT-Interface: Web
References: <CALBikpKNEZTV0w=9=94jFtUve=Q4qtKEb_Yez77KpeBCj9WXag [...] mail.gmail.com>
Content-Type: text/plain; charset="utf-8"
Message-ID: <rt-4.0.18-19416-1433528994-1266.104106-0-0 [...] rt.cpan.org>
Content-Transfer-Encoding: binary
X-RT-Original-Encoding: utf-8
X-RT-Encrypt: 0
X-RT-Sign: 0
Content-Length: 42
Please re-open if there is still an issue.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

Please report any issues with rt.cpan.org to rt-cpan-admin@bestpractical.com.