Re: Question about data integrity on SD cards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



We are using 2.6.37 version and we may have some issues with underlying mmc-host driver. We also tested our setup on newer kernels as well as different media with similar results, but I was not involved in these tests, so cannot give any details straight away.

But my main question was partially answered by you. I just need a confirmation that design of our system should in general be OK, as we may expect random power downs occasionally. So do you think it is possible (in general) to build embedded system with SQLite3 database on EXT4 filesystem on SD card that is not fragile on unexpected power sequence? Do you know what type of SD card would be recommended in this case? Are our mounting options fine?

Thanks,
Greg

On 09/07/14 13:51, Lukáš Czerner wrote:
On Wed, 9 Jul 2014, Grzegorz Sikorski wrote:

Date: Wed, 09 Jul 2014 13:17:25 +0100
From: Grzegorz Sikorski <g.sikorski@xxxxxxxxxxxx>
To: linux-ext4@xxxxxxxxxxxxxxx
Subject: Question about data integrity on SD cards

Hi,

In our project we use SQLite3 database on EXT4 filesystem partition on microSD
card. On unexpected power failure/system crash or just hardware reset, we
observe occasional database corruption. SQLite3 developers claim their part is
free of risk of database corruption, as long as fsync call is doing it's job
properly. We tried several SD cards, including industrial grade which should
have proper firmware (at least their manufacturers say there is no risk of
data corruption on power loss). We tried several different mount settings and
after some reading we found, that the safest (and slowest) option (that should
never fail, as far as we understand) would be like:
rw,relatime,barrier=1,journal_checksum,nodelalloc,data=journal,usrquota
In spite of all that, we still observe random database corruption on
power-down/reset. Can you confirm there is no problem in EXT4 filesystem?
There have been reports on SD cards not working correctly on power
failure, most likely due to flush not working correctly. It was
mentioned several times in this huge thread (concerning different
problem, but maybe related)
http://www.spinics.net/lists/linux-ext4/msg43974.html

At this point we do not know about any problems with ext4 file
system regarding fsync functionality. However you have not said
which kernel you are using.

Also, have you tried reproducing it on a different hardware, let's
say SSD, or spinning disk ? Do you have any SD card which seems to
be working reliably across power failures, or did you see that
behaviour with all SD cards you've tested ?

Thanks!
-Lukas

Best regards,
Greg

--
ExchangeDefender Message Security: Click below to verify authenticity
https://admin.exchangedefender.com/verify.php?id=s69CHHv3024052&from=g.sikorski@xxxxxxxxxxxxxxxxxxxxxx


--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



--
ExchangeDefender Message Security: Click below to verify authenticity
https://admin.exchangedefender.com/verify.php?id=s69DNLGC013653&from=g.sikorski@xxxxxxxxxxxxxxxxxxxxxx


--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Reiser Filesystem Development]     [Ceph FS]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite National Park]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]     [Linux Media]

  Powered by Linux