3 - Currently, all files are fetched first and then updated one-by-one. This
4 protects against partial updates if the server has issues, but won't help if
5 the disk is full. In that case it's possible that only passwd is updated but
6 then group cannot be written and now the system uses an inconsistent state.
7 To prevent this, write to temporary files for all files first and then
8 rename them all in one step. +
9 However, most of the time passwd and group are not directly linked in a way
10 that an inconsistent state will create problematic issues.
12 - Implement a push mechanism to reduce the traffic generated by regular runs
13 of `nsscash fetch` (e.g. via cron). +
14 However, for most setups even minutely updates won't generate any noticeable
15 traffic due to `If-Modified-Since`.
17 - Implement an improved file format for passwd/group nsscash to perform even
18 faster lookups. At the moment `mmap(2)` is the bottleneck. However,
19 switching to `read(2)` is problematic with a large number of users. A new
20 format using a B-tree like structure could use `read(2)` and thus improve
21 the performance, at the cost of increased complexity.