[SNMP4J] DefaultTcpTransportMapping: socket disconnect causes timeouts for all
Frank Fock
fock at agentpp.com
Thu Jun 19 21:00:44 CEST 2014
Hi Ladd,
This fix could indeed improve the transport mappings behavior in some
situations!
Thanks for sorting this out.
The getFirst() calling is inefficient, because it takes several loops to
get all keys processed
(they are removed from the list by other code). In the case of a dropped
connection,
it should have worked too with the getFirst() because an exception would
have removed
the key from the list.
Best regards,
Frank
Am 19.06.2014 20:53, schrieb Ladd:
> Ladd <ladd at ...> writes:
>
> I think I found the it!! DefaultTcpTransportMapping has this method:
>
> private void processPending() {
>
> synchronized (pending) {
> for (int i=0; i<pending.size(); i++) {
> SocketEntry entry = pending.getFirst();
> /*
> * ... continue on to process entry
> */
>
> Works great if there's only one pending entry. But the bug occurs when
> there are two or more due getFirst() being called over and over.
>
> I change it to entry = pending.get(i) and reran my test. So far so good!
>
> Please confirm.
>
> Thanks!
>
> - Ladd
>
> _______________________________________________
> SNMP4J mailing list
> SNMP4J at agentpp.org
> https://oosnmp.net/mailman/listinfo/snmp4j
--
---
AGENT++
Maximilian-Kolbe-Str. 10
73257 Koengen, Germany
https://agentpp.com
Phone: +49 7024 8688230
Fax: +49 7024 8688231
More information about the SNMP4J
mailing list