Description of problem:
On fresh install of ER7-2 is the call trace gadget not working properly - in the JS console is logged that the object 'data.tasks' is undefined. The call traces does not appear in the widget until restart of the application server. All the call traces are visible via REST API but it seems the gadget can't refresh itself
Tested on Firefox 26
Version-Release number of selected component (if applicable):
How reproducible: 100%
Steps to Reproduce:
1. default install ER7-2
2. set collectionEnabled = true
3. deploy ordermgmt, ordermgmt-ip
4. add call trace widget to page, set id to "1"
5. execute mvn exec:java -Dreq=order1 -Dcount=10
6. nothing appears in call trace widget (all other gadgets will show the information) - if you manually refresh it by setting the "id" again to 1
when you do this:
1. deploy ordermgmt, ordermgmt-ip
2. mvn exec:java -Dreq=order1 -Dcount=10
3. then add call trace gadget and set the id to 1
all the 10 request will be shown but any new call traces afterwards are displayed
Actual results: after restarting AS and accessing gadget web again, the call traces are displayed but any new call traces are displayed (you have to restart the AS again)
TypeError: data.tasks is undefined (http://localhost:8080/gadget-web/gadgets/ifr?url=http://localhost:8080/gadgets/calltrace-gadget/gadget.xml&view=home&value=4 , line 87)
treeData = new Array(data.tasks.length);
TypeError: c.tabs is undefined (http://localhost:8080/gadget-web/gadgets/js/dynamic-height:setprefs:core:tabs!core:rpc.js?container=default&nocache=0&debug=0&c=0&v=ed29d4a6219330cd21ba8081cdd7686a&jsload=0 , line 4)
The gadget was making an RPC call via the gadget IO api without specifying a refresh interval (amount of time the gadget framework should cache the data). The default is 1 hour - so the data was being cached for that long.
I have fixed this by adding a 5 second hard coded caching timeout for the data.
*** Bug 1044488 has been marked as a duplicate of this bug. ***
unfortunately the call trace gadget is not refreshing on ER8. The behavior and the steps to reproduce are the same as in the bug description.
It looks like my bug fix didn't make it into the ER8 build. I'm not certain why. The relevant commit is here:
And I've confirmed that the rtgov ER8 tag contains the fix:
However, when I look at the gadget.xml file that actually gets deployed when installing ER8, that line of code is missing.
Perhaps I/we failed to communicate the new tag name to the prod team.
Assigning this to ncross.
@ncross: the rtgov tag for ER8 is: 1.0.0.Final-ip6.0-ER8
Not sure why we missed that ; updated tag in builder.cfg with SHA 4e92ae0b8ca231267bc98880971be3c262247469.
just a question - is the call trace gadget supposed to refresh automatically? In the past there was a refresh period box in the settings of call trace widget and this setting is missing in the last few versions.
We made the decision to remove the automatic refresh feature from the calltrace gadget because it would reset the tree every time the refresh happened. This was not a good user experience. It's also not great that it has to be manually refreshed, but it was the lesser of two evils.
thanks for the info. The call trace gadget is working now (with manual refreshing).