perf(sdk): pre-allocate slices to avoid dynamic growth

Replace dynamic slice growth with pre-allocation using make() with known capacity. This reduces allocations during relay iteration.

cognitive committed Dec 30, 2025 at 00:22 UTC d46d6ae754868db22d0771ad4faaae700aabb43e
1 file changed +2 -3
sdk/sdk.go
+2 -3
@@ -104,9 +104,8 @@ func (g *Client) Dial(cred *cryptoops.Credential, leaseID string, alpn string) (
104 Str("alpn", alpn).
105 Msg("[SDK] Dialing to lease")
106
107 - var relays []*connRelay
108 -
107 g.mu.Lock()
108 + relays := make([]*connRelay, 0, len(g.relays))
109 for _, server := range g.relays {
110 relays = append(relays, server)
111 }
@@ -626,9 +625,9 @@ func (g *Client) GetRelays() []string {
625
626 func (g *Client) LookupName(name string) (*rdverb.Lease, error) {
627 log.Debug().Str("name", name).Msg("[SDK] Looking up name")
629 - var relays []*connRelay
628
629 g.mu.Lock()
630 + relays := make([]*connRelay, 0, len(g.relays))
631 for _, server := range g.relays {
632 relays = append(relays, server)
633 }