[sqlite] Testing sqlite wal performance OS X memory/disk

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

Comparing the three systems tested:  

raspibian raspberry pi3: 53us  

linux celeron: 12us  

os x i5: 7.7us  

One thing that I was expecting is that when using all core/threads (and
because basically all data in in memory/cache) that I'll have around 100% cpu
load but I don't, so there is something that is preventing usage of all
system resources (cpu).  

On linux I set the threads scope to PTHREAD_SCOPE_SYSTEM (but it doesn't
changed anything).  

Here is a snapshoot of top:  

%Cpu(s): 55.1 us,? 1.2 sy,? 0.0 ni, 43.4 id,? 0.3 wa,? 0.0 hi,? 0.0
si,? 0.0 st
KiB Mem:?? 5953276 total,? 5562752 used,?? 390524 free,?? 404528
buffers
KiB Swap: 12582908 total,?? 860748 used, 11722160 free.? 1396640 cached
Mem

? PID USER? PR? NI??? VIRT??? RES??? SHR S? %CPU
%MEM TIME+ COMMAND 
29115  ??? 20?? 0? 162800??? 928??? 832 S 100.7? 0.0??
0:13.37 sqlite-wal+  

?  

And here is the output of /usr/bin/time:  

7.63user 0.07system 0:08.00elapsed 96%CPU (0avgtext+0avgdata
2432maxresident)k
0inputs+0outputs (0major+238minor)pagefaults 0swaps  

What's missing here ? Can someone give an insight here ?  

Cheers !  





?



[sqlite] Testing sqlite wal performance OS X memory/disk

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

Here is the same tests on a raspberry pi3:  

raspberry pi3 memory database 1 thread:  

Update rate: total=214229, last_total=194712, rate=19517, avg1=19517,
avg2=19475
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

raspberry pi3 (sansumg evo2) disk database 1 thread:  

Update rate: total=62418, last_total=51941, rate=10477, avg1=10477,
avg2=10403
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

raspberry pi3 memory database 4 threads:  

Update rate: total=315069, last_total=296773, rate=18296, avg1=4574,
avg2=18533
Update busy rate: total=438, last_total=411, rate=27, avg1=6, avg2=25
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

raspberry pi3 (sansumg evo2) disk database 4 threads:  

Update rate: total=101746, last_total=91330, rate=10416, avg1=2604,
avg2=10174
Update busy rate: total=286, last_total=256, rate=30, avg1=7, avg2=28
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

Cheers !



[sqlite] Testing sqlite wal performance OS X memory/disk

2016-03-25 Thread Simon Slavin

On 25 Mar 2016, at 6:21pm, Domingo Alvarez Duarte  wrote:

> One thing that I was expecting is that when using all core/threads (and
> because basically all data in in memory/cache) that I'll have around 100% cpu
> load but I don't, so there is something that is preventing usage of all
> system resources (cpu). 

SQLite is input/output bound.  It does far more reading and writing than it 
does processing.

This is so extreme that a lot of people who write multi-thread or 
multi-processing code find that it's a waste of time.  The extra 
threads/processes just queue up to access disk.

If you're using a memory database instead of disk the same thing applies: only 
one of them can read/write memory at one time (think about low level access to 
the memory chip).  Obviously, memory access is far faster than disk access, but 
it still means that CPU is not the bottleneck.

Simon.


[sqlite] Testing sqlite wal performance OS X memory/disk

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

I modified a bit the program to somehow test sqlite/system performance at
https://gist.github.com/mingodad/79225c88f8dce0f174f5 ,  

now we can also specify a memory database and doing so on a mac mini i5 2/4
cores surprisingly memory database when shared with 4 threads is slower than
disk database in the same conditions:  

Obs.: this tests measure sqlite3 code speed, memory/processor speed, the
database has only one record.  

Cheers !  

os x memory database 1 thread:  

Update rate: total=2082129, last_total=1951608, rate=130521, avg1=130521,
avg2=130133
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

os x disk database 1 thread:  

Update rate: total=1058748, last_total=992410, rate=66338, avg1=66338,
avg2=66171
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

os x memory database 4 threads:  

Update rate: total=1098811, last_total=1043760, rate=55051, avg1=13762,
avg2=49945
Update busy rate: total=281, last_total=262, rate=19, avg1=4, avg2=12
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

os x disk database 4 threads:  

Update rate: total=1113712, last_total=1047747, rate=65965, avg1=16491,
avg2=65512
Update busy rate: total=486, last_total=456, rate=30, avg1=7, avg2=28
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

?  

linux celeron (1/2 cores) memory database 1 thread:  

Update rate: total=1092238, last_total=1007057, rate=85181, avg1=85181,
avg2=84018
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

linux celeron (1/2 cores) disk database 1 thread:  

Update rate: total=558004, last_total=518039, rate=39965, avg1=39965,
avg2=39857
Update busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

linux celeron (1/2 cores) memory database 2 thread:  

Update rate: total=875095, last_total=793636, rate=81459, avg1=40729,
avg2=79554
Update busy rate: total=106, last_total=97, rate=9, avg1=4, avg2=9
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0  

linux celeron (1/2 cores) disk database 2 threads:  

Update rate: total=522085, last_total=487100, rate=34985, avg1=17492,
avg2=37291
Update busy rate: total=74, last_total=63, rate=11, avg1=5, avg2=5
Update failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read busy rate: total=0, last_total=0, rate=0, avg1=0, avg2=0
Read failed rate: total=0, last_total=0, rate=0, avg1=0, avg2=0



[sqlite] Help needed for COPY Command.

2016-03-25 Thread James K. Lowden
On Fri, 25 Mar 2016 17:18:16 +0100
"Domingo Alvarez Duarte"  wrote:

> Why not have direct command ".export table_name" and internally it
> does all commands you mention in one go, simple and intuitively.  

Importing has unique requirements.  

.import filename tablename

is quite limited, but necessary: SQL has no "read from file" feature.   

You could have 

.export filename tablename

but SQL already has a "read from table" feature, and shell already has
a "write to file" feature.  So an export command would be a redundant
subset of what's already available.  

--jkl


[sqlite] sqlite fixed data loading extension

2016-03-25 Thread James K. Lowden
On Fri, 25 Mar 2016 06:49:22 -0500
Don V Nielsen  wrote:

> I have a need for something that can parse and load into sqlite tables
> fixed length data. 

Insert your own separators.  

$ cat input
12345678910111213141516171819202122232425

Print two 5-byte ranges separated by ", ".  

$ awk '{ OFS=", "; print substr($0, 1, 5), substr($0, 6, 5); }'  \
input 
12345, 67891

--jkl



[sqlite] Minor documentation improvement

2016-03-25 Thread James K. Lowden
On Fri, 25 Mar 2016 15:06:46 +
Simon Slavin  wrote:

> Could something be added to indicate that it pays attention to
> '.separator' ?  If you don't already know, you might think it is
> fixed to one file format.  It could be as simple as
> 
> ".import FILE TABLE Import data from FILE into TABLE.
> See .separator ."

The most confusing part of .import for me was figuring out that the
FILE needs quotes.  

--jkl



[sqlite] Help needed for COPY Command.

2016-03-25 Thread Domingo Alvarez Duarte
Hello Simon !  

That's why I mentioned "would be a good idea to have the ".import" complement
!  

Why not have direct command ".export table_name" and internally it does all
commands you mention in one go, simple and intuitively.  

If I saw an "import" command I also expected the "export" command, and it
seems that I'm not alone.  

Cheers !  
>  Fri Mar 25 2016 03:49:37 PM CET from "Simon Slavin"
>  Subject: Re: [sqlite] Help needed for COPY Command.
>
>  On 25 Mar 2016, at 11:33am, Richard Hipp  wrote:
> 
>  
>>On 3/25/16, Simon Slavin  wrote:
>> 
>>  
>>>There is no COPY command in SQLite.
>>> 

>>  There *was* a COPY command, way back in SQLite 2.x. It was omitted
>> from SQLite3, circa 2004.
>> 

>  Wow.
> 
> On 25 Mar 2016, at 12:22pm, Domingo Alvarez Duarte
> wrote:
> 
>  
>>But discovered that it can be somehow emulated by "import tablename" using
>> csv. 
>> 
>> Would be a good idea to have the complementary of ".import" -> ".export". 
>> 

>  You can get export to .csv files using
> 
> ..mode csv
> ..once filename.txt
> ..SELECT * FROM tablename
> 
> If you want tabs instead of commas, use ".mode tabs" instead.
> 
> Simon.
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
> 
>
>  



?



[sqlite] Help needed for COPY Command.

2016-03-25 Thread Mahi Gurram
Hi,

Good Morning.

I'm trying to use the COPY command but for some reason i'm unable to make
it work.

As per the doc, below is the query syntax:

*copy*  *conflict-algorithm*   *table-name *  *file-name * ?
*column-separator*?   ?*null-indicator*?


I have created a file with data and tried all the below commands:

*Case 1:* Data in input file(data.dat) has "," as column-separator

copy rollback employee /Volumes/Official/data.dat ',' ;

*Case 2:* Data in input file(data.dat) has "\t"(Default) as column-separator

copy rollback employee /Volumes/Official/data.dat;

Unfortunately nothing is working. Also i tried almost all possible
combinations but nothing worked :(

Always i'm getting same error

*Error: near "copy": syntax error *
Please help me in this regard.

Awaiting your response.

Thanks & Best Regards,
- Mahi


[sqlite] Minor documentation improvement

2016-03-25 Thread Simon Slavin
The page documenting the CLI



says that one of the lines in '.help' is

".import FILE TABLE Import data from FILE into TABLE"

Could something be added to indicate that it pays attention to '.separator' ?  
If you don't already know, you might think it is fixed to one file format.  It 
could be as simple as

".import FILE TABLE Import data from FILE into TABLE.  See .separator ."

Simon.


[sqlite] Help needed for COPY Command.

2016-03-25 Thread Simon Slavin

On 25 Mar 2016, at 11:33am, Richard Hipp  wrote:

> On 3/25/16, Simon Slavin  wrote:
> 
>> There is no COPY command in SQLite.
> 
> There *was* a COPY command, way back in SQLite 2.x.  It was omitted
> from SQLite3, circa 2004.

Wow.

On 25 Mar 2016, at 12:22pm, Domingo Alvarez Duarte  wrote:

> But discovered that it can be somehow emulated by "import tablename" using
> csv.  
> 
> Would be a good idea to have the complementary of ".import" -> ".export".  

You can get export to .csv files using

.mode csv
.once filename.txt
.SELECT * FROM tablename

If you want tabs instead of commas, use ".mode tabs" instead.

Simon.


[sqlite] sqlite fixed data loading extension

2016-03-25 Thread Dominique Devienne
On Fri, Mar 25, 2016 at 12:49 PM, Don V Nielsen 
wrote:
>
> (I guess this begets the question..."Is sqlite's csv import an
extension?")


No, it is not an extension, it's part of SQLite's shell directly:
https://www.sqlite.org/cli.html#csv

Which also means it's not part of the SQLite library itself BTW.

Extensions are shared libraries with known (by convention) entry points
(i.e. functions)
which are loaded via https://www.sqlite.org/c3ref/load_extension.html,
which is exposed
by the shell as .load (see "Loading Extensions" in
https://www.sqlite.org/cli.html [1]).

As to your main question, I don't know of such an extension.

Thanks, --DD

PS: Richard, could we have anchors for all h3 titles in the HTML for
https://www.sqlite.org/cli.html, for direct linking please?


[sqlite] Help needed for COPY Command.

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

I also asked the same thing a few days ago and received the same answer.  

But discovered that it can be somehow emulated by "import tablename" using
csv.  

Would be a good idea to have the complementary of ".import" -> ".export".  

Cheers !  

Cheers !  

?



[sqlite] Testing sqlite wal performance, and surfacing a problem

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

Again the problem was my fault, I was not checking the return code of setting
"PRAGMA synchronous=0" and for some threads it was SQLITE_BUSY so they
started in synchronous mode and that slowdown everything !  

Sorry by the noise !  

The updated program to test somehow sqlite performance with multiple
concurrent connections is at
https://gist.github.com/mingodad/79225c88f8dce0f174f5 .  

Cheers !  

?



[sqlite] Help needed for COPY Command.

2016-03-25 Thread Simon Slavin

On 25 Mar 2016, at 10:00am, Mahi Gurram  wrote:

> I'm trying to use the COPY command but for some reason i'm unable to make
> it work.

There is no COPY command in SQLite.

> As per the doc, below is the query syntax:
> 
> *copy*  *conflict-algorithm*   *table-name *  *file-name * ?
> *column-separator*?   ?*null-indicator*?

Please show us the documentation you refer to.

Simon.


[sqlite] sqlite fixed data loading extension

2016-03-25 Thread Jim Callahan
>
> ??I have a need for something that can parse and load into sqlite tables
> fixed length data.


?All the applications I have had experience with in the past (Sqlite Expert,
> Navicat, and some others) require the user to run an application and setup
> the functionality each and every time you used it. They do not give the
> ability to save the import setup into a meaningful parameters file that can
> be edited an rerun from the command line. So these types of applications
> are ruled out. I would think I could do this in some fashion with
> Informatica or like professional product, but at the expense of $$$ and
> m
> ??
> ore $.?


The open source statistical language R can read fixed width files and write
out SQLite tables.

https://www.r-project.org/

Read a table of *f*ixed *w*idth *f*ormatted data into a data.frame
.
https://stat.ethz.ch/R-manual/R-devel/library/utils/html/read.fwf.html

Write a data frame to a SQLite table
http://www.rdocumentation.org/packages/RSQLite/functions/dbWriteTable


This blog post gives an overview of RSQLite
http://sandymuspratt.blogspot.com/2012/11/r-and-sqlite-part-1.html

Full documentation for the RSQLite package
https://cran.r-project.org/web/packages/RSQLite/RSQLite.pdf

BTW, since you are familiar with the Microsoft language C#;
Microsoft has purchased Revolution Analytics and is now
supporting a version of R.
https://mran.revolutionanalytics.com/open/

Jim Callahan
Orlando, FL

On Fri, Mar 25, 2016 at 7:49 AM, Don V Nielsen 
wrote:

> I have a need for something that can parse and load into sqlite tables
> fixed length data. I know sqlite has a csv import, so I would like to
> duplicate that kind of functionality handling fixed columnar data. I
> thought an extension would be perfect so I could specify something as
> simple as "sqlite3 -fx parameter.dat" on the command line and it would
> import the data.
>
> Has anyone written a data loading extension already that would be willing
> to share the source code with me? I have not written an sqlite extension
> before, I know C# not C/C++, and leveraging someone else's effort would
> help me a lot in learning the language and the extension. I've already
> written this type of sqlite data loading logic into a specific application
> using C#, but I would like it to create something more generic and
> generally usable by anyone.
>
> I've seen a lot of traffic on the mailing list about sqlite's csv import
> abilities and wondered if someone has improved them with their own
> extension. (I guess this begets the question..."Is sqlite's csv import an
> extension?")
>
> All the applications I have had experience with in the past (Sqlite Expert,
> Navicat, and some others) require the user to run an application and setup
> the functionality each and every time you used it. They do not give the
> ability to save the import setup into a meaningful parameters file that can
> be edited an rerun from the command line. So these types of applications
> are ruled out. I would think I could do this in some fashion with
> Informatica or like professional product, but at the expense of $$$ and
> more $.
>
> Any observations, comment, or suggestions? Is there a different mail list I
> should hit up?
>
> Thanks for your time and consideration
> dvn
>
>
> "My dad said to me as a child, 'Why be taught what you can learn on your
> own. That's why he would just throw me in the lake...so he could learn
> CPR." - Anthony Jeselnik.
> ___
> sqlite-users mailing list
> sqlite-users at mailinglists.sqlite.org
> http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
>


[sqlite] "System.Data.SQLite" Version 1.0 Supportability

2016-03-25 Thread Harish Kumar Gudur (DATA GLOVE INCORPORATED DBA TR)
Hi Team,
We are planning to migrate few Vendor based applications from Windows Server 
2003 to the latest server Operating System Windows Server 2012/2008. Before 
migration we would like to do the assessment of the application and check the 
supportability.
We are performing the assessment for:
Application Name: System.Data.SQLite
Version: 1.0
Vendor: System.Data.SQLite Team

Kindly provide us the Official documents/ Website links that confirm the 
Supportability of the application on the latest Server Operating Systems - 
Windows Server 2012 R2/2012/2008 R2/2008.
Incase documents/ Website links are currently unavailable then please help us 
gathering the information in the below table if they are supported or not.
Application Name

Application Version

Supportability

Windows Server 2012 R2

Windows Server 2012

Windows Server 2008 R2

Windows Server 2008

System.Data.SQLite

1.0

Supported/ Not Supported

Supported/ Not Supported

Supported/ Not Supported

Supported/ Not Supported

Upgrade Available, if any *



Supported

Supported

Supported

Supported


* - Lowest available version supported on all the 4 Operating System.
This information would help us assess the application and migrate accordingly 
to the latest Operating Systems.
Thanks for your help.
With Warm Regards,
Vendor Research Team
Trimax Americas




[sqlite] Help needed for COPY Command.

2016-03-25 Thread Richard Hipp
On 3/25/16, Simon Slavin  wrote:
>
> On 25 Mar 2016, at 10:00am, Mahi Gurram  wrote:
>
>> I'm trying to use the COPY command but for some reason i'm unable to make
>> it work.
>
> There is no COPY command in SQLite.

There *was* a COPY command, way back in SQLite 2.x.  It was omitted
from SQLite3, circa 2004.

-- 
D. Richard Hipp
drh at sqlite.org


[sqlite] Article about pointer abuse in SQLite

2016-03-25 Thread John McKown
On Thu, Mar 24, 2016 at 5:59 PM, Keith Medcalf  wrote:

> On Thursday, 24 March, 2016 08:27, Tim Streater 
> said,
>
> > On 24 Mar 2016 at 13:41, Jim Callahan 
> > wrote:
>
> > > Assuming one did not get a cryptic compiler message (and in those days
> > all compiler messages were cryptic, "Probable user error:") ...
>
> > Not always: If you used JAIL as a variable in a computed GOTO, the XDS
> > FORTRAN compiler for the Sigma 7 would, in response to the statement:
>
> >GOTO JAIL
>
> > give you the message:
>
> > *** Warning: Go directly; do not pass GO; do not collect $200
>
> Ah the memories ...
>

?Me too. Along with one that I got that really upset me:

ABOVE BUL

That was the _entire_ message! Turns out BUL is "Background Upper Limit".
I.e. I had too big of an array, so the program wouldn't fit into? memory.
And, the ever popular:

END OF FILE ON UNIT 05 AT RUN TIME


-- 
How many surrealists does it take to screw in a lightbulb? One to hold the
giraffe and one to fill the bathtub with brightly colored power tools.

Maranatha! <><
John McKown


[sqlite] sqlite fixed data loading extension

2016-03-25 Thread Don V Nielsen
I have a need for something that can parse and load into sqlite tables
fixed length data. I know sqlite has a csv import, so I would like to
duplicate that kind of functionality handling fixed columnar data. I
thought an extension would be perfect so I could specify something as
simple as "sqlite3 -fx parameter.dat" on the command line and it would
import the data.

Has anyone written a data loading extension already that would be willing
to share the source code with me? I have not written an sqlite extension
before, I know C# not C/C++, and leveraging someone else's effort would
help me a lot in learning the language and the extension. I've already
written this type of sqlite data loading logic into a specific application
using C#, but I would like it to create something more generic and
generally usable by anyone.

I've seen a lot of traffic on the mailing list about sqlite's csv import
abilities and wondered if someone has improved them with their own
extension. (I guess this begets the question..."Is sqlite's csv import an
extension?")

All the applications I have had experience with in the past (Sqlite Expert,
Navicat, and some others) require the user to run an application and setup
the functionality each and every time you used it. They do not give the
ability to save the import setup into a meaningful parameters file that can
be edited an rerun from the command line. So these types of applications
are ruled out. I would think I could do this in some fashion with
Informatica or like professional product, but at the expense of $$$ and
more $.

Any observations, comment, or suggestions? Is there a different mail list I
should hit up?

Thanks for your time and consideration
dvn


"My dad said to me as a child, 'Why be taught what you can learn on your
own. That's why he would just throw me in the lake...so he could learn
CPR." - Anthony Jeselnik.


[sqlite] Testing sqlite wal performance, and surfacing a problem

2016-03-25 Thread Domingo Alvarez Duarte
Hello !  

After fight a bit with sqlite3 "wal" mode I wrote a small multi thread
program to test it's performance
https://gist.github.com/mingodad/79225c88f8dce0f174f5 , doing so and testing
on linux and os x I dicovered that os x threads are around 50% slower than
linux.  

Sqlite3 seems to have a race condition when create a new database on linux
(on os x this doesn't happen),  

we can observe it when start the program with 100 threads and no initial
database:  

Update rate: total=4697, last_total=4662, *rate=35 , avg=0
Update busy rate: total=68353, last_total=67363, rate=990, avg=9
Update failed rate: total=19, last_total=19, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

And now starting the program with the same 100 threads but with an already
existing database:  

Update rate: total=18863, last_total=14836, *rate=4027, avg=40
Update busy rate: total=3631, last_total=2871, rate=760, avg=7
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

Any comment/suggestion are welcome !  

Cheers !  

Linux celeron 2 cores  

OS X i5 4 cores  

10 threads:  

linux:  

Update rate: total=39727, last_total=38274, rate=1453, avg=145
Update busy rate: total=1878, last_total=1814, rate=64, avg=6
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

os x:  

Update rate: total=8894, last_total=8345, rate=549, avg=54
Update busy rate: total=1329, last_total=1252, rate=77, avg=7
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

80 threads:  

linux:  

Update rate: total=64317, last_total=61069, rate=3248, avg=64
Update busy rate: total=8263, last_total=7889, rate=374, avg=7
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

os x:  

Update rate: total=7133, last_total=6535, rate=598, avg=11
Update busy rate: total=5291, last_total=4821, rate=470, avg=9
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

500 threads:  

linux:  

Update rate: total=56811, last_total=53535, rate=3276, avg=6
Update busy rate: total=62126, last_total=58903, rate=3223, avg=6
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

os x:  

Update rate: total=22160, last_total=21454, rate=706, avg=1
Update busy rate: total=84386, last_total=81616, rate=2770, avg=5
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

1000 threads:  

linux:  

Update rate: total=13358, last_total=13071, rate=287, avg=0
Update busy rate: total=386704, last_total=380480, rate=6224, avg=6
Update failed rate: total=30, last_total=29, rate=1, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0  

os x:  

Update rate: total=17519, last_total=17076, rate=443, avg=0
Update busy rate: total=127103, last_total=124224, rate=2879, avg=2
Update failed rate: total=0, last_total=0, rate=0, avg=0
Read busy rate: total=0, last_total=0, rate=0, avg=0
Read failed rate: total=0, last_total=0, rate=0, avg=0



?



[sqlite] minor documentation typo

2016-03-25 Thread Wolfgang Enzinger
minor documentation typo here:
https://www.sqlite.org/partialindex.html

3.0 Queries Using Partial Indexes
[...]
Example: Let the index by 

should be

Example: Let the index be

Greetings, Wolfgang