puppetlabs / puppetlabs-postgresql

Puppet module for managing PostgreSQL
Apache License 2.0
228 stars 612 forks source link

Avoid opening the file in postgresql_conf #1599

Closed ekohl closed 2 months ago

ekohl commented 3 months ago

Summary

Using File.open without closing it can leak file descriptors. It's actually not needed at all because File.foreach, File.readlines and File.write all accept a filename. This simplifies the code in the process.

Then it simplifies the code by passing an offset to with_index to calculate line numbers. Rather than starting from 0 and always adding 1, this tells with_index to start at 1.

It also fixes the spelling of PostgreSQL in a debug statement.

Checklist

At this point I haven't verified this yet, but submitting it so I can more easily test it on some system.

bastelfreak commented 2 months ago

did a bit more testing locally to verify this works