Age | Commit message (Collapse) | Author |
|
* siri/observer/slow-load-of-big-crashdumps/OTP-9051:
Wait longer than 5 sec instead of 2.5 sec for crashdump to be created in test
Bugfix: Never deliver empty chunk to inets
Fix file descriptor leak in crashdump_viewer:chunk_page
Minor bugfix related to improved performance of crashdump_viewer
Document new cdv script and cdv.bat file for starting crashdump viewer
Add shell script and .bat file to start crashdump_viewer
Fix slow parsing of crashdumps
|
|
|
|
|
|
|
|
Also, remove compiler warnings for crashdump_viewer_SUITE and fix
Makefile in test directory so Emakefile does not grow.
|
|
|
|
|
|
Since browsers no longer can provide the full path of a file selected
with a file-type input field (browse button), the input field for
loading a crashdump is now changed to a plain text input field. Since
this reduces the user-friendlyness, a shell script (and a .bat file)
has instead been added so the crashdump_viewer can be started directly
from the command line - and thus normal tab completion can be used for
selecting the crashdump file.
Usage: cdv file [ browser ]
|
|
This is a first attempt at fixing the problem described in seq11783 -
crashdump_viewer is very slow at parsing big crashdumps. To open the
first page for a dump of 17M takes about 2 minutes and a dump of 280M
takes 1.5-2 hours.
The main problmem is that the cdv_dump_index_table, which holds all
tags read from the dump, is a bag. Profiling shows that ~95% of the
time is spent in ets:insert. The table is now changed to an
ordered_set.
A second problem occured when a page with many table rows was
opened. These pages were sent to inet in one chunk, causing both
crashdump_viewer_server and the inets (mod_esi) process to grow very
much in memory usage. To overcome this, the pages are now sent to
inets in chunks of 1000 rows, and the data is coverted to binaries to
avoid data copying between the two processes.
Also, some new information in the crashdump was not recognized by the
crashdump_viewer. This has been fixed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Files (actually one file - multitrace.erl), marked as EXAMPLE_FILES are
installed into $(RELSYSDIR)/src which is inconsistent with installation
procedure for other example file in other modules.
This file should be installed into $(RELSYSDIR)/examples directory.
Signed-off-by: Peter Lemenkov <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
NIF function prototypes in order to allow more than 3 function
arguments. Also an incompatible change in the return value of
erlang:load_nif/2. Added support for references, floats and term
comparison in NIFs. Read more in the documentation of erl_nif and
erlang:load_nif/2.
|
|
|