Instalation profiles

edited January 21 in General Support

Can any of the mods give some details about the xml processing on the installation profiles?

Does the processing code try to save everything in memory?

Whats more important for large XML files, RAM or processing?

Anyway to speed the install or disable the xml syntax check(i checked against the xsd file and its correct)?


Thank you

Comments

  • Process them where?

  • I was wondering about the CA xml processing.

    I have a server with virtaully unlimited RAM and processing capacity, but it still takes forever to process large instalation profiles. I was wondering if there's any CA configuration that could be changed to accelarate the process

  • What is the processing though? Installing a new system?

  • yes, the instalation process. when you have an empty database and trigger the instalation process, before the dropdown with the profiles appears, CA does a syntax check on instalation profiles. I just want to know if it is possible to skip that verification step and go straight for the instalation(putting things in the database)

  • There is not an option for that at the moment.

    The installer parses each profile to grab the full name out of the file. We use a parser that reads the entire file to do this. If we disabled parsing we'd only be able to show profile filenames in the profile list. This would be easy to do but isn't ideal. Another solution would be to change the parser out for something faster. That's somewhat more work to do. Another simple solution would be to only keep the profiles you're actually using in the profiles directory. Fewer profiles = less parsing.

    Which option would your vote be for?

  • Hi Seth, sorry for the late reply.

    I figured out removing the profiles i dont want from the folder would speed it up, but is still very slow.

    Anyways, i moved on to writing a script that process my data and replicates the database structure of CA and does directs inserts(much faster, takes the code 7 minutes to process and insert a raw file of over 4 million lines(3GB) ). However when looking at lists and vocabularies i can see that my list is created and if i click on the name i can see the number of items it has, but in the hierarchy i dont see any of the items. I did some testing manually and the only thing my code does not recreate is the "root_node_for..." item that is created when doing it manualy. Can you explain me if this is important or what might be causing my list items to not show up?

  • Is it slow when you take out all but one or two profiles? Because if it is, then the problem is not the profiles. On my test machines performance seems fine to me with the standard release set of profiles.

    Regarding the list script, yes, the root node is important. You'll need to create all of the records as the system normally does, and set the hierarchy fields for ca_list_items properly. These would include list_id, parent_id, hier_left and hier_right.

  • Is the hier_left and hier_right fields so important? i usualy leave them blank and use the recreate hierarchical indexes option in CA to fix it.

    If so, can you point me to the formula behind this fields or the code file where they are generated?

  • Recreating them will work fine. Just do that.

  • Hi seth, sorry to bother you(again and again). I have everything replicated exactly how CA does in all the list related tables(ca_lists, ca_lists_labels, ca_list_items and ca_list_item_labels). The list items still dont show on the lists interface.

    I've added some screenshots below- Image1(items on the ca_list-items table) proving they are there, Image2( CA interface showing an empty list), Image3(CA correctly identifying that list has 6 items inside). I dont know what else to try.

    1593 x 271 - 77K
    501 x 322 - 32K
    224 x 241 - 16K
  • Does each item have a preferred label?

  • yes, they are all set to preferred

  • Have you tried clearing the cache (ie. redis and/or the contents of app/tmp)?

  • There's a change in develop (to be version 1.8) that avoids parsing the full profile in the installer, which results in the installer loading much more quickly.

Sign In or Register to comment.