AJAX, DHTML driven Asset Map

Anything like this in the pipeline for development? Would be extremely beneficial to improve the asset map and its responsiveness. At the moment it freezes up when ever you perform a single action :blink:’ /> or whenever the auto refresh decides its time to refresh (even when its not necessary <img src=‘http://forums.matrix.squiz.net/public/style_emoticons/<#EMO_DIR#>/mad.gif’ class=‘bbc_emoticon’ alt=’:angry:).


Only wondering because I am seriously considering making a greasemonkey script with one at the moment (its seriously slow here).

[quote]Anything like this in the pipeline for development? Would be extremely beneficial to improve the asset map and its responsiveness. At the moment it freezes up when ever you perform a single action :blink:’ /> or whenever the auto refresh decides its time to refresh (even when its not necessary , and with MySource Mini/4 on the horizon, I think the developers are looking to the future, when there will be no more asset map. <img src=‘http://forums.matrix.squiz.net/public/style_emoticons/<#EMO_DIR#>/smile.gif’ class=‘bbc_emoticon’ alt=':slight_smile:

Yeah, I rarely have any asset map problems… and those I do are more often failing to refresh rather than freezing…

I doubt your setup is running like 400 users like ours is though lol. We have major problems with the Asset map and its responsiveness.


P.S. Java applets suck ass.

[quote]Anything like this in the pipeline for development? Would be extremely beneficial to improve the asset map and its responsiveness. At the moment it freezes up when ever you perform a single action :blink:’ /> or whenever the auto refresh decides its time to refresh (even when its not necessary <img src=‘http://forums.matrix.squiz.net/public/style_emoticons/<#EMO_DIR#>/mad.gif’ class=‘bbc_emoticon’ alt=’:angry:).


Only wondering because I am seriously considering making a greasemonkey script with one at the moment (its seriously slow here).[/quote]



It is not scheduled that I know of. If someone decided to pay for one to be developed, or if someone decided to write one I am sure it would be a nice option to have.



I would have thought it would be a nice exercise for an Ajax obsessive. The API you need to talk to already exists for the Java applet, you just need to do a nice drag and drop interface etc. I wouldnt use greasemonkey.

Asset map unresponsiveness when expanding nodes can be caused by postgres taking ages to handle one of the queries.


For some reason, it sometimes chokes on the view sq_vw_ast_lnk_minor. Because all the query does is grabs the child asset IDs and the number of children, it doesn't need the lnk_minor view to do the table join to the asset table.



Anyway, to get around this, we created an extra view:

CREATE OR REPLACE VIEW sq_vw_ast_lnk_quick AS

SELECT l.linkid, l.majorid, l.minorid, l.value, l.link_type, l.sort_order, l.is_dependant, l.is_exclusive

FROM sq_ast_lnk l

UNION ALL

SELECT s.linkid, s.majorid, s.minorid, s.value, s.link_type, NULL AS sort_order, '0' AS is_dependant, '0' AS is_exclusive

FROM sq_shdw_ast_lnk s;



And altered the offending queries in /core/include/asset_map/asset_map.inc to use that view. This is 3.16.9 though - it may well have sorted itself out in 3.18


Interesting. Is there a way to open up the applet and see this? Or, do I have to use wireshark to capture the XML for everything, because that would be a pain.

Nevermind, I figured out how to decompile the asset map...

[quote]Interesting. Is there a way to open up the applet and see this? Or, do I have to use wireshark to capture the XML for everything, because that would be a pain.


Nevermind, I figured out how to decompile the asset map…[/quote]

Open Source to the rescue - the asset map code is included under core/lib/asset_map/java/src/net/squiz/matrix/assetmap :slight_smile:

The XML requests the Asset Map makes can be traced in the process() function of core/lib/asset_map/asset_map.inc

Correct. There are no plans to change the asset map in Matrix. I think that would be foolish considering the current interface works ok and any new interface would almost certainly contain bugs as it would not have been tested over such a long period of time.



Also, changing the asset map to be pure JS is not going to make it any faster. All actions are performed on the server and communicated back via XML to the applet. In your case, this slow-down is server side and we are already working with you to improve it. Once your server-side processing is fixed, your asset map will be fast again.

Have a look at how much memory windows is allocating to your java applets.