Author: Greg Althaus <email@example.com>
Date: Sat Jun 26 15:05:31 2021 -0500
build: update to go 1.16
Author: Victor Lowther <firstname.lastname@example.org>
Date: Tue Jun 22 13:05:10 2021 -0500
perf(index): Track primary keys in the indexes
When dealing with large indexes, having to recalculate Key() quickly
adds a significant amount CPU and memory pressure for several object
categories that also make our largest indexes.
To alleviate this CPU and memory pressure, have the indexes also keep
track of their primary keys, and use them wherever it is reasonable
instead of recalculating Key() over and over.
Along the way, fix a few other issues:
* Optimize object removal from indexes both in the request tracker and
in the main index code.
* Don't make deep copies of objects we just deleted when publishing
* Add dedicated Counts function to RequestTracker, and modify the
frontend to use it. This path avoids taking locks on each
individual object being listed.
* Content pack loading will now notice when you trye to load an object
that has no primary key, and complain mightly about it.
* Turned a couple more paired mutex lock/unlock operations into
* Fix a few reporting bugs in the bulk job purge reporting code.
* Fix testing-specific handling of ABRT
End of Note