Skip to content

Draft: athena.py: disable python hash seeding

Walter Lampl requested to merge wlampl/athena:setPYTHONHASHSEED0 into master

Dear CoreSW experts, (@ssnyder, @akraszna, @fwinkl),

while diff'ing the configuration of athena jobs, I was really puzzled that some vector-like properties changed their order, most notably properties related to LAr DataQuality. I found that these properties where constructed from intermediate python sets. In python3, the iteration order over dict and set is indeed randomized, see https://docs.python.org/3.4/reference/datamodel.html#object.__hash__

This MR sets the environment variable PYTHONHASHSEED to 0 before executing the python configuration in order to disable the salting of the hash.

Note 1: This does not address any kind of bug, it's just an inconvenience Note 2: Python does not make any promise about the iteration order of sets and dicts

Merge request reports