<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: select() returns -1, errno:16 EBUSY, socket error: 10102 in Operating System - OpenVMS</title>
    <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414423#M57990</link>
    <description>This message is a repost; ITRC blew up again, and does not appear to have accepted the previous attempt to post this.&lt;BR /&gt;&lt;BR /&gt;--&lt;BR /&gt;&lt;BR /&gt;The:&lt;BR /&gt;&lt;BR /&gt;amt = (*AGS_selectFunc)( amt + 1, &amp;amp;readfds, &amp;amp;writefds, NULL, ptimeout );&lt;BR /&gt;&lt;BR /&gt;is not nearly enough source code for a reasonable discussion.&lt;BR /&gt;&lt;BR /&gt;It's not even certain that single source line actually invokes a select call.  Well, not unless we assume where that "AGS_selectFunc" ends up at run-time...  And what readfds and writefds point to, for that matter.  Nor the value stored in amt at run-time.&lt;BR /&gt;&lt;BR /&gt;Have you run this under the debugger, and taken a look at the code at run-time?  (And I'd probably take a close look at that "AGS_selectFunc" pointer, too; at where that ends up.&lt;BR /&gt;&lt;BR /&gt;CHANNELCNT is a system parameter, and visible via the SYSMAN utility PARAMS command.  As with the above discussion, these quotas and the CHANNELCNT value are potential limits.  Comparatively unlikely to be the trigger, too, as compared with bugs in the code. Examine the code first; that's the most likely trigger here.  And only then look to see if you're at a limit beyond what's stored in amc, and in the bit arrays.&lt;BR /&gt;&lt;BR /&gt;</description>
    <pubDate>Wed, 06 May 2009 18:42:29 GMT</pubDate>
    <dc:creator>Hoff</dc:creator>
    <dc:date>2009-05-06T18:42:29Z</dc:date>
    <item>
      <title>select() returns -1, errno:16 EBUSY, socket error: 10102</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414419#M57986</link>
      <description>&lt;!--!*#--&gt;I have 30 client applications that connect to a server using sockets.  When the 31st client application tries to connect the server does a select on the socket and select returns -1 where the previous 30 clients did not.  The errno and socket error returned are:&lt;BR /&gt;&lt;BR /&gt;  errno:16 EBUSY&lt;BR /&gt;  socket error: 10102&lt;BR /&gt;&lt;BR /&gt;I checked the socket using fstat and it says that it is a valid socket so there must be some other problem.  Anyone have any ideas of what I could look for?</description>
      <pubDate>Wed, 06 May 2009 16:37:21 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414419#M57986</guid>
      <dc:creator>Gary Henry_1</dc:creator>
      <dc:date>2009-05-06T16:37:21Z</dc:date>
    </item>
    <item>
      <title>Re: select() returns -1, errno:16 EBUSY, socket error: 10102</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414420#M57987</link>
      <description>hi,&lt;BR /&gt;&lt;BR /&gt;  have you got any details on the operating system and tcpip stack involved here ?&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 06 May 2009 17:16:07 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414420#M57987</guid>
      <dc:creator>marsh_1</dc:creator>
      <dc:date>2009-05-06T17:16:07Z</dc:date>
    </item>
    <item>
      <title>Re: select() returns -1, errno:16 EBUSY, socket error: 10102</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414421#M57988</link>
      <description>You'll need sufficient I/O channels in AUTHORIZE and sufficient channels in CHANNELCNT and  FD_SETSIZE can get involved here, but the culprit here is probably the value specified for the nfds argument; that's the size of the bit array of the channels that are involved in the select call.&lt;BR /&gt;&lt;BR /&gt;And for weirdnesses around the value of 31, also watch out for signed versus unsigned handling.&lt;BR /&gt;&lt;BR /&gt;What that "socket error" here might be isn't certain; you'll want to look at the code and see what value (and what radix) that is returning.&lt;BR /&gt;&lt;BR /&gt;If that's not it, please post more details and/or some code and/or a reproducer.  And as requested, platform and version details, too.</description>
      <pubDate>Wed, 06 May 2009 17:44:38 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414421#M57988</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2009-05-06T17:44:38Z</dc:date>
    </item>
    <item>
      <title>Re: select() returns -1, errno:16 EBUSY, socket error: 10102</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414422#M57989</link>
      <description>I am using OpenVMS 8.2 and 8.3 on Itanium processors.  The TCP/IP stack is whatever comes with OpenVMS for 8.2 and 8.3.  Here are my AUTHORIZE settings:&lt;BR /&gt;&lt;BR /&gt;Maxjobs:         0  Fillm:       300  Bytlm:      1000000&lt;BR /&gt;Maxacctjobs:     0  Shrfillm:      0  Pbytlm:           0&lt;BR /&gt;Maxdetach:       0  BIOlm:     10000  JTquota:       4096&lt;BR /&gt;Prclm:          75  DIOlm:     10000  WSdef:       100000&lt;BR /&gt;Prio:            4  ASTlm:       400  WSquo:       100000&lt;BR /&gt;Queprio:         0  TQElm:       400  WSextent:    100000&lt;BR /&gt;CPU:        (none)  Enqlm:      4000  Pgflquo:    1000000&lt;BR /&gt;&lt;BR /&gt;Are the I/O channels the BIOlm and DIOlm?  What are sufficient values?&lt;BR /&gt;&lt;BR /&gt;How do I check to see what my CHANNELCNT is set to and how can I increase it?&lt;BR /&gt;&lt;BR /&gt;My FD_SETSIZE is currently set to 1024 and my nfds setting is always set to one more than the socket number that is trying to be opened.  For example, if I am doing a select on socket 34 my nfds is set to 35.&lt;BR /&gt;&lt;BR /&gt;I don't have a program I can provide to reproduce or code sample other that the following select statement:&lt;BR /&gt;&lt;BR /&gt;    amt = (*AGS_selectFunc)( amt + 1, &amp;amp;readfds, &amp;amp;writefds, NULL, ptimeout );&lt;BR /&gt;&lt;BR /&gt;Thanks for responding so quickly.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 06 May 2009 18:21:47 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414422#M57989</guid>
      <dc:creator>Gary Henry_1</dc:creator>
      <dc:date>2009-05-06T18:21:47Z</dc:date>
    </item>
    <item>
      <title>Re: select() returns -1, errno:16 EBUSY, socket error: 10102</title>
      <link>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414423#M57990</link>
      <description>This message is a repost; ITRC blew up again, and does not appear to have accepted the previous attempt to post this.&lt;BR /&gt;&lt;BR /&gt;--&lt;BR /&gt;&lt;BR /&gt;The:&lt;BR /&gt;&lt;BR /&gt;amt = (*AGS_selectFunc)( amt + 1, &amp;amp;readfds, &amp;amp;writefds, NULL, ptimeout );&lt;BR /&gt;&lt;BR /&gt;is not nearly enough source code for a reasonable discussion.&lt;BR /&gt;&lt;BR /&gt;It's not even certain that single source line actually invokes a select call.  Well, not unless we assume where that "AGS_selectFunc" ends up at run-time...  And what readfds and writefds point to, for that matter.  Nor the value stored in amt at run-time.&lt;BR /&gt;&lt;BR /&gt;Have you run this under the debugger, and taken a look at the code at run-time?  (And I'd probably take a close look at that "AGS_selectFunc" pointer, too; at where that ends up.&lt;BR /&gt;&lt;BR /&gt;CHANNELCNT is a system parameter, and visible via the SYSMAN utility PARAMS command.  As with the above discussion, these quotas and the CHANNELCNT value are potential limits.  Comparatively unlikely to be the trigger, too, as compared with bugs in the code. Examine the code first; that's the most likely trigger here.  And only then look to see if you're at a limit beyond what's stored in amc, and in the bit arrays.&lt;BR /&gt;&lt;BR /&gt;</description>
      <pubDate>Wed, 06 May 2009 18:42:29 GMT</pubDate>
      <guid>https://community.hpe.com/t5/operating-system-openvms/select-returns-1-errno-16-ebusy-socket-error-10102/m-p/4414423#M57990</guid>
      <dc:creator>Hoff</dc:creator>
      <dc:date>2009-05-06T18:42:29Z</dc:date>
    </item>
  </channel>
</rss>

