Hi SuicideJunkie, thanks for the comments.
So, if I understand correctly, this is a file of <1000 bytes of text, followed by a few gigabytes of binary data?
However, I would not expect it to take very long to spin through even a huge file and copy it, as long as you're not trying to parse it. You're already doing sysreads and syswrites, so you're not accidentally going to try and read it a line at a time. Why not just read in reasonably sized chunks, and copy the file if you need to increase the length of the content_architecture value?
It takes too long. Making a copy of the whole thing would be a waste of time and space. We don't want to read it at all, much less write it out again. If we wanted backups we could use copy on write zfs snapshots to get them near instantaneously.
There are many arguments against an extra five minutes. 10 people waiting an extra 5 minutes is 50 minutes. Five minutes lost on this server and every server that is dependent on the services that this server provides. What if one of my team mates finishes 5 minutes faster than me? That is 300 full Mississippi's of animadversions I will have to patiently bear. Not to mention the lost opportunity cost of not being able to taunt them. If you're not first, you're last!!
If you only have to process a few files occasionally, and it takes a minute instead of a second, then the extra safety margin is probably worth it.
Probably so but, if it doesn't work now you have two copies that don't work and even further behind.
|Comment on Re^2: In place editing without reading further|