aboutsummaryrefslogtreecommitdiffstats
path: root/lib
AgeCommit message (Collapse)Author
2012-06-08ssl: Avoid second bottleneck in supervisorIngela Anderton Andin
Do proc_lib:spawn_link instead of proc_lib:start_link as synchronized init is not used/needed anyway.
2012-06-08ssl: File handling optimizationIngela Anderton Andin
Avoid cach validation with file:file_info/2 as this i too expensive and causes a bottleneck in the file server. Instead we expose a new API function ssl:clear_pem_cache/0 to deal with the problem. As we think it will be of occasional use and the normal case is that the cache will be valid we think it is the right thing to do. Convert file paths to binary representation in the ssl API module to avoid uncessarry calls in file later on. Also add sanity checks for openssl versions in testsuite due to new openssl bugs.
2012-06-08ssl: Simpler PEM cacheIngela Anderton Andin
2012-06-08ssl: Refactored for readabilityIngela Anderton Andin
Instance of state variable that are "updated" in a function is called for example State0 and the last instance, that should be returned, is called State possible intermidiat versions are suffixed by increasing numbers. State0 may be rturned in error cases. Avoid nesting case statments.
2012-06-08ssl: Use md5 as file ref id instead of filenamesDan Gudmundsson
Aviods storing a lot of data
2012-06-08ssl: Move ets:select bottleneck in serverDan Gudmundsson
Only use ssl_manager for selecting new ids to guarantee uniqueness, but reuse check does not need to be performed by the manager.
2012-06-08ssl: Renegotiate updates session id in gen_fsm stateIngela Anderton Andin
The session id keept in the connection processes state must be updated to be the id selected by ssl_handshake:client_hello, failing to do so will cause a crash if the session is not reused.
2012-06-08ssl: Use ordered_set in cacheDan Gudmundsson
So we can use partial bound keys for matching
2012-06-08ssl: Move and avoid ets:select bottleneck in clientIngela Anderton Andin
Do not use ssl_manager process for selecting an id. It's unnecessary to involve the manager process at all on the client side.
2012-06-08ssl: Reuse session check optimizationIngela Anderton Andin
2012-06-08ssl: Avoid supervior bottleneckIngela Anderton Andin
This is done by using proc_lib and gen_fsm:enter_loop so that supervisor will not have to wait for the relative long initialization of an ssl connection process before starting another connection process.
2012-06-04Merge branch 'bjorn/remove-hybrid-heap/OTP-10105' into maintLukas Larsson
* bjorn/remove-hybrid-heap/OTP-10105: Remove stale code for hybrid heap and incremental GC Remove the hipe_bifs:show_message_area/0 BIF Remove support for erlang:system_info(global_heaps_size) Remove the erlang:garbage_collect_message_area/0 BIF Remove workarounds for hybrid and shared heaps in test suites
2012-06-01Bug fixes and improvements of dialyzer_typesigHans Bolinder
1. Sometimes the solver forgot that a list had entered the error state. The bug has been fixed by storing the atom 'error' in MapDict. An example where the bug occurred is io_lib_pretty:printable_bin(). The returned spec was weaker than it should have been, but the fix-point loop hid the bug (in this case). 2. lists:partition() has been substituted for lists:splitwith() in enumerate_constraints(). This fix together with 3. solves a problem with long execution times for deeply nested fun:s. An example which is now much faster is lib/compiler/test/lc_SUITE:deeply_nested/1 (included as dialyzer/test/small_SUITE_data/src/deep_lc.erl). 3. The calculation of components in enumerate_constraints() has been simplified and optimized. The important thing here is that _all_ of the simple constraints have been saturated before entering the complex part. 4. The pretty printing of constraints has been improved.
2012-06-01Merge branch 'lukas/stdlib/ensure_dir_infinite_loop/OTP-10104' into maintLukas Larsson
* lukas/stdlib/ensure_dir_infinite_loop/OTP-10104: Fix infinite loop when an invalid drive letter it given
2012-06-01Merge branch 'lukas/test-cases' into maintLukas Larsson
* lukas/test-cases: Ignore calls to wx* modules if it is undefined Fix erl_interface testcases Update gccifier to respect -link option Extand timetrap for escript tests Fix compilation issues on windows and Ubuntu 12.04 Ignore common_test bootstrap
2012-05-31Merge branch 'sa/dialyzer-parallel' into maintHenrik Nord
* sa/dialyzer-parallel: (54 commits) Logfile-like statistics (enabled with --resources) Anonymous SCCtoPID ETS table Anonymous time server Regulate all kinds of running workers up to the number of schedulers Relocate start and stop of timing server Better names for callgaph ETS tables Remove needless conversion Fix types and specs Inline a function in dialyzer_worker Remove unused function Change --time to --statistics and include more info Better reflect side-effect based code in dialyzer_callgraph Code simplifications (tidier) More efficient calculation of module deps and postorder Solve big SCC constraints in parallel Coordinator is no longer a separate process All spawns are now spawn_links Fix race in coordinator Typesig and dataflow analyses no longer use ticket regulation Plain concatenation for typesig not-fixpoint list ... OTP-10103
2012-05-31Add type info for compile:file/1,2 macro optionGustav Simonsson
2012-05-31Merge branch 'gustav/os_mon/disksup_call_timeout/OTP-10100' into maintGustav Simonsson
* gustav/os_mon/disksup_call_timeout/OTP-10100: Add infinity timeout to os_mon calls
2012-05-30Merge branch 'lukas/fix_windows_release_tests/OTP-10099' into maintLukas Larsson
* lukas/fix_windows_release_tests/OTP-10099: Fix compilation of examples and tc names on windows Create erl.ini for host emulator
2012-05-30Fix erl_interface testcasesLukas Larsson
2012-05-30Update gccifier to respect -link optionLukas Larsson
2012-05-30Extand timetrap for escript testsLukas Larsson
2012-05-30Fix chunk usage checkLukas Larsson
2012-05-23Merge branch 'raimo/tools/remove-fprof-tuple-funs/OTP-10091' into maintRaimo Niskanen
* raimo/tools/remove-fprof-tuple-funs/OTP-10091: tools: Bump version tools: Remove usage of tuple funs in fprof
2012-05-23Fix compilation of examples and tc names on windowsLukas Larsson
2012-05-23Merge branch 'lukas/kernel/fix-gen_udp_tcp-leak/OTP-10094' into maintLukas Larsson
* lukas/kernel/fix-gen_udp_tcp-leak/OTP-10094: Add testcase for controlling_process(P,self()) Fix port leaking after controlling_process(Port, self())
2012-05-23Fix infinite loop when an invalid drive letter it givenLukas Larsson
2012-05-21Add infinity timeout to os_mon callsGustav Simonsson
2012-05-21Logfile-like statistics (enabled with --resources)Stavros Aronis
2012-05-21Anonymous SCCtoPID ETS tableStavros Aronis
2012-05-21Anonymous time serverStavros Aronis
2012-05-21Regulate all kinds of running workers up to the number of schedulersStavros Aronis
2012-05-21Relocate start and stop of timing serverStavros Aronis
2012-05-21Better names for callgaph ETS tablesStavros Aronis
2012-05-21Remove needless conversionStavros Aronis
The final version of the callgraph needs not be "reduced" for more efficient copying.
2012-05-21Fix types and specsStavros Aronis
2012-05-21Inline a function in dialyzer_workerStavros Aronis
2012-05-21Remove unused functionStavros Aronis
2012-05-21Change --time to --statistics and include more infoStavros Aronis
2012-05-21Better reflect side-effect based code in dialyzer_callgraphStavros Aronis
2012-05-21Code simplifications (tidier)Kostis Sagonas
2012-05-21More efficient calculation of module deps and postorderStavros Aronis
2012-05-21Solve big SCC constraints in parallelStavros Aronis
2012-05-21Coordinator is no longer a separate processStavros Aronis
2012-05-21All spawns are now spawn_linksStavros Aronis
2012-05-21Fix race in coordinatorStavros Aronis
2012-05-21Typesig and dataflow analyses no longer use ticket regulationStavros Aronis
2012-05-21Plain concatenation for typesig not-fixpoint listStavros Aronis
2012-05-21Ticket-based regulation of memory consumptionStavros Aronis
2012-05-21Infinity timeout for coordinator callsStavros Aronis