summaryrefslogtreecommitdiff
path: root/package/sqlite
diff options
context:
space:
mode:
authorFloris Bos <bos@je-eigen-domein.nl>2014-09-11 17:43:32 +0200
committerPeter Korsgaard <peter@korsgaard.com>2014-09-13 23:51:59 +0200
commit3ede457c5e0e6ee2512a19482c2f6aaf7a0fc118 (patch)
tree6bf87899fc27d88b6e1a769bb9f893575d4c9915 /package/sqlite
parent4288da4bb0f678829e7d24392831f086e5f22582 (diff)
sqlite: add option to disable fsync
For use-cases in which performance is more important than data integrity. Signed-off-by: Floris Bos <bos@je-eigen-domein.nl> Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Diffstat (limited to 'package/sqlite')
-rw-r--r--package/sqlite/Config.in9
-rw-r--r--package/sqlite/sqlite.mk4
2 files changed, 13 insertions, 0 deletions
diff --git a/package/sqlite/Config.in b/package/sqlite/Config.in
index fe6cc0896..7ea9eb15b 100644
--- a/package/sqlite/Config.in
+++ b/package/sqlite/Config.in
@@ -53,4 +53,13 @@ config BR2_PACKAGE_SQLITE_SECURE_DELETE
http://www.sqlite.org/pragma.html#pragma_secure_delete
for additional information.
+config BR2_PACKAGE_SQLITE_NO_SYNC
+ bool "Disable fsync"
+ help
+ By default SQLite forces all database transactions to storage
+ immediately using fsync() to protect against data loss in case
+ of power failure.
+ This option turns this behavior off resulting in higher performance
+ especially when using slow flash storage.
+
endif
diff --git a/package/sqlite/sqlite.mk b/package/sqlite/sqlite.mk
index e30b7109b..d960ce842 100644
--- a/package/sqlite/sqlite.mk
+++ b/package/sqlite/sqlite.mk
@@ -33,6 +33,10 @@ ifeq ($(BR2_PACKAGE_SQLITE_SECURE_DELETE),y)
SQLITE_CFLAGS += -DSQLITE_SECURE_DELETE
endif
+ifeq ($(BR2_PACKAGE_SQLITE_NO_SYNC),y)
+SQLITE_CFLAGS += -DSQLITE_NO_SYNC
+endif
+
SQLITE_CONF_ENV = CFLAGS="$(TARGET_CFLAGS) $(SQLITE_CFLAGS)"
SQLITE_CONF_OPT = \