If multiple threads create a step for the same build, they could get the same "max(stepnr)" and allocate conflicting new step numbers. So lock the BuildSteps table while doing this. We could use a different isolation level, but this is easier.
To start hacking on Hydra, run:
$ ./dev-shell
$ ./configure $configureFlags --prefix=/opt/hydra
$ make
$ make install
Or, if you just want to build from source (on x86_64-linux):
$ nix-build -A build.x86_64-linux release.nix
Description
Languages
Perl
70.5%
C++
15.5%
Nix
6%
PLpgSQL
3%
Shell
2.3%
Other
2.6%