I believe this question is not specific to Linux or ext4, but to any filesystem in general.
A powerloss will not destroy any data unless there is a file being written to the disk.
This basically mean, when a program opens a file, it can do so in many different ways.
It can do so to just read from it, it can do so to write to it from the start (overwrite everything) and to append to the file (write at the end of the file).
Now, the trick is that a file has 2 segments. These are:
- The table of content,
- The data.
At the start of the harddisk, a table is written which holds the location(s) of a file on the harddisk. At the specified location(s) the data is written as 0's and 1's on the harddisk.
Reading a file back is obviously first getting its location, then from the actual location, get the amount of 0's and 1's to form the actual file in memory.
When the harddisk is writing to the file, it does so by first writing the data to disk, see what the new start and finish points are (the start usually is the same, but in case the data was fragmented and a 2nd block was used, its start and finish points are recorded) and those are written to the partition table.
If the power fails during writing to the file, the index is obviously not consistent with the data. This creates the phenomena of reaching a read error when trying to access the file. You see its there, but still you cannot access it.
Since reading to a file does not actually alter the content of the disk, a powerloss won't have any affect here.