Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
node-sqlite3
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
俞永鹏
node-sqlite3
Commits
d8a2589e
Commit
d8a2589e
authored
Mar 29, 2010
by
Orlando Vazquez
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix a subtle bug in tests
parent
911cd8d9
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
91 additions
and
21 deletions
+91
-21
sqlite3_bindings.cc
sqlite3_bindings.cc
+0
-3
speedtest-low-parallel-binds.js
tests/speedtest-low-parallel-binds.js
+71
-0
speedtest-low-parallel.js
tests/speedtest-low-parallel.js
+20
-18
No files found.
sqlite3_bindings.cc
View file @
d8a2589e
...
@@ -834,7 +834,6 @@ protected:
...
@@ -834,7 +834,6 @@ protected:
if
(
!
column_count_
)
return
;
if
(
!
column_count_
)
return
;
for
(
int
i
=
0
;
i
<
column_count_
;
i
++
)
{
for
(
int
i
=
0
;
i
<
column_count_
;
i
++
)
{
switch
(
column_types_
[
i
])
{
switch
(
column_types_
[
i
])
{
// XXX why does using String::New make v8 croak here?
case
SQLITE_INTEGER
:
case
SQLITE_INTEGER
:
free
(
column_data_
[
i
]);
free
(
column_data_
[
i
]);
break
;
break
;
...
@@ -948,10 +947,8 @@ protected:
...
@@ -948,10 +947,8 @@ protected:
}
}
else
if
(
rc
==
SQLITE_DONE
)
{
else
if
(
rc
==
SQLITE_DONE
)
{
// nothing to do in this case
// nothing to do in this case
printf
(
"done
\n
"
);
}
}
else
{
else
{
printf
(
"error
\n
"
);
sto
->
error_
=
true
;
sto
->
error_
=
true
;
}
}
...
...
tests/speedtest-low-parallel-binds.js
0 → 100644
View file @
d8a2589e
var
sqlite
=
require
(
'../sqlite3_bindings'
);
var
sys
=
require
(
'sys'
);
var
puts
=
sys
.
puts
;
var
inspect
=
sys
.
inspect
;
var
db
=
new
sqlite
.
Database
();
var
total
=
100000
;
var
rows
=
0
;
var
t0
;
function
getRows
()
{
db
.
prepare
(
"SELECT alpha FROM t1"
,
function
(
error
,
statement
)
{
if
(
error
)
throw
error
;
rows
=
0
;
t0
=
new
Date
();
function
onStep
(
error
,
row
)
{
var
d
;
if
(
error
)
throw
error
;
if
(
!
row
)
{
statement
.
finalize
(
function
()
{
});
d
=
((
new
Date
)
-
t0
)
/
1000
;
puts
(
"**** "
+
d
+
"s to fetch "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
return
;
}
rows
++
;
statement
.
step
(
onStep
);
}
statement
.
step
(
onStep
);
});
}
function
createTable
(
db
,
callback
)
{
db
.
prepare
(
"CREATE TABLE t1 (alpha INTEGER)"
,
function
(
error
,
statement
)
{
if
(
error
)
throw
error
;
callback
();
});
}
var
count
=
0
;
function
onPrepare
(
error
,
statement
)
{
var
d
;
if
(
error
)
throw
error
;
statement
.
bind
(
1
,
count
++
,
function
(
error
)
{
if
(
error
)
throw
error
;
statement
.
step
(
function
(
row
)
{
statement
.
finalize
(
function
()
{
if
(
++
rows
==
total
)
{
d
=
((
new
Date
)
-
t0
)
/
1000
;
puts
(
"**** "
+
d
+
"s to insert "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
getRows
();
}
});
});
});
}
db
.
open
(
':memory:'
,
function
()
{
createTable
(
db
,
function
()
{
t0
=
new
Date
();
for
(
var
i
=
0
;
i
<
total
;
i
++
)
{
db
.
prepare
(
"INSERT INTO t1 VALUES (?)"
,
onPrepare
);
}
});
});
tests/speedtest-low-parallel.js
View file @
d8a2589e
...
@@ -9,28 +9,26 @@ var db = new sqlite.Database();
...
@@ -9,28 +9,26 @@ var db = new sqlite.Database();
var
total
=
100000
;
var
total
=
100000
;
var
rows
=
0
;
var
rows
=
0
;
var
t0
;
var
t0
;
var
statement
;
function
onStep
(
error
,
row
)
{
// puts(inspect(arguments));
var
d
;
if
(
error
)
throw
error
;
if
(
!
row
)
{
statement
.
finalize
(
function
()
{
puts
(
"finalized"
)
});
d
=
((
new
Date
)
-
t0
)
/
1000
;
puts
(
"**** "
+
d
+
"s to fetch "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
return
;
}
rows
++
;
statement
.
step
(
arguments
.
callee
);
}
function
getRows
()
{
function
getRows
()
{
db
.
prepare
(
"SELECT * FROM t1"
,
function
(
error
,
st
)
{
db
.
prepare
(
"SELECT * FROM t1"
,
function
(
error
,
st
atement
)
{
if
(
error
)
throw
error
;
if
(
error
)
throw
error
;
rows
=
0
;
rows
=
0
;
t0
=
new
Date
();
t0
=
new
Date
();
statement
=
st
;
function
onStep
(
error
,
row
)
{
var
d
;
if
(
error
)
throw
error
;
if
(
!
row
)
{
statement
.
finalize
(
function
()
{
});
d
=
((
new
Date
)
-
t0
)
/
1000
;
puts
(
"**** "
+
d
+
"s to fetch "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
return
;
}
rows
++
;
statement
.
step
(
onStep
);
}
statement
.
step
(
onStep
);
statement
.
step
(
onStep
);
});
});
}
}
...
@@ -42,8 +40,12 @@ function createTable(db, callback) {
...
@@ -42,8 +40,12 @@ function createTable(db, callback) {
});
});
}
}
function
onPrepare
()
{
var
count
=
0
;
function
onPrepare
(
error
,
statement
)
{
var
d
;
var
d
;
if
(
error
)
throw
error
;
if
(
++
rows
==
total
)
{
if
(
++
rows
==
total
)
{
d
=
((
new
Date
)
-
t0
)
/
1000
;
d
=
((
new
Date
)
-
t0
)
/
1000
;
puts
(
"**** "
+
d
+
"s to insert "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
puts
(
"**** "
+
d
+
"s to insert "
+
rows
+
" rows ("
+
(
rows
/
d
)
+
"/s)"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment