fixed bug that causes SgeConfigurator to fail with sge 8.1.9 because a new parameter qsort_args has been added to parallel environment:
command failed : qconf -Ap '/tmp/make'
root@physix-master:/home/graffy# qconf -Ap '/tmp/make'
error: required attribute "qsort_args" is missing
error reading in file
- mise à la norme pep8 de SgeConfigurator en vue de l'améliorer pour qu'il puisse gérer :
- 2 clusters différents, dans un court terme, pour mettre physix88 en production dans un nouveau cluster sge (physix))
- 2 backends différents (sge et slurm), dans un plus long terme
nb: pour la validation pep8, j'ai été obligé d'ajouter un projet eclipse python appelé simpapy pour SimpaScripts/Python
- ajout de l'application DebtComputer qui permet de calculer l'argent injecté par un utilisateur dans le pot commun, et l'usage dont il en bénéficie
nb: les maintenances ne sont pas encore prises en compte
- the cluster evolution graphs are now displayed on the intranet :
- I had to make python graphing code handle debian 7 version of matplotlib; this was rather painful)
- I had to handle the case where the default matplotlib backend doesn't work (because of no display)
- improvement : the figures can now be saved as svg files. This mechanism will be used by the intranet to display the cluster evolution graphs
- also removed debug prints that pollute stdout
- refactoring : improved so that now PowerDiagram also uses the Inventory class instead of duplicating code. This will:
1. make the code easier to maintain when there is a change in the inventory database tables
2. make the code easier to adapt when we switch from a sql file to a mysql server
- refactored so that it now abstracts the database provider ; this way, accessing the inventory database through a database server instead of a sdl dump file is mostly transparent
From now on, the servers power diagram is available on http://intranet.ipr.univ-rennes1.fr/simpaweb/itteam/PowerDiagram/
- note : I initially thought I would use the jit (JavaScript InfoVis Toolkit) to display sexy interactive diagrams but I finally decided not to (although I managed to run an example) because:
- svg is more printer-friendly, and could be saved as a file
- generating jit data would have required more work, which doesn't add much value
So, in a further commit, I will clean up the jit-related mess
- drastically improved the performance of JobsState.AddJob call (used for example in clusterstatus page) in case of big job arrays. As an example : clusterstatus page took 30 seconds when there was a job array of 500 elements ; this now takes 3 seconds. The culprit was a conflicting hash (I don't remember why I didn't make a non conflicting hash in the first place), that was the same for each job array element.
- slightly improved speed by preventing unnecessary requests of job array element details
However, the big hit in performance is still in the dictionary of jobs in JobsState