That makes sense, I'll look into this.
On Dec 15, 10:00 pm, "Brad Fitzpatrick" <[email protected]> wrote: > The JSON Perl libraries must be using one of the SvFLAGS on the Perl scalar > to determine its JavaScript type (string vs. integer). While Perl scalars > don't have that distinction, they do have that internal SvFLAGS bits that > say how it was last accessed (~effectively). > So the Cache::Memcache code is touching it like a string, and that bit is > changing on your variable. Then because you never tell the JSON Perl > library how to treat it, it uses the last-used-as bits on the Perl variable. > > Fix, if it matters: tell JSON.pm the types of your variables. Don't rely > on error-prone detection by SvFLAGS. > > On Mon, Dec 15, 2008 at 7:40 PM, jtal <[email protected]> wrote: > > > Oh this might not be the right place for the question. I found this > > list on the CPAN page for Cache::Memcached. > > > I have a perl subroutine that is printing out the JSON version of a > > perl data structure. Without the set() the data looks like this: > > > (1111665600000, 2) > > > WIth the set() it looks like: > > > ("1111665600000", 2) > > > The interesting thing is that I never get() the data. I just comment/ > > uncomment the set() and see the double quoted strings show up or > > disappear. > > > Thanks for any help. Sorry if this is the wrong place for this > > question. > > > -j > > > On Dec 15, 6:11 pm, Dustin <[email protected]> wrote: > > > On Dec 15, 3:50 pm, jtal <[email protected]> wrote: > > > > > I'm storing data structure that includes timestamps in the form of > > > > seconds from epoch. When I call set, a number like: > > > > > 1111665600000 > > > > > becomes: > > > > > "1111665600000" > > > > > Notice it has become double quoted. There is no get() involved- only a > > > > set(). Anyone have any ideas? > > > > It's not clear what you're doing. What client API are you using? > > > How are you inspecting this data?
