Age | Commit message (Collapse) | Author |
|
* maint:
erts, stdlib: Fix xmllint warning
Update runtime deps to depend on new stdlib functionality
|
|
* dgud/update-runtime-deps:
Update runtime deps to depend on new stdlib functionality
|
|
Conflicts:
lib/observer/src/crashdump_viewer.erl
lib/sasl/src/sasl.appup.src
lib/stdlib/src/stdlib.appup.src
|
|
~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.
|
|
|
|
* siri/string-new-api: (28 commits)
hipe (test): Do not use deprecated functions in string(3)
dialyzer (test): Do not use deprecated functions in string(3)
eunit (test): Do not use deprecated functions in string(3)
system (test): Do not use deprecated functions in string(3)
system (test): Do not use deprecated functions in string(3)
mnesia (test): Do not use deprecated functions in string(3)
Deprecate old string functions
observer: Do not use deprecated functions in string(3)
common_test: Do not use deprecated functions in string(3)
eldap: Do not use deprecated functions in string(3)
et: Do not use deprecated functions in string(3)
os_mon: Do not use deprecated functions in string(3)
debugger: Do not use deprecated functions in string(3)
runtime_tools: Do not use deprecated functions in string(3)
asn1: Do not use deprecated functions in string(3)
compiler: Do not use deprecated functions in string(3)
sasl: Do not use deprecated functions in string(3)
reltool: Do not use deprecated functions in string(3)
kernel: Do not use deprecated functions in string(3)
hipe: Do not use deprecated functions in string(3)
...
Conflicts:
lib/eunit/src/eunit_lib.erl
lib/observer/src/crashdump_viewer.erl
lib/reltool/src/reltool_target.erl
|
|
|
|
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.
|
|
|
|
|
|
|
|
Remove query keyword residues
|
|
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.
|
|
There are still some query residues used as a keyword. Remove them.
query was no longer a keyword since the commit 0dc3a29744bed0b7f483ad72e19773dc0982ea50 2012-11-19.
|
|
|
|
|
|
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.
|
|
|
|
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.
|
|
Store config when exiting app and restore config when starting again.
|
|
Previously changing tabs during high cpu-load, could make the
change go unnoticed, and thus the graphs did not get updated.
|
|
|
|
|
|
Selection was lost after updates
|
|
* sverker/ets-table-identifiers:
observer: Polish crashdump viewer for ETS
observer: Polish Table Viewer tab
stdlib: Remove ets_SUITE:memory_check_summary
erts: Improve reduction count during table cleanup
erts: Cleanup table status bits
erts: Remove now redundant 'id' from DbTableCommon
erts: Remove meta_main_tab
erts: Pass tid argument down to trapping functions
erts: Print table id as ref in crashdump and break menu
erts: Replace meta_pid_to{_fixed}_tab with linked lists
erts: Correct erl_rbtree comments about yielding
erts: Add ERTS_RBT_YIELD_STAT_INIT to erl_rbtree
Fix node_container_SUITE
list_to_ref/1
Implement ets:all() using scheduler specific data
Rename fixation count in ets table to avoid confusion
Introduce references as table identifiers
|
|
Replaced "Id" column with "Is Named".
Removed "Slot" column.
Sort by name instead if id.
Use name in right-click menu instead of id.
|
|
to adapt to new ref table identifiers.
I moved the "Table Id" column last.
|
|
|
|
Users wanted to see the maximum value seen by observer during it's uptime.
Note changes faster than the sample rate will still be missed.
|
|
In OTP-20 dirty_schedulers are default on.
Draw them dotted so we can difference between real schedulers
and dirty schedulers.
|
|
* maint:
tools: Use portable lookup of home directory
dialyzer, observer: Use portable lookup of home directory
|
|
Use init:get_argument(home) to find the location of the home
directory. That will work on all platforms (including Windows).
Note that the run-time system will fail to start if HOME
(or the equivalent on Windows) is not set. Therefore, it can
be assumed that init:get_argument(home) will not fail.
ERL-161
|
|
* maint:
Fix observer term conversion error spelling
|
|
In the observer UI, when inspecting state, the error given when attempting to convert a bad term contains a spelling mistake.
|
|
|
|
Fix observer application crash
When clicking an HTML-link to a port before the port tab has been opened for the first time, observer would crash since port info is not initiated. This is now corrected.
Also, when clicking on an HTML link to a port, and the port does not exist,
then pop up an info dialog saying "No such port".
OTP-14151
|
|
|