summaryrefslogtreecommitdiffstats
path: root/meta
diff options
context:
space:
mode:
authorJianxun Zhang <jianxun.zhang@linux.intel.com>2016-10-13 13:16:34 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-10-15 10:01:43 +0100
commit7052400ceadd309a11c3c8dd2b2a4879d69aac02 (patch)
tree36cba6d04828eafb3379480e24671af96900ffa0 /meta
parentd8adf58f30e772fa9b9d86a10930e621ab22e5ac (diff)
downloadpoky-7052400ceadd309a11c3c8dd2b2a4879d69aac02.tar.gz
sqlite3: Revert ad601c7962 from 3.14.1 amalgamation package
It turns out this change between 3.12.2 and 3.13 introduces a 2% increase of build time based on statistic data in bz10367. The added patch is forged by diffing the new sqlite3.c generated from reverting the change in raw source of sqlite3 project, and then manually migrate the delta to a sqlite3.c from the 3.14.1 tarball package because what recipes reference is actually a generated C code (amalgamation) release package and we cannot apply the real change to 3.14.1 cleanly due to so many changes happened. Fixes [YOCTO #10367] (From OE-Core rev: dda0c80019b181a5e323a82d346f86c6fffb6756) Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r--meta/recipes-support/sqlite/files/0001-revert-ad601c7962-that-brings-2-increase-of-build-ti.patch56
-rw-r--r--meta/recipes-support/sqlite/sqlite3_3.14.1.bb5
2 files changed, 60 insertions, 1 deletions
diff --git a/meta/recipes-support/sqlite/files/0001-revert-ad601c7962-that-brings-2-increase-of-build-ti.patch b/meta/recipes-support/sqlite/files/0001-revert-ad601c7962-that-brings-2-increase-of-build-ti.patch
new file mode 100644
index 0000000000..26540b241a
--- /dev/null
+++ b/meta/recipes-support/sqlite/files/0001-revert-ad601c7962-that-brings-2-increase-of-build-ti.patch
@@ -0,0 +1,56 @@
1From 4b286b441e8efa9a34eb0db8227748ebffd91c35 Mon Sep 17 00:00:00 2001
2From: Jianxun Zhang <jianxun.zhang@linux.intel.com>
3Date: Thu, 13 Oct 2016 09:24:21 -0700
4Subject: [PATCH] revert ad601c7962 that brings 2% increase of build time.
5
6The comment of the change in sqlite fossil project is:
7"For in-memory databases, it does not matter if pcache
8entries are marked "clean" or "writable"."
9
10Upstream Status: Inappropriate
11
12Signed-off-by: Jianxun Zhang <jianxun.zhang@linux.intel.com>
13---
14 sqlite3.c | 12 +++---------
15 1 file changed, 3 insertions(+), 9 deletions(-)
16
17diff --git a/sqlite3.c b/sqlite3.c
18index ccddfe6..ecae550 100644
19--- a/sqlite3.c
20+++ b/sqlite3.c
21@@ -13146,7 +13146,7 @@ struct PgHdr {
22 sqlite3_pcache_page *pPage; /* Pcache object page handle */
23 void *pData; /* Page data */
24 void *pExtra; /* Extra content */
25- PgHdr *pDirty; /* Transient list of dirty sorted by pgno */
26+ PgHdr *pDirty; /* Transient list of dirty pages */
27 Pager *pPager; /* The pager this page is part of */
28 Pgno pgno; /* Page number for this page */
29 #ifdef SQLITE_CHECK_PAGES
30@@ -43504,13 +43504,7 @@ bitvec_end:
31 /* #include "sqliteInt.h" */
32
33 /*
34-** A complete page cache is an instance of this structure. Every
35-** entry in the cache holds a single page of the database file. The
36-** btree layer only operates on the cached copy of the database pages.
37-**
38-** A page cache entry is "clean" if it exactly matches what is currently
39-** on disk. A page is "dirty" if it has been modified and needs to be
40-** persisted to disk.
41+** A complete page cache is an instance of this structure.
42 **
43 ** pDirty, pDirtyTail, pSynced:
44 ** All dirty pages are linked into the doubly linked list using
45@@ -48314,7 +48308,7 @@ static int pager_end_transaction(Pager *pPager, int hasMaster, int bCommit){
46 pPager->pInJournal = 0;
47 pPager->nRec = 0;
48 if( rc==SQLITE_OK ){
49- if( pagerFlushOnCommit(pPager, bCommit) ){
50+ if( MEMDB || pagerFlushOnCommit(pPager, bCommit) ){
51 sqlite3PcacheCleanAll(pPager->pPCache);
52 }else{
53 sqlite3PcacheClearWritable(pPager->pPCache);
54--
552.7.4
56
diff --git a/meta/recipes-support/sqlite/sqlite3_3.14.1.bb b/meta/recipes-support/sqlite/sqlite3_3.14.1.bb
index 3af0d2f9c3..7c8fa40520 100644
--- a/meta/recipes-support/sqlite/sqlite3_3.14.1.bb
+++ b/meta/recipes-support/sqlite/sqlite3_3.14.1.bb
@@ -3,7 +3,10 @@ require sqlite3.inc
3LICENSE = "PD" 3LICENSE = "PD"
4LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=65f0a57ca6928710b418c094b3570bb0" 4LIC_FILES_CHKSUM = "file://sqlite3.h;endline=11;md5=65f0a57ca6928710b418c094b3570bb0"
5 5
6SRC_URI = "http://www.sqlite.org/2016/sqlite-autoconf-${SQLITE_PV}.tar.gz" 6SRC_URI = "\
7 http://www.sqlite.org/2016/sqlite-autoconf-${SQLITE_PV}.tar.gz \
8 file://0001-revert-ad601c7962-that-brings-2-increase-of-build-ti.patch \
9 "
7 10
8SRC_URI[md5sum] = "3634a90a3f49541462bcaed3474b2684" 11SRC_URI[md5sum] = "3634a90a3f49541462bcaed3474b2684"
9SRC_URI[sha256sum] = "bc7182476900017becb81565ecea7775d46ab747a97281aa610f4f45881c47a6" 12SRC_URI[sha256sum] = "bc7182476900017becb81565ecea7775d46ab747a97281aa610f4f45881c47a6"