Jesse Glick
unread,Jun 2, 2020, 8:48:24 AM6/2/20Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Sign in to report message
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Jenkins Dev
The more important consideration by far is to avoid triggering loading
of build records. Since Jenkins does not use a database, test results
for a given build can only be obtained when the whole build (`Run`) is
in memory. This is a large object, and to load it requires reading and
parsing a `build.xml` file, which is relatively expensive. By default
a `SoftReference` is used to hold a (completed) build record, so that
when heap is running short some will be evicted. Thus any
frequently-accessed GUI page which attempts to reference historical
builds, if not written carefully, could wind up repeatedly forcing
build reloading on a loaded server.