RE: Odd problem - "I/O interrupted system call"

[email protected] ("Kalchik, Jeffery") Mon, 28 Sep 2015 14:12:07 +0000
Newsgroups perl.ldap
Message-ID <BY2PR01MB1656FA9EFAE46D292ED81EC2CC4F0@BY2PR01MB1656.prod.exchangelabs.com>
--_000_BY2PR01MB1656FA9EFAE46D292ED81EC2CC4F0BY2PR01MB1656prod_
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

As a final follow-up:

The problem is definitely within my process management.  If I ensure that t=
here are no child processes running before the LDAP searches are processes,=
 I have no errors at all.  Somehow, while my scripts are responding to chil=
d completion signals, I'm corrupting other objects.

Jeff

From: Kalchik, Jeffery [mailto:[email protected]]
Sent: Thursday, September 24, 2015 2:35 PM
To: [email protected]
Subject: RE: Odd problem - "I/O interrupted system call"

Story of my life..... A couple of hours after I sent this, it's now becomin=
g clear that I'm the source of my own problems.  Some process management fu=
nctions in a locally written module are causing me problems.

Jeff

From: Kalchik, Jeffery [mailto:[email protected]]
Sent: Thursday, September 24, 2015 10:20 AM
To: [email protected]<mailto:[email protected]>
Subject: Odd problem - "I/O interrupted system call"

I should have subscribed to this list years ago...

I have a problem with an LDAP search.  In one particular script, it's retur=
ning a non-zero result code, with an error message of "I/O interrupted syst=
em call."  In addition, the "net-ldap-socket" field in the LDAP object is d=
isappearing (verified through a Dumper output of the LDAP object.)  This oc=
curs whether the LDAP object is scoped to the innermost loop, or globally s=
coped (reusing the connection.)

Here's a chunk of code:

                                until (defined($LDAP->{'net_ldap_socket'}))=
 {
                                                $LDAP_REGEN++;
                                                if (!defined($LDAP->{'net_l=
dap_socket'})) {
                                                                $LDAP =3D N=
et::LDAP->new("ldap://localhost");
                                                }
                                                $result =3D $LDAP->search (
                                                                "base" =3D>=
 $CFG{"base_dn"},
                                                                "scope" =3D=
> "sub",
                                                                "filter" =
=3D> $ldapsearch,
                                                                "attrs" =3D=
> ['uid', 'uidnumber', 'gidnumber', 'gecos', 'homedirectory', 'loginshell' =
]
                                                                );
                                }

The problem crops up during the $LDAP->search call.  I've discovered that i=
f I check the resultCode field, or the existence of the net-ldap-socket fie=
ld, for the error condition, and simply loop until successful, I will get t=
he intended results.  At the moment, out of some 85-90 expected searches, i=
t's having to regen the LDAP object some 60-65 times.   This condition is s=
omewhat consistent in that the failed searches do occasionally change, but =
only slightly from execution to execution.  It also doesn't seem to matter =
if I connect to ldap://localhost, ldaps://localhost, ldap://some.other.host=
, ldaps://some.other.host, etc.  Even when changing from non-secure to secu=
re connections, the error appears to be largely similar.

Running a wireshark capture against this traffic shows a connection reset(c=
losure) from the script side, not the server side.

Environment:
<jkalc>:(/home/jkalc/389-ds)
$ cat /etc/redhat-release
CentOS release 6.6 (Final)
<jkalc>:(/home/jkalc/389-ds)
$ rpm -qa | grep -i ^perl
perl-Array-Utils-0.5-1.el6.noarch
perl-Excel-Writer-XLSX-0.84-1.el6.noarch
perl-Pod-Escapes-1.04-136.el6_6.1.x86_64
perl-Module-Load-0.16-136.el6_6.1.x86_64
perl-IPC-Cmd-0.56-136.el6_6.1.x86_64
perl-Archive-Extract-0.38-136.el6_6.1.x86_64
perl-Digest-SHA-5.47-136.el6_6.1.x86_64
perl-Parse-CPAN-Meta-1.40-136.el6_6.1.x86_64
perl-Net-SSLeay-1.35-9.el6.x86_64
perl-NetAddr-IP-4.027-7.el6.x86_64
perl-MIME-Lite-3.027-2.el6.noarch
perl-5.10.1-136.el6_6.1.x86_64
perl-ExtUtils-MakeMaker-6.55-136.el6_6.1.x86_64
perl-IO-Zlib-1.09-136.el6_6.1.x86_64
perl-Compress-Raw-Bzip2-2.021-136.el6_6.1.x86_64
perl-Test-Simple-0.92-136.el6_6.1.x86_64
perl-DBD-SQLite-1.27-3.el6.x86_64
perl-HTML-Parser-3.64-2.el6.x86_64
perl-Digest-SHA1-2.12-2.el6.x86_64
perl-Text-Iconv-1.7-6.el6.x86_64
perl-TermReadKey-2.30-13.el6.x86_64
perl-TimeDate-1.16-13.el6.noarch
perl-Pod-Simple-3.13-136.el6_6.1.x86_64
perl-XML-Dumper-0.81-8.el6.noarch
perl-Locale-Maketext-Simple-0.18-136.el6_6.1.x86_64
perl-Log-Message-0.02-136.el6_6.1.x86_64
perl-devel-5.10.1-136.el6_6.1.x86_64
perl-Compress-Raw-Zlib-2.021-136.el6_6.1.x86_64
perl-Archive-Tar-1.58-136.el6_6.1.x86_64
perl-Log-Message-Simple-0.04-136.el6_6.1.x86_64
perl-Module-CoreList-2.18-136.el6_6.1.x86_64
perl-IO-Compress-Bzip2-2.021-136.el6_6.1.x86_64
perl-parent-0.221-136.el6_6.1.x86_64
perl-Time-Piece-1.15-136.el6_6.1.x86_64
perl-HTML-Tagset-3.20-4.el6.noarch
perl-XML-SAX-0.96-7.el6.noarch
perl-libxml-perl-0.08-10.el6.noarch
perl-Digest-HMAC-1.01-22.el6.noarch
perl-XML-SAX-Writer-0.50-8.el6.noarch
perl-Socket6-0.23-4.el6.x86_64
perl-Proc-ProcessTable-0.48-1.el6.x86_64
perl-Archive-Zip-1.30-2.el6.noarch
perl-MailTools-2.04-4.el6.noarch
perl-DBI-1.609-4.el6.x86_64
perl-libs-5.10.1-136.el6_6.1.x86_64
perl-XML-Twig-3.34-1.el6.noarch
perl-Params-Check-0.26-136.el6_6.1.x86_64
perl-IO-Compress-Base-2.021-136.el6_6.1.x86_64
perl-ExtUtils-ParseXS-2.2003.0-136.el6_6.1.x86_64
perl-IO-Compress-Zlib-2.021-136.el6_6.1.x86_64
perl-File-Fetch-0.26-136.el6_6.1.x86_64
perl-Term-UI-0.20-136.el6_6.1.x86_64
perl-Module-Loaded-0.02-136.el6_6.1.x86_64
perl-Module-Build-0.3500-136.el6_6.1.x86_64
perl-CGI-3.51-136.el6_6.1.x86_64
perl-Time-HiRes-1.9721-136.el6_6.1.x86_64
perl-XML-LibXML-1.70-5.el6.x86_64
perl-XML-Parser-2.36-7.el6.x86_64
perl-Convert-ASN1-0.22-1.el6.noarch
perl-Net-LibIDN-0.12-3.el6.x86_64
perl-LDAP-0.40-1.el6.noarch
perl-Config-General-2.52-1.el6.noarch
perl-Mozilla-LDAP-1.5.3-4.el6.x86_64
perl-Crypt-SSLeay-0.57-17.el6.x86_64
perl-Authen-SASL-2.13-3.el6.noarch
perl-Email-Date-Format-1.002-5.el6.noarch
perl-XML-Grove-0.46alpha-40.el6.noarch
perl-version-0.77-136.el6_6.1.x86_64
perl-Test-Harness-3.17-136.el6_6.1.x86_64
perl-Compress-Zlib-2.021-136.el6_6.1.x86_64
perl-Object-Accessor-0.34-136.el6_6.1.x86_64
perl-ExtUtils-Embed-1.28-136.el6_6.1.x86_64
perl-core-5.10.1-136.el6_6.1.x86_64
perl-DBIx-Simple-1.32-3.el6.noarch
perl-libwww-perl-5.833-2.el6.noarch
perl-XML-Filter-BufferText-1.01-8.el6.noarch
perl-IO-Socket-SSL-1.31-2.el6.noarch
perl-Net-DNS-0.65-5.el6.x86_64
perl-MIME-Types-1.28-2.el6.noarch
perl-URI-1.40-2.el6.noarch
perl-Module-Pluggable-3.90-136.el6_6.1.x86_64
perl-Module-Load-Conditional-0.30-136.el6_6.1.x86_64
perl-Package-Constants-0.02-136.el6_6.1.x86_64
perl-ExtUtils-CBuilder-0.27-136.el6_6.1.x86_64
perl-CPAN-1.9402-136.el6_6.1.x86_64
perl-CPANPLUS-0.88-136.el6_6.1.x86_64
perl-XML-NamespaceSupport-1.10-3.el6.noarch
perl-GSSAPI-0.26-6.el6.x86_64

I don't recall seeing this sort of error on other search calls, I'll have t=
o spin through some other scripts I have here to verify.  I do rather stron=
gly suspect that I've got something strange happening in this script, as I'=
ve been able to abstract out the searches, and use them in another script e=
n masse successfully and on the first pass through.

Any suggestions on what/where to look next?

Jeff Kalchik
Systems Engineering
Land O'Lakes
This message may contain confidential material from Land O'Lakes, Inc. (or =
its subsidiary) for the sole use of the intended recipient(s) and may not b=
e reviewed, disclosed, copied, distributed or used by anyone other than the=
 intended recipient(s). If you are not the intended recipient, please conta=
ct the sender by reply email and delete all copies of this message.
This message may contain confidential material from Land O'Lakes, Inc. (or =
its subsidiary) for the sole use of the intended recipient(s) and may not b=
e reviewed, disclosed, copied, distributed or used by anyone other than the=
 intended recipient(s). If you are not the intended recipient, please conta=
ct the sender by reply email and delete all copies of this message.
This message may contain confidential material from Land O'Lakes, Inc. (or =
its subsidiary) for the sole use of the intended recipient(s) and may not b=
e reviewed, disclosed, copied, distributed or used by anyone other than the=
 intended recipient(s). If you are not the intended recipient, please conta=
ct the sender by reply email and delete all copies of this message.

--_000_BY2PR01MB1656FA9EFAE46D292ED81EC2CC4F0BY2PR01MB1656prod_
Content-Type: text/html; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"=
>
<meta name=3D"Generator" content=3D"Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
	{font-family:SimSun;
	panose-1:2 1 6 0 3 1 1 1 1 1;}
@font-face
	{font-family:"Cambria Math";
	panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
	{font-family:Calibri;
	panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
	{font-family:"\@SimSun";
	panose-1:2 1 6 0 3 1 1 1 1 1;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
	{margin:0in;
	margin-bottom:.0001pt;
	font-size:11.0pt;
	font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
	{mso-style-priority:99;
	color:#0563C1;
	text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
	{mso-style-priority:99;
	color:#954F72;
	text-decoration:underline;}
span.EmailStyle17
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:windowtext;}
span.EmailStyle18
	{mso-style-type:personal;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
span.EmailStyle19
	{mso-style-type:personal-reply;
	font-family:"Calibri",sans-serif;
	color:#1F497D;}
.MsoChpDefault
	{mso-style-type:export-only;
	font-size:10.0pt;}
@page WordSection1
	{size:8.5in 11.0in;
	margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
	{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=3D"EN-US" link=3D"#0563C1" vlink=3D"#954F72">
<div class=3D"WordSection1">
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">As a final follow-up:<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">The problem is definit=
ely within my process management.&nbsp; If I ensure that there are no child=
 processes running before the LDAP searches are processes, I have no errors=
 at all.&nbsp; Somehow, while my scripts are responding
 to child completion signals, I&#8217;m corrupting other objects.<o:p></o:p=
></span></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Jeff<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b>From:</b> Kalchik, Jeffery [mailto:JDKalchik@land=
olakes.com]
<br>
<b>Sent:</b> Thursday, September 24, 2015 2:35 PM<br>
<b>To:</b> [email protected]<br>
<b>Subject:</b> RE: Odd problem - &quot;I/O interrupted system call&quot;<o=
:p></o:p></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Story of my life&#8230=
;.. A couple of hours after I sent this, it&#8217;s now becoming clear that=
 I&#8217;m the source of my own problems. &nbsp;Some process management fun=
ctions in a locally written module are causing me problems.<o:p></o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D">Jeff<o:p></o:p></span>=
</p>
<p class=3D"MsoNormal"><span style=3D"color:#1F497D"><o:p>&nbsp;</o:p></spa=
n></p>
<div>
<div style=3D"border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in =
0in 0in">
<p class=3D"MsoNormal"><b>From:</b> Kalchik, Jeffery [<a href=3D"mailto:JDK=
[email protected]">mailto:[email protected]</a>]
<br>
<b>Sent:</b> Thursday, September 24, 2015 10:20 AM<br>
<b>To:</b> <a href=3D"mailto:[email protected]">[email protected]</a><br>
<b>Subject:</b> Odd problem - &quot;I/O interrupted system call&quot;<o:p><=
/o:p></p>
</div>
</div>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I should have subscribed to this list years ago&#823=
0;<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I have a problem with an LDAP search.&nbsp; In one p=
articular script, it&#8217;s returning a non-zero result code, with an erro=
r message of &#8220;I/O interrupted system call.&#8221;&nbsp; In addition, =
the &#8220;net-ldap-socket&#8221; field in the LDAP object is disappearing
 (verified through a Dumper output of the LDAP object.)&nbsp; This occurs w=
hether the LDAP object is scoped to the innermost loop, or globally scoped =
(reusing the connection.)<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Here&#8217;s a chunk of code:<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; until (defined(=
$LDAP-&gt;{'net_ldap_socket'})) {<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp; $LDAP_REGEN&#43;&#43;;<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp; if (!defined($LDAP-&gt;{'net_ldap_socket'})) {<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; $LDAP =3D Net::LDAP-&gt;new(&quot;ldap://localho=
st&quot;);<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp; }<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp; $result =3D $LDAP-&gt;search (<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; &quot;base&quot; =3D&gt; $CFG{&quot;base_dn&quot=
;},<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; &quot;scope&quot; =3D&gt; &quot;sub&quot;,<o:p><=
/o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; &quot;filter&quot; =3D&gt; $ldapsearch,<o:p></o:=
p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; &quot;attrs&quot; =3D&gt; ['uid', 'uidnumber', '=
gidnumber', 'gecos', 'homedirectory', 'loginshell' ]<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp; );<o:p></o:p></p>
<p class=3D"MsoNormal">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbs=
p;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&=
nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<o:p></o:p></p=
>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">The problem crops up during the $LDAP-&gt;search cal=
l. &nbsp;I&#8217;ve discovered that if I check the resultCode field, or the=
 existence of the net-ldap-socket field, for the error condition, and simpl=
y loop until successful, I will get the intended
 results.&nbsp; At the moment, out of some 85-90 expected searches, it&#821=
7;s having to regen the LDAP object some 60-65 times. &nbsp;&nbsp;This cond=
ition is somewhat consistent in that the failed searches do occasionally ch=
ange, but only slightly from execution to execution.&nbsp;
 It also doesn&#8217;t seem to matter if I connect to ldap://localhost, lda=
ps://localhost, ldap://some.other.host, ldaps://some.other.host, etc.&nbsp;=
 Even when changing from non-secure to secure connections, the error appear=
s to be largely similar.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Running a wireshark capture against this traffic sho=
ws a connection reset(closure) from the script side, not the server side.<o=
:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Environment:<o:p></o:p></p>
<p class=3D"MsoNormal">&lt;jkalc&gt;:(/home/jkalc/389-ds)<o:p></o:p></p>
<p class=3D"MsoNormal">$ cat /etc/redhat-release<o:p></o:p></p>
<p class=3D"MsoNormal">CentOS release 6.6 (Final)<o:p></o:p></p>
<p class=3D"MsoNormal">&lt;jkalc&gt;:(/home/jkalc/389-ds)<o:p></o:p></p>
<p class=3D"MsoNormal">$ rpm -qa | grep -i ^perl<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Array-Utils-0.5-1.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Excel-Writer-XLSX-0.84-1.el6.noarch<o:p></o:p><=
/p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Pod-Escapes-1.04-136.el6_6.1.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Module-Load-0.16-136.el6_6.1.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-IPC-Cmd-0.56-136.el6_6.1.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Archive-Extract-0.38-136.el6_=
6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Digest-SHA-5.47-136.el6_6.1.x=
86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Parse-CPAN-Meta-1.40-136.el6_=
6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Net-SSLeay-1.35-9.el6.x86_64<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-NetAddr-IP-4.027-7.el6.x86_64=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-MIME-Lite-3.027-2.el6.noarch<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-5.10.1-136.el6_6.1.x86_64<o:p=
></o:p></span></p>
<p class=3D"MsoNormal">perl-ExtUtils-MakeMaker-6.55-136.el6_6.1.x86_64<o:p>=
</o:p></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-IO-Zlib-1.09-136.el6_6.1.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Compress-Raw-Bzip2-2.021-136.=
el6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Test-Simple-0.92-136.el6_6.1.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-DBD-SQLite-1.27-3.el6.x86_64<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-HTML-Parser-3.64-2.el6.x86_64=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Digest-SHA1-2.12-2.el6.x86_64=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Text-Iconv-1.7-6.el6.x86_64<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-TermReadKey-2.30-13.el6.x86_6=
4<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-TimeDate-1.16-13.el6.noarch<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Pod-Simple-3.13-136.el6_6.1.x=
86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-XML-Dumper-0.81-8.el6.noarch<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Locale-Maketext-Simple-0.18-1=
36.el6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Log-Message-0.02-136.el6_6.1.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-devel-5.10.1-136.el6_6.1.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Compress-Raw-Zlib-2.021-136.e=
l6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Archive-Tar-1.58-136.el6_6.1.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Log-Message-Simple-0.04-136.e=
l6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Module-CoreList-2.18-136.el6_=
6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-IO-Compress-Bzip2-2.021-136.e=
l6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-parent-0.221-136.el6_6.1.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Time-Piece-1.15-136.el6_6.1.x=
86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-HTML-Tagset-3.20-4.el6.noarch=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-XML-SAX-0.96-7.el6.noarch<o:p=
></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-libxml-perl-0.08-10.el6.noarc=
h<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Digest-HMAC-1.01-22.el6.noarc=
h<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-XML-SAX-Writer-0.50-8.el6.noa=
rch<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Socket6-0.23-4.el6.x86_64<o:p=
></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Proc-ProcessTable-0.48-1.el6.=
x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Archive-Zip-1.30-2.el6.noarch=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-MailTools-2.04-4.el6.noarch<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-DBI-1.609-4.el6.x86_64<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-libs-5.10.1-136.el6_6.1.x86_6=
4<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-XML-Twig-3.34-1.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Params-Check-0.26-136.el6_6.1.x86_64<o:p></o:p>=
</p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-IO-Compress-Base-2.021-136.el=
6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-ExtUtils-ParseXS-2.2003.0-136.el6_6.1.x86_64<o:=
p></o:p></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-IO-Compress-Zlib-2.021-136.el=
6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-File-Fetch-0.26-136.el6_6.1.x=
86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-Term-UI-0.20-136.el6_6.1.x86_64<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Module-Loaded-0.02-136.el6_6.1.x86_64<o:p></o:p=
></p>
<p class=3D"MsoNormal">perl-Module-Build-0.3500-136.el6_6.1.x86_64<o:p></o:=
p></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-CGI-3.51-136.el6_6.1.x86_64<o=
:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Time-HiRes-1.9721-136.el6_6.1=
.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-XML-LibXML-1.70-5.el6.x86_64<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-XML-Parser-2.36-7.el6.x86_64<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Convert-ASN1-0.22-1.el6.noarc=
h<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Net-LibIDN-0.12-3.el6.x86_64<=
o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-LDAP-0.40-1.el6.noarch<o:p></=
o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Config-General-2.52-1.el6.noa=
rch<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Mozilla-LDAP-1.5.3-4.el6.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Crypt-SSLeay-0.57-17.el6.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-Authen-SASL-2.13-3.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Email-Date-Format-1.002-5.el6.noarch<o:p></o:p>=
</p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-XML-Grove-0.46alpha-40.el6.no=
arch<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-version-0.77-136.el6_6.1.x86_=
64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Test-Harness-3.17-136.el6_6.1=
.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Compress-Zlib-2.021-136.el6_6=
.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-Object-Accessor-0.34-136.el6_=
6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-ExtUtils-Embed-1.28-136.el6_6=
.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-core-5.10.1-136.el6_6.1.x86_6=
4<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-DBIx-Simple-1.32-3.el6.noarch=
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-libwww-perl-5.833-2.el6.noarc=
h<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-XML-Filter-BufferText-1.01-8.=
el6.noarch<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-IO-Socket-SSL-1.31-2.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Net-DNS-0.65-5.el6.x86_64<o:p></o:p></p>
<p class=3D"MsoNormal">perl-MIME-Types-1.28-2.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-URI-1.40-2.el6.noarch<o:p></o:p></p>
<p class=3D"MsoNormal">perl-Module-Pluggable-3.90-136.el6_6.1.x86_64<o:p></=
o:p></p>
<p class=3D"MsoNormal">perl-Module-Load-Conditional-0.30-136.el6_6.1.x86_64=
<o:p></o:p></p>
<p class=3D"MsoNormal"><span lang=3D"FR">perl-Package-Constants-0.02-136.el=
6_6.1.x86_64<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-ExtUtils-CBuilder-0.27-136.el6_6.1.x86_64<o:p><=
/o:p></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-CPAN-1.9402-136.el6_6.1.x86_6=
4<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span lang=3D"ES">perl-CPANPLUS-0.88-136.el6_6.1.x86=
_64<o:p></o:p></span></p>
<p class=3D"MsoNormal">perl-XML-NamespaceSupport-1.10-3.el6.noarch<o:p></o:=
p></p>
<p class=3D"MsoNormal">perl-GSSAPI-0.26-6.el6.x86_64<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">I don&#8217;t recall seeing this sort of error on ot=
her search calls, I&#8217;ll have to spin through some other scripts I have=
 here to verify. &nbsp;I do rather strongly suspect that I&#8217;ve got som=
ething strange happening in this script, as I&#8217;ve been able
 to abstract out the searches, and use them in another script en masse succ=
essfully and on the first pass through.<o:p></o:p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Any suggestions on what/where to look next?<o:p></o:=
p></p>
<p class=3D"MsoNormal"><o:p>&nbsp;</o:p></p>
<p class=3D"MsoNormal">Jeff Kalchik<o:p></o:p></p>
<p class=3D"MsoNormal">Systems Engineering<o:p></o:p></p>
<p class=3D"MsoNormal">Land O&#8217;Lakes<o:p></o:p></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt;font-family:&quot;Ti=
mes New Roman&quot;,serif">This message may contain confidential material f=
rom Land O'Lakes, Inc. (or its subsidiary) for the sole use of the intended=
 recipient(s) and may not be reviewed, disclosed,
 copied, distributed or used by anyone other than the intended recipient(s)=
. If you are not the intended recipient, please contact the sender by reply=
 email and delete all copies of this message.
<o:p></o:p></span></p>
<p class=3D"MsoNormal"><span style=3D"font-size:12.0pt;font-family:&quot;Ti=
mes New Roman&quot;,serif">This message may contain confidential material f=
rom Land O'Lakes, Inc. (or its subsidiary) for the sole use of the intended=
 recipient(s) and may not be reviewed, disclosed,
 copied, distributed or used by anyone other than the intended recipient(s)=
. If you are not the intended recipient, please contact the sender by reply=
 email and delete all copies of this message.
<o:p></o:p></span></p>
</div>
This message may contain confidential material from Land O'Lakes, Inc. (or =
its subsidiary) for the sole use of the intended recipient(s) and may not b=
e reviewed, disclosed, copied, distributed or used by anyone other than the=
 intended recipient(s). If you are
 not the intended recipient, please contact the sender by reply email and d=
elete all copies of this message.
</body>
</html>

--_000_BY2PR01MB1656FA9EFAE46D292ED81EC2CC4F0BY2PR01MB1656prod_--