With 3.2 now in stable, I've refreshed our deployment over to it. I can't say that things really improved that much though, we're still seeing a single GET of the machine list taking up to 18s. On the low end, we now get responses in 6s instead of 10s, but that's the odd fast response rather than the norm and 6s is still very very slow for a MAAS with less than 50 machines... The number of queries did decrease though with the most optimal run being down to 460 now. 86 "maasserver_vlan" 80 "maasserver_bootresourcefile" 42 "maasserver_bootresourceset" 31 "maasserver_numanode" 27 "maasserver_node" 24 maasserver_node 24 "metadataserver_scriptresult" 24 "maasserver_event" 21 "maasserver_service" 16 "maasserver_config" 13 "maasserver_filesystem" 7 "maasserver_staticipaddress" 7 "maasserver_interface" 6 "maasserver_virtualmachinedisk" 6 "maasserver_partitiontable" 6 "maasserver_partition" 6 "maasserver_fabric" 5 "maasserver_space" 4 "maasserver_subnet" 4 "maasserver_interfacerelationship" 3 "maasserver_virtualblockdevice" 3 "maasserver_physicalblockdevice" 3 "maasserver_notification" 3 "maasserver_nodeconfig" 2 "piston3_consumer" 2 "maasserver_regioncontrollerprocessendpoint" 2 "maasserver_regioncontrollerprocess" 2 "maasserver_blockdevice" 1 "piston3_token" 1 "piston3_nonce" 1 "maasserver_userprofile" 1 "maasserver_tag" 1 "maasserver_ownerdata" 1 "maasserver_numanodehugepages" 1 "maasserver_nodemetadata" 1 "maasserver_globaldefault" 1 "maasserver_dnsresource" 1 "maasserver_bootresource" 1 "auth_user" However, background activity is really really bad. I had to do 12 individual tests to capture such an optimal result. All others looked more like: 1494 "maasserver_bootresourceset" 703 "maasserver_bootresource" 88 "maasserver_vlan" 80 "maasserver_bootresourcefile" 41 "maasserver_node" 34 "maasserver_numanode" 29 "maasserver_config" 24 maasserver_node 24 "metadataserver_scriptresult" 24 "maasserver_event" 17 "maasserver_service" 15 "maasserver_filesystem" 10 "maasserver_interface" 9 "maasserver_subnet" 9 "maasserver_staticipaddress" 8 "maasserver_resourcepool" 8 "maasserver_partitiontable" 8 "maasserver_partition" 8 "maasserver_fabric" 7 "maasserver_notification" 6 "maasserver_virtualmachinedisk" 6 "maasserver_space" 6 "maasserver_regioncontrollerprocessendpoint" 6 "maasserver_regioncontrollerprocess" 5 "maasserver_physicalblockdevice" 5 "maasserver_nodeconfig" 4 "maasserver_virtualblockdevice" 4 "maasserver_interfacerelationship" 4 "maasserver_blockdevice" 2 "piston3_consumer" 2 "maasserver_tag" 2 "maasserver_numanodehugepages" 2 "maasserver_nodemetadata" 2 "maasserver_controllerinfo" 2 "auth_user" 1 pg_locks, 1 "piston3_token" 1 "piston3_nonce" 1 "maasserver_userprofile" 1 "maasserver_ownerdata" 1 "maasserver_globaldefault" 1 "maasserver_dnsresource" Where you can see upwards of 2000 queries against the bootresource tables. Note that all of this is over just 5-10s of capturing queries, so the database is still a big big problem.