commit 2517c26779cdc787821415891439053be4014e7c
Author: Greg Althaus <galthaus@austin.rr.com>
Date: Sat Jun 13 23:40:19 2020 -0500
fix(dhcp): fix unit tests
M go.mod
M go.sum
commit 3265184510c743649f3df46b1de9f962e0543f8e
Author: Greg Althaus <galthaus@austin.rr.com>
Date: Sat Jun 13 16:45:27 2020 -0500
build: update to v4.3.1 refs
M go.mod
M go.sum
commit ab29a14744d09f1808d64eb008be555490a383f0
Author: Victor Lowther <victor.lowther@gmail.com>
Date: Fri Jun 12 15:42:09 2020 -0500
fix(dhcp): Fix a deadlock triggered by high DHCP traffic.
When checking to see if a read would deadlock, missed a case where we
could have crossed read/write dependencies that lead to a deadlock in
unblockRunnable. Add code to handle that case and a unit test to
verify that it works properly.
The Address and ActiveAddress subnet indexes have never worked
properly. This updates the index definitions to allow easy searching
for subnets that have cover addresses and active lease range
addresses. It has a side effect of making the Address and
ActiveAddress indexex unordered, but there aren't good ordering
semantics for picking what is basically an address match in any case.
Lease validation on a save was being stupid and checking every lease
one by one to see if there were conflicting strategy/token settings,
when there are (now) perfectly good indexes that we can query for that
and avoid having to touch every lease during the transaction.
M backend/lease.go
M backend/subnet.go
M clitest/test-data/output/TestCorePieces/subnets.indexes/stdout.expect
M go.mod
M go.sum
M transact/tx.go
M transact/tx_test.go
commit 9940803ae4b978e3023b296a43aa60c42f3782d8
Author: Victor Lowther <victor.lowther@gmail.com>
Date: Thu Jun 11 08:47:06 2020 -0500
perf(content): Save content bundles as JSON instead of YAML.
It turns out that the overhead of serializing an uploaded and
validated content bundle of significant size can account for around a
quarter to a third of the time it takes a drpcli contents upload call
to finish -- on an internal bundle for one of our larger customers, a
perf trace showed that marshalling to YAML took around 45 seconds of
CPU times on a 1 megabyte content bundle. Switching to JSON took 6
seconds of CPU time, with room for additional optimization.
M datastack/content.go
End of Note