Age | Commit message (Collapse) | Author |
|
* siri/cdv/misc-improvements/OTP-14755:
[cdv] Fix test of size limit reached on crash dump
[cdv] Display warning if heap is incomplete
[cdv] Check if dump version is newer than cdv can handle
[cdv] Add comment about ets tables
|
|
This test failed every now and then since the selected max size could
be greater than the actual size of the dump - so the dump was not
truncated. This is now corrected.
|
|
|
|
If the version of the given crash dump is newer than what
crashdump_viewer is prepared to read, then crashdump_viewer will
display an info dialog and then terminate. This is to allow major
updates of the format of crash dumps.
|
|
|
|
Commit e1310b8f introduced a bug which caused the observer tool (and
crashdump_viewer) to crash when trying to display an empty binary. The
same change would also cause leading zeros in a binary to disappear in
the preview. The bug is now corrected.
|
|
|
|
When a literal was used from several processes, the literal would
be dumped in only one of the processes. The other processes
that referenced the literals would have incomplete heap data.
|
|
Maps would be dumped as the atom 'undefined', which is
not very informative.
|
|
* siri/observer/multiple-ms-clauses/ERL-489:
Allow multiple clauses in match spec
|
|
* lars/doc-cleanup/OTP-14475:
[edoc] Remove unused module otpsgml_layout.erl
Remove unused files from the documentation build
|
|
|
|
|
|
|
|
|
|
* dgud/update-runtime-deps:
Update runtime deps to depend on new stdlib functionality
|
|
~tw and new string functions are new since OTP-20 (stdlib-3.4)
|
|
|
|
|
|
|
|
Warn the user if the node executing the crashdump viewer potentially
could overwrite the crashdump under inspection.
|
|
|
|
Earlier, crashdump_viewer stored an index of all binaries in a gb_tree
on startup. The binary index was also stored in the
cdv_dump_index_table along with all other "=xxx" tags from the
dump. The difference between the indices was that the ets table
contained the addresses of the binaries as strings (the hex address
found after the "=binary:" tag) and in the gb_tree this hex address
was instead converted to its integer value. The index in the ets table
was only used once - when creating the gb_tree. The gb_tree was used
for all later looups (to map integer address to file position).
This commit replaces the two storages with one new ets table,
cdv_binary_index_table, using the integer value of the hex address as
key, and the position in the crashdump file as value. In the case of
many binaries, this makes the start of crashdump viewer faster (only
one place to write), and the data usage smaller (hex address strings
are no longer stored). And it avoids the gc of the gb_tree.
|
|
This is a bug fix: the end of the 'Last calls' section is meant to be
an empty line, but in some situations this is not the case. This could
cause the complete dump to be read and stored as 'Last calls', causing
very unexpected behavior in the crashdump viewer.
This commit adds a check for ": ", which indicates that a new heading
has occured and thus the 'Last calls' section is completly read.
|
|
|
|
This is to avoid crashdumps generated by crashdump_viewer, possibly
overwriting the currently analysed crashdump.
|
|
|
|
Show the statistics, limits and percentage for atoms, processes,ports and ETS.
Backward compatibility with old versions, In case the valuse is missing it shows
the string Not available.
|
|
|
|
|
|
|
|
Print function names and registered names with ~tw.
Open dump file with encoding utf8.
|
|
|
|
Use lib:extended_parse_term/1 to allow editing terms which contains
pids, ports and terms.
ERL-178
|
|
* dgud/observer/fix-bytes:
observer: Fix words to bytes
|
|
* siri/etop/many-procs-timeout/OTP-14393:
[etop] Extend timer when fetching process info from node
|
|
heap and stack size in erlang:process_info/2 are reported as words
not as bytes.
|
|
Ref: ERL-297
Now sorts 'Name or Initial Func' column in 'Processes' tab in
(us-ascii) order for both names and initial functions.
|
|
Do not crash if observed node stops
|
|
Only listen to toplevel notebook changes, otherwise if
another windows have a notebook and do not handle the event
this process gets it and handles it wrongly.
|
|
|
|
Originally, etop would only wait for 1 second after starting the
collection of process info from the observed node. If data was not
received in time, etop would exit with reason 'connection_lost'.
In some cases, however, this timer would expire due to the amount of
processes on the observed node. To avoid this, the timer is now
extended to the same as the update interval, which means that if the
problem occurs, it can be helped by extending the interval time.
|
|
This reverts commit dc57404252c47520f352834ad9be45ad684f96c9.
|
|
|
|
|
|
When the observed node is older than OTP-19.0,
observer_backend:get_port_list/1 does not exist. Observer would
earliger crash in this situation. This is now corrected and a popup
is displayed instead.
|
|
Compatibility two releases back are tested, which implies R18.
|
|
fix docs typo: details
|
|
Signed-off-by: Stephan Renatus <[email protected]>
|
|
Store config when exiting app and restore config when starting again.
|