]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/NNTPD.pm
daemon: do more immortal allocations up front
[public-inbox.git] / lib / PublicInbox / NNTPD.pm
index 4f30c5d9aede1cdbedab3a11bf4b84f4edd8c7e5..451f4d4183bf52875e5f3e800f269c331ccffa14 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2016-2018 all contributors <meta@public-inbox.org>
+# Copyright (C) 2016-2020 all contributors <meta@public-inbox.org>
 # License: AGPL-3.0+ <https://www.gnu.org/licenses/agpl-3.0.txt>
 
 # represents an NNTPD (currently a singleton),
@@ -7,7 +7,7 @@ package PublicInbox::NNTPD;
 use strict;
 use warnings;
 use Sys::Hostname;
-require PublicInbox::Config;
+use PublicInbox::Config;
 
 sub new {
        my ($class) = @_;
@@ -45,6 +45,10 @@ sub refresh_groups () {
                        # Only valid if msgmap and search works
                        $new->{$ngname} = $ng;
                        push @list, $ng;
+
+                       # preload to avoid fragmentation:
+                       $ng->description;
+                       $ng->base_url;
                }
        });
        @list = sort { $a->{newsgroup} cmp $b->{newsgroup} } @list;