UUIDs are a relatively separated part of the configuration,
hence the internal representation can be changed quite easily.
Nevertheless, they make up a considerable fraction of all strings
found in the configuration data. Hence changing their in-memory
representation can be used to improve to the memory foot print
of our daemons. On my test cluster, the improvement was about 20%.


Klaus Aehlig (2):
  Prefer the UuidObject type class over specific functions
  Encode UUIDs as ByteStrings

 src/Ganeti/Confd/ClientFunctions.hs     |  2 +-
 src/Ganeti/Confd/Server.hs              |  6 +++---
 src/Ganeti/Config.hs                    |  8 ++++----
 src/Ganeti/DataCollectors/InstStatus.hs |  3 ++-
 src/Ganeti/JQScheduler.hs               |  2 +-
 src/Ganeti/JQScheduler/Filtering.hs     |  7 +++++--
 src/Ganeti/Objects.hs                   | 11 ++++++-----
 src/Ganeti/Objects/Disk.hs              |  3 ++-
 src/Ganeti/Objects/Instance.hs          |  3 ++-
 src/Ganeti/Objects/Lens.hs              | 18 +++++++++++++-----
 src/Ganeti/Objects/Nic.hs               |  5 ++++-
 src/Ganeti/Query/Group.hs               |  8 ++++----
 src/Ganeti/Query/Instance.hs            | 14 +++++++-------
 src/Ganeti/Query/Network.hs             | 10 +++++-----
 src/Ganeti/Query/Node.hs                | 10 +++++-----
 src/Ganeti/Query/Query.hs               |  2 +-
 src/Ganeti/Query/Server.hs              |  3 ++-
 src/Ganeti/Rpc.hs                       |  2 +-
 src/Ganeti/Storage/Utils.hs             |  2 +-
 src/Ganeti/THH/Field.hs                 |  3 ++-
 src/Ganeti/WConfd/Ssconf.hs             |  4 ++--
 test/hs/Test/Ganeti/JQScheduler.hs      |  5 +++--
 test/hs/Test/Ganeti/Objects.hs          | 19 +++++++++++++------
 test/hs/Test/Ganeti/Query/Instance.hs   |  3 ++-
 24 files changed, 91 insertions(+), 62 deletions(-)

-- 
2.6.0.rc2.230.g3dd15c0

Reply via email to