]> git.proxmox.com Git - pve-cluster.git/commitdiff
pmxcfs: bump basic FS limits, 1 MiB per-file, 128 MiB total
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 30 Jun 2021 10:06:16 +0000 (12:06 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Thu, 1 Jul 2021 10:40:22 +0000 (12:40 +0200)
We have some users running into issues in some cases, like syncing
huge user base through LDAP into users.cfg or having a few thousands+
of HA services, as then the per-file limit is exhausted.

Bumping that one provides only half of the solution as the total
limit of 30 MiB would only allow a few files getting that big, or
reduce the amount left over for actual guest configurations quite a
bit.

So also bump the total filesystem limit from 30 MiB to 128 MiB, so by
a factor of ~4 and in the same spirit bump the maximal numbers of
inodes (i.e., different files) from 10k to 256k, which pmxcfs can
handle still rather easily (tested with touch) and would allow to max
out the full FS limit with 512 byte files, which fits small guest
configs, so sounds like an OK proportioned limit.

That should give use quite some wiggle room again, and should be
relatively safe as most of our access is rather small and on a few
files only, only root has full access anyway and that user can break
everything already, so not much lost here.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
data/src/memdb.h

index 42a6da9a4138317529840d56d912628ec11f7965..2d7f54ad2c19555e4fee3c8204171315dcc3a7b3 100644 (file)
@@ -1,5 +1,5 @@
 /*
-  Copyright (C) 2010 - 2020 Proxmox Server Solutions GmbH
+  Copyright (C) 2010 - 2021 Proxmox Server Solutions GmbH
 
   This program is free software: you can redistribute it and/or modify
   it under the terms of the GNU Affero General Public License as published by
@@ -28,9 +28,9 @@
 #include <glib.h>
 #include <sys/statvfs.h>
 
-#define MEMDB_MAX_FILE_SIZE (512*1024)
-#define MEMDB_MAX_FSSIZE (30*1024*1024)
-#define MEMDB_MAX_INODES 10000
+#define MEMDB_MAX_FILE_SIZE (1024 * 1024) // 1 MiB
+#define MEMDB_MAX_FSSIZE (128 * 1024 * 1024) // 128 MiB
+#define MEMDB_MAX_INODES (256 * 1024) // 256k
 
 #define MEMDB_BLOCKSIZE 4096
 #define MEMDB_BLOCKS ((MEMDB_MAX_FSSIZE + MEMDB_BLOCKSIZE - 1)/MEMDB_BLOCKSIZE)