Hello,

I've noted that the column "cpus_alloc" from the <clustername>_job_table
have disappeared from 14.x to 15.08.x. Instead of storing allocated CPUs in
this column now we have it in tres_alloc column.

tres_alloc is a text field in <clustername>_job_table that stores the
allocated trackable resources in the from <id=value>. Multiple resources
are stored separated by commas. This is not practical for use with custom
applications.

mysql> select id_job,tres_alloc from cnag_job_table limit 5;
+--------+-------------------+
| id_job | tres_alloc        |
+--------+-------------------+
|      2 | 1=2,2=2048,4=1    |
|      3 | 1=2,2=2048,4=1    |
|      4 | 1=2,2=2048,4=1    |
|      5 | 1=20,2=20480,4=10 |
|      6 | 1=2,2=2048,4=1    |
+--------+-------------------+
5 rows in set (0.00 sec)

The ID of the trackable resource is stored in tres_table:

mysql> select * from tres_table;
+---------------+---------+----+--------+------+
| creation_time | deleted | id | type   | name |
+---------------+---------+----+--------+------+
|    1455810070 |       0 |  1 | cpu    |      |
|    1455810070 |       0 |  2 | mem    |      |
|    1455810070 |       0 |  3 | energy |      |
|    1455810070 |       0 |  4 | node   |      |
|    1457522870 |       0 |  5 | gres   | gpu  |
+---------------+---------+----+--------+------+
5 rows in set (0.00 sec)


Question:

Why not create a third table, tres_values:[ idx | tres_id | value | job_id
], then delete tres_alloc column of <clustername>_job_table, and then fill
the values of TRES into this new table?

Benefits of this could be for example that easy queries could be performed
to search individually any tres consumed resource for a job, i.e.:

select value from tres_values where job_id=1 and tres_id=0; <--- This would
give me CPU consumed for job_id = 1.

To do this, actually values of tres_alloc column must be parse externaly to
mysql.


Regards,
Felip M


*--Felip Moll Marquès*
Computer Science Engineer
E-Mail - [email protected]
WebPage - http://lipix.ciutadella.es

Reply via email to