[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: ANALYZE and 1.9

From: Bert Huijben <bert_at_qqmail.nl>
Date: Thu, 5 Mar 2015 22:15:37 +0100

For those not on irc:

> -----Original Message-----
> From: Philip Martin [mailto:philip.martin_at_wandisco.com]
> Sent: donderdag 5 maart 2015 21:04
> To: dev_at_subversion.apache.org
> Subject: ANALYZE and 1.9
>
> I was using 1.9 on an old working copy and found that the performance of
> "svn st" and "svn cleanup" with 1.9 was much slower than with 1.8: 30s
> instead of 0.2s or over a hundred times slower. I'm using SQLite
> 3.8.7.1.
>
> After some discussion on IRC I identified the cause of the problem as a
> missing sqlite_stat1 table, as produced by ANALYZE. The slowdown occurs
> in the timestamp fixing code, which uses the status code, and I see 1.9
> using queries with an extra ORDER BY clause. The sqlite_stat1 table is
> created when a user runs "svn upgrade" with recent 1.8 or 1.9.
>

<snip>

..... > I think the 1.9 client
> needs to make it easier for the user to fix the problem: either create
> the table automatically or produce a warning message when it is not
> present.

[See irc log]

An initial patch is implemented in r1664476, r1664480, r1664481, r1664483
which on opening the database tries to insert the sqlite_stat1 table.

To avoid the performance hit that this might have, this same patch also
merges two existing db operations we do on opening wc.db into a single db
operation (with the additional check included).

        Bert
Received on 2015-03-05 22:16:59 CET

This is an archived mail posted to the Subversion Dev mailing list.