[erlang-questions] phantom ports in erlang:ports()
Tim Watson
watson.timothy@REDACTED
Fri Nov 16 11:25:44 CET 2012
I can't get to the issue tracker right this moment, but these sockets are stuck in CLOSE_WAIT for a long time. The customer reports normally having circa 80±20 live connections, most of them listeners that do not close the sockets. Under normal conditions, there are no CLOSE_WAIT sockets showing up at all.
The customer also reports that even when the CLOSE_WAIT connections drop off that no further connections can be established, and we see some rather delightful errors coming back from these 'phantom' ports:
{inet_async,#Port<0.5808>,25398,{error,system_limit}}
but the system limits are *not* reached by any stretch of the imagination:
{file_descriptors,
[{total_limit,924},
{total_used,126},
{sockets_limit,829},
{sockets_used,56}]},
{processes,[{limit,1048576},{used,693}]}...
So this is more than just sockets stuck in CLOSE_WAIT by the looks of things.
On 16 Nov 2012, at 09:40, Valentin Micic wrote:
> I guess, a more interesting questions is weather or not sockets in this state may be seen as "phantom" ports?
>
> V/
>
> On 16 Nov 2012, at 11:32 AM, Jesper Louis Andersen wrote:
>
>>
>>
>> On Nov 16, 2012, at 7:29 AM, Valentin Micic <valentin@REDACTED> wrote:
>>
>>> I am wondering if this may be attributed to CLOSE_WAIT/TIME_WAIT states sockets may be in during the connection shutdown?
>>> By the some token, if the server in question has a higher frequency of short-lived connections, this may also explain discrepancy between number of file descriptors as reported by lsof and number of active ports reported by emulator.
>>>
>>
>> TIME_WAIT is not a problem. It is just the kernel keeping track of the connection if packets get sent still by the other end. CLOSE_WAIT on the other hand sounds bad. This state should happen when the other end has sent a FIN and started to close down the socket, but the application (i.e., Erlang?) has not closed the socket down yet.
>>
>> If you have lingering CLOSE_WAITs that are there for a long time it is usually a warning sign that something may be bad.
>>
>> Jesper Louis Andersen
>> Erlang Solutions Ltd., Copenhagen
>>
>>
>> _______________________________________________
>> erlang-questions mailing list
>> erlang-questions@REDACTED
>> http://erlang.org/mailman/listinfo/erlang-questions
>
> _______________________________________________
> erlang-questions mailing list
> erlang-questions@REDACTED
> http://erlang.org/mailman/listinfo/erlang-questions
More information about the erlang-questions
mailing list