-
Improvement
-
Resolution: Unresolved
-
Major
-
None
Fingerprints are stored in a large number of small XML files in a certain folder (by default, called fingerprints). This makes it really slow to move around data by file copying, as the OS will search the files one-by-one in order to copy, and they tend to be very scattered on the physical disk space. Further this is very space-inneficient, due to a lot of wasted disk space due to file allocation tables which typically allocates multiples of 4 kb blocks for files. Further, space is wasted in some directory allocation tables too.
Please, put the fingerprints together in a single file, or at least group them in a smaller number of files.
We have huge problems with fingerprint files - taking up 50 gigabytes of disk space on a machine which is already stressed for storage, taking a long time to copy anywhere, taking Jenkins itself a long time to compact the fingerprints...
Storing them in one file certainly seems to be a good fix. I'd almost suggest using a relational database for it, since a lot of time seems to be spent figuring out the links from a project which used the file to the project which generated the file.
Our build generates at least 100 artifacts, so presumably the workaround for us would be to zip some of them together into a larger file which would be uncompressed at the next build.
Quick statistics from our build server: