A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from http://mail.python.org/pipermail/python-dev/attachments/20100803/bb8a84d7/attachment.html below:

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns:p="urn:schemas-microsoft-com:office:powerpoint" xmlns:a="urn:schemas-microsoft-com:office:access" xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" xmlns:b="urn:schemas-microsoft-com:office:publisher" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet" xmlns:c="urn:schemas-microsoft-com:office:component:spreadsheet" xmlns:odc="urn:schemas-microsoft-com:office:odc" xmlns:oa="urn:schemas-microsoft-com:office:activation" xmlns:html="http://www.w3.org/TR/REC-html40" xmlns:q="http://schemas.xmlsoap.org/soap/envelope/" xmlns:rtc="http://microsoft.com/officenet/conferencing" xmlns:D="DAV:" xmlns:Repl="http://schemas.microsoft.com/repl/" xmlns:mt="http://schemas.microsoft.com/sharepoint/soap/meetings/" xmlns:x2="http://schemas.microsoft.com/office/excel/2003/xml" xmlns:ppda="http://www.passport.com/NameSpace.xsd" xmlns:ois="http://schemas.microsoft.com/sharepoint/soap/ois/" xmlns:dir="http://schemas.microsoft.com/sharepoint/soap/directory/" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:dsp="http://schemas.microsoft.com/sharepoint/dsp" xmlns:udc="http://schemas.microsoft.com/data/udc" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sub="http://schemas.microsoft.com/sharepoint/soap/2002/1/alerts/" xmlns:ec="http://www.w3.org/2001/04/xmlenc#" xmlns:sp="http://schemas.microsoft.com/sharepoint/" xmlns:sps="http://schemas.microsoft.com/sharepoint/soap/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:udcs="http://schemas.microsoft.com/data/udc/soap" xmlns:udcxf="http://schemas.microsoft.com/data/udc/xmlfile" xmlns:udcp2p="http://schemas.microsoft.com/data/udc/parttopart" xmlns:wf="http://schemas.microsoft.com/sharepoint/soap/workflow/" xmlns:dsss="http://schemas.microsoft.com/office/2006/digsig-setup" xmlns:dssi="http://schemas.microsoft.com/office/2006/digsig" xmlns:mdssi="http://schemas.openxmlformats.org/package/2006/digital-signature" xmlns:mver="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns:mrels="http://schemas.openxmlformats.org/package/2006/relationships" xmlns:spwp="http://microsoft.com/sharepoint/webpartpages" xmlns:ex12t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:ex12m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:pptsl="http://schemas.microsoft.com/sharepoint/soap/SlideLibrary/" xmlns:spsl="http://microsoft.com/webservices/SharePointPortalServer/PublishedLinksService" xmlns:Z="urn:schemas-microsoft-com:" xmlns:st="&#1;" xmlns="http://www.w3.org/TR/REC-html40">

<head>


<meta http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
 /* Font Definitions */
 @font-face
        {font-family:"Cambria Math";
       &nbsppanose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
       &nbsppanose-1:2 15 5 2 2 2 4 3 2 4;}
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
       &nbspmargin-bottom:.0001pt;
       &nbspfont-size:11.0pt;
       &nbspfont-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
       &nbspcolor:blue;
       &nbsptext-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
       &nbspcolor:purple;
       &nbsptext-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
       &nbspfont-family:"Calibri","sans-serif";
       &nbspcolor:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
       &nbspmargin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
-->
</style>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]-->
</head>

<body lang=IS link=blue vlink=purple>

<div class=WordSection1>

<p class=MsoNormal>Hi there.<o:p></o:p></p>

<p class=MsoNormal>I was made aware of this oddity here:<o:p></o:p></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'>import
cPickle <o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'> <o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'>reffed =
&quot;xKITTENSx&quot;[1:-1] <o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'>print
repr(cPickle.dumps(reffed))<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:0cm;margin-right:.9pt;margin-bottom:


0cm;margin-left:17.6pt;margin-bottom:.0001pt;text-autospace:none'><span
style='font-size:8.5pt;font-family:"Arial","sans-serif";color:black'>print
repr(cPickle.dumps(&quot;xKITTENSx&quot;[1:-1]))<o:p></o:p></span></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>These strings are different, presumably because of the (ob_refcnt


== 1) optimization used during object pickling.<o:p></o:p></p>

<p class=MsoNormal>This might come as a suprise to many, and is potentially


dangerous if pickling is being used as precursor to some hashing function.<br>
For example, we use code that caches function calls, using something akin to:<br>
<br>
myhash = hash(cPickle.dumps(arguments))<o:p></o:p></p>

<p class=MsoNormal>try:<o:p></o:p></p>

<p class=MsoNormal>  cached_args, cached_value = cache[myhash]<o:p></o:p></p>

<p class=MsoNormal>  if cached_args == arguments: return cached_value<o:p></o:p></p>

<p class=MsoNormal>except KeyError:<o:p></o:p></p>

<p class=MsoNormal>  value = Function(*args)<o:p></o:p></p>

<p class=MsoNormal>  cache[myhash] = artuments, value<o:p></o:p></p>

<p class=MsoNormal>  return value<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>The non-uniqueness of the pickle string will cause unnecessary


cache misses in this code.  Pickling is useful as a precusor because it allows
for more varied object types than hash() alone would.<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>I just wanted to point this out.  We&#8216;ll attempt some


local workarounds here, but it should otherwise be simple to modify pickling to
optionally turn off this optimization and always generate the same output
irrespective of the internal reference counts of the objects.<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Cheers,<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

<p class=MsoNormal>Kristján<o:p></o:p></p>

<p class=MsoNormal><o:p>&nbsp;</o:p></p>

</div>

</body>

</html>



RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4