aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2015-08-07Make ets diameter_stats a setAnders Svensson
There's no need for it to be ordered, and the ordering has been seen to have an unexpectedly negative impact on performance in some cases. Order when retrieving statistics instead, so as not to change the presentation in diameter:service_info/2.
2015-08-07Remove unnecessary sorting in stats suiteAnders Svensson
The ordering of (ets) diameter_stats (also unnecessary) ensures the sorting.
2015-08-04Set ets {write_concurrency, true} on diameter_statsAnders Svensson
lcnt:inspect/1 recently showed this: lock id #tries collisions [%] time [us] ----- --- ------- --------------- ---------- db_tab diameter_stats 932920 92.9326 330332554
2015-07-19Don't start watchdog timers unnecessarilyAnders Svensson
In particular, restart the timer with each incoming Diameter message, only when the previous timer has expired. Doing so has been seen to result in high lock contention at load, as in the example below: (diameter@test)9> lcnt:conflicts([{print, [name, tries, ratio, time]}]). lock #tries collisions [%] time [us] ----- ------- --------------- ---------- bif_timers 7844528 99.4729 1394434884 db_tab 17240988 1.7947 6286664 timeofday 7358692 5.6729 1399624 proc_link 4814938 2.2736 482985 drv_ev_state 2324012 0.5951 98920 run_queue 21768213 0.2091 63516 pollset 1190174 1.7170 42499 pix_lock 1956 2.5562 39770 make_ref 4697067 0.3669 20211 proc_msgq 9475944 0.0295 5200 timer_wheel 5325966 0.0568 2654 proc_main 10005332 2.8190 1079 pollset_rm_list 59768 1.7752 480
2015-07-19Remove unnecessary erlang:monitor/2 qualificationAnders Svensson
The function has been auto-exported since R14B.
2015-07-19Add missing watchdog suite clauseAnders Svensson
The suite pretends to be gen_tcp-ish in configuring itself to diameter_tcp. The function close/1 can be called as a result.
2015-05-29Update release notesErlang/OTP
2015-05-29Merge branch 'anders/diameter/test/OTP-12767' into maint-17Erlang/OTP
* anders/diameter/test/OTP-12767: Replace config suite call to erlang:now/0 Fix incorrect suite usage of OTP 18 monotonic time Make tls suite crash more verbosely
2015-05-29Merge branch 'anders/diameter/17.5.5/OTP-12757' into maint-17Erlang/OTP
* anders/diameter/17.5.5/OTP-12757: vsn -> 1.9.2 Update appup for 17.5.5 Fix mangled release note
2015-05-29Merge branch 'anders/diameter/sctp/OTP-12744' into maint-17Erlang/OTP
* anders/diameter/sctp/OTP-12744: Fix diameter_sctp listener race Tweak transport suite failures Run traffic suite over SCTP
2015-05-29Merge branch 'anders/diameter/counters/OTP-12741' into maint-17Erlang/OTP
* anders/diameter/counters/OTP-12741: Fix counting of no_result_code/invalid_error_bit Count relayed answers Rename dictionary-related functions/variables Lift answer send up the call chain Count discarded incoming messages Include R-bit in unknown message counter keys Fix broken relay counters Fix broken result code counters Add counters testcase to relay suite
2015-05-24Fix diameter_sctp listener raceAnders Svensson
Commit 4b691d8d made it possible for accepting transport processes to be started concurrently, and commit 77c1b162 adapted diameter_sctp to this, but missed that the publication of the listener process in diameter_reg has to precede the return of its start function. As a result, concurrent starts could result in multiple listener processes.
2015-05-24Tweak transport suite failuresAnders Svensson
Make anything but a comm_up sctp_assoc_change crash. Make timeouts more reasonable.
2015-05-24Run traffic suite over SCTPAnders Svensson
Previously it was only run over TCP. Configure a pool of accepting processes since simultaneous connections are otherwise prone to rejection, as discussed in commit 4b691d8d. Tweak timeouts to more reasonable values.
2015-05-24Replace config suite call to erlang:now/0Anders Svensson
To remove a compilation warning with OTP 18.
2015-05-24Fix incorrect suite usage of OTP 18 monotonic timeAnders Svensson
Value was used as strictly increasing when it's only non-decreasing, causing testcases to fail.
2015-05-24Make tls suite crash more verboselyAnders Svensson
To see why it's failing on at least one test machine.
2015-05-23vsn -> 1.9.2Anders Svensson
2015-05-23Update appup for 17.5.5Anders Svensson
- OTP-12741: disfunctional counters - OTP-12744: diameter_sctp race No load order requirements.
2015-05-23Fix mangled release noteAnders Svensson
2015-05-18Fix counting of no_result_code/invalid_error_bitAnders Svensson
The message was regarded as unknown if the answer message in question set the E-bit and the application dictionary was not the common dictionary.
2015-05-18Count relayed answersAnders Svensson
That is, outgoing answer messages received in response to a handle_request callback having returned {relay, Opts}.
2015-05-18Rename dictionary-related functions/variablesAnders Svensson
To clarify what it is that's being computed, which isn't entirely obvious. No functional change, just renaming.
2015-05-18Lift answer send up the call chainAnders Svensson
As the first step in starting to count outgoing, relayed answer messages.
2015-05-18Count discarded incoming messagesAnders Svensson
An incoming Diameter message is either a request, an answer to an outstanding request, or an unexpected answer. The latter weren't counted, but are now counted on keys of this form: {pid(), {{unknown, 0}, recv, discarded}} The form of the second element is similar to those of other counters, like: {{relay, 0|1}, send|recv, invalid_error_bit} Compare this to the key used when counting known answers: {{ApplicationId, CommandCode, 0}, recv} The application id and command code aren't included so as not to count on arbitrary keys, a topic last visited in commit 49e8b11c.
2015-05-18Include R-bit in unknown message counter keysAnders Svensson
To differentiate between requests and answers, in analogy with relay counters. This isn't backwards compatible, but these counters aren't yet documented.
2015-05-18Fix broken relay countersAnders Svensson
Commit 49e8b11c broke the counting of relayed message, causing them to be accumulated as unknown messages.
2015-05-18Fix broken result code countersAnders Svensson
Commit a1df50b3 broke result code counters in the case of answer messages sent as a header/avp lists (unless the avps, untypically, set the name field), and for answers sent/received in the relay application.
2015-05-18Update release notesErlang/OTP
2015-05-18Merge branch 'hans/ssh/ssh_msg_debug_fun/OTP-12738' into maint-17Erlang/OTP
* hans/ssh/ssh_msg_debug_fun/OTP-12738: ssh: option for handling the SSH_MSG_DEBUG message's printouts
2015-05-17Add counters testcase to relay suiteAnders Svensson
Which fails for a variety of reasons to be addressed in subsequent commits.
2015-05-13ssh: option for handling the SSH_MSG_DEBUG message's printoutsHans Nilsson
A fun could be given in the options that will be called whenever the SSH_MSG_DEBUG message arrives. This enables the user to format the printout or just discard it. The default is changed to not print the message. In RFC4253 printing is a SHOULD, but our new default is to protect logs from dos attacs.
2015-05-12inets: reject negative content-lengthHans Nilsson
2015-05-06Prepare releaseErlang/OTP
2015-05-06Merge branch 'anders/diameter/17.5.3/OTP-12702' into maint-17Erlang/OTP
* anders/diameter/17.5.3/OTP-12702: Fix broken pre-17.4 appup Update appup for 17.5.3 vsn -> 1.9.1
2015-05-06Merge branch 'anders/diameter/counters/OTP-12701' into maint-17Erlang/OTP
* anders/diameter/counters/OTP-12701: Add counters testcase to 3xxx suite Fix counting error with unknown application id Add missing doc wording
2015-05-06Merge branch 'anders/diameter/result_codes/OTP-12654' into maint-17Erlang/OTP
* anders/diameter/result_codes/OTP-12654: Fix broken traffic testcase Match harder in traffic suite Don't confuse Result-Code and Experimental-Result
2015-05-06Merge branch 'anders/diameter/extra_avp_bit/OTP-12642' into maint-17Erlang/OTP
* anders/diameter/extra_avp_bit/OTP-12642: Remove extra avp bit from diameter_avp decode
2015-05-06Merge branch 'dgud/common_test/netconf-user-caps/OTP-12707' into maint-17Erlang/OTP
* dgud/common_test/netconf-user-caps/OTP-12707: common_test: Add user capability option to hello
2015-05-06Merge branch 'peppe/common_test/ct_telnet_wait_for_prompt.maint' into maint-17Erlang/OTP
* peppe/common_test/ct_telnet_wait_for_prompt.maint: Introduce wait_for_prompt option
2015-05-06Merge branch 'peppe/common_test/timetrap_line.maint' into maint-17Erlang/OTP
* peppe/common_test/timetrap_line.maint: Fix problem with line number not always showing in log
2015-05-06Merge branch 'peppe/common_test/modify_vts.maint' into maint-17Erlang/OTP
* peppe/common_test/modify_vts.maint: Get the VTS mode working with private CT version of webtool Change order of ct_run help sections Prepare for webtool integration with CT
2015-05-06Merge branch 'peppe/common_test/longname_problem.maint' into maint-17Erlang/OTP
* peppe/common_test/longname_problem.maint: Fix error in ct_logs, not handling long names correctly
2015-05-06Merge branch 'peppe/test_tools_vsn.maint' into maint-17Erlang/OTP
* peppe/test_tools_vsn.maint: Bump version numbers
2015-05-06Merge branch 'dgud/common_test/netconf/OTP-12698' into maint-17Erlang/OTP
* dgud/common_test/netconf/OTP-12698: common_test: Recurse when there is more data in netconf
2015-05-06Merge branch 'raimo/snmp/net_if-port-0-with-fd-option/OTP-12669' into maint-17Erlang/OTP
* raimo/snmp/net_if-port-0-with-fd-option/OTP-12669: Improve agent fix as in manager Use port 0 with {fd,Fd}, use snmpm_fd in manager
2015-05-05common_test: Add user capability option to helloDan Gudmundsson
2015-05-05Fix broken traffic testcaseAnders Svensson
The send_error testcase tested that Session-Id in an answer-message was not undefined, but that's always the case since the AVP has arity 0 or 1. The correct test is that it's a list of length 1, to ensure that diameter has inserted the session id as expected.
2015-05-05Match harder in traffic suiteAnders Svensson
To ensure that the expected answer messages are received.
2015-05-05Don't confuse Result-Code and Experimental-ResultAnders Svensson
Decode of an answer message not setting the E-bit, and containing Experiment-Result but not Result-Code, identified Result-Code as the erroneous when Erroneous-Result-Code was 3xxx. Here's an example (from trace) of a the errors field after decode: [{5004, {diameter_avp,undefined,undefined,false,false,undefined,'Result-Code', 3001,undefined,undefined}}], The diameter_avp was just constructed from the AVP name and decoded result, without regard for which result code AVP contained the value. Fix by extracting the AVP from the incoming message.