benchmarks icon indicating copy to clipboard operation
benchmarks copied to clipboard

Including version information in the database. This file reads the config.yaml file and returns a dictionary which contains library as the key and version as the value.

Open Iron-Stark opened this issue 8 years ago • 2 comments

@rcurtin @zoq

This is regarding Issue (#42). I need some pointers on which piece of code to look for if I want to include the information returned by the dictionary in the database.

Iron-Stark avatar Apr 06 '17 14:04 Iron-Stark

Can one of the admins verify this patch?

mlpack-jenkins avatar Apr 06 '17 14:04 mlpack-jenkins

Hi @Iron-Stark, sorry for the slow reply on this one. I think that what we should do instead is get the version information from libraries/package-urls.txt (we probably have to add a new column), that way when you update the package you only have to do it in one place.

All of the database code is found in util/database.py, so I think the majority of modification would go there.

From there I think there are a couple options; not sure what you think is best (@zoq, you probably have an opinion too, feel free to elaborate):

  • Change the name for the libraries table to include the version, i.e. library_name + " " + version --> mlpack 2.2.3. Probably no other modification necessary, one would just need to update all the code that generates library names in the code.

  • Add a version field to the libraries table (see CreateLibrariesTable()), then make sure that the version is properly handled when adding new benchmark results in NewMetricResult(), NewBootstrapResult(), UpdateMetricResult(), UpdateMetricResult(), NewResult(), and UpdateResult(), and possibly other places (I haven't done a full search).

What do you think? There are probably other ideas too.

rcurtin avatar Jun 08 '17 21:06 rcurtin