Skip to content

Instantly share code, notes, and snippets.

$ npm install bzuillsmith/node-odbc#dynofix
\
> odbc@1.1.0 install /home/andrew/dma/prd/node_modules/odbc
> node-gyp rebuild
make: Entering directory `/home/andrew/dma/prd/node_modules/odbc/build'
CXX(target) Release/obj.target/odbc_bindings/src/odbc.o
CXX(target) Release/obj.target/odbc_bindings/src/odbc_connection.o
CXX(target) Release/obj.target/odbc_bindings/src/odbc_statement.o
CXX(target) Release/obj.target/odbc_bindings/src/odbc_result.o
$ npm rebuild odbc
> odbc@1.1.0 install /home/andrew/dma/prd/node_modules/odbc
> node-gyp rebuild
make: Entering directory `/home/andrew/dma/prd/node_modules/odbc/build'
CXX(target) Release/obj.target/odbc_bindings/src/odbc.o
In file included from ../src/odbc.h:28:0,
from ../src/odbc.cpp:25:
../src/dynodbc.h:352:0: warning: "SQLSetConnectOption" redefined [enabled by default]
ubuntu desktop 14.04.2 i7-4770
node 10.38 odbc 6.13 dynodbc 11672 13497
100000 queries issued in 7.46 seconds, 13404/sec : Prepare - ExecuteNonQuery
100000 queries issued in 8.476 seconds, 11798/sec : Prepare - ExecuteNonQuery
100000 queries issued in 7.409 seconds, 13497/sec : Prepare - ExecuteNonQuery
100000 queries issued in 8.12 seconds, 12315/sec : Prepare - ExecuteNonQuery
100000 queries issued in 8.258 seconds, 12109/sec : Prepare - ExecuteNonQuery
100000 queries issued in 8.465 seconds, 11813/sec : Prepare - ExecuteNonQuery
100000 queries issued in 8.217 seconds, 12169/sec : Prepare - ExecuteNonQuery
no where clause
db2batch -a db2inst1/db2inst1 -d dbname -q on -o r 0 -f sdmlw1.sql
* Summary Table:
Type Number Repetitions Total Time (s) Min Time (s) Max Time (s) Arithmetic Mean Geometric Mean Row(s) Fetched Row(s) Output
--------- ----------- ----------- -------------- -------------- -------------- --------------- -------------- -------------- -------------
Block 1 100 5.154963 0.048700 0.056756 0.051550 0.051518 1000000 0
* Total Entries: 1
* Total Time: 5.154963 seconds
min and max from 10 tests with ubuntu cpufreq scaling gov set to performance
node 4.8.3 ==========================================================================
odbc 1.2.1 dynodbc
100000 queries issued in 14.088 seconds, 7098/sec : Prepare - ExecuteNonQuery
100000 queries issued in 13.203 seconds, 7574/sec : Prepare - ExecuteNonQuery
ibm_db 0.0.19
100000 queries issued in 14.567 seconds, 6864/sec : Prepare - ExecuteNonQuery
var common = require("./commons")
, odbc = require("ibm_db")
, db = new odbc.Database()
, iterations = 100000
;
db.open(common.connectionString, function(err){
if (err) {
console.error(err);
process.exit(1);
let me know if i need to use any specific perf option
andrew@sherlock:~/dma/odbc_ibm$ perf record node --perf_basic_prof db2-bench-prepare-executeNonQuery.js
WARNING: Kernel address maps (/proc/{kallsyms,modules}) are restricted,
check /proc/sys/kernel/kptr_restrict.
Samples in kernel functions may not be resolved if a suitable vmlinux
file is not found in the buildid cache or in the vmlinux path.
Samples in kernel modules won't be resolved at all.
andrew@sherlock:~/dma/odbc_ibm$ node --prof db2-bench-prepare-executeNonQuery.js
100000 queries issued in 39.429 seconds, 2536/sec : Prepare - ExecuteNonQuery
connection closed
andrew@sherlock:~/dma/odbc_ibm$ ls -rtl
total 3124
-rw-r--r-- 1 andrew andrew 1037 Jul 2 2016 commons.js
-rw-r--r-- 1 andrew andrew 826 Jul 2 2016 db2-test-prepare.js
drwxrwxr-x 98 andrew andrew 4096 May 28 21:52 node_modules
-rw-r--r-- 1 andrew andrew 1044 May 30 23:51 db2-bench-prepare-executeNonQuery.js
-rw-rw-r-- 1 andrew andrew 3182236 May 31 14:04 isolate-0x3746270-v8.log
node 6.10.3
andrew@sherlock:~/dma/odbc_ibm$ perf record node --perf-basic-prof db2-bench-prepare-executeNonQuery.js
100000 queries issued in 45.665 seconds, 2189/sec : Prepare - ExecuteNonQuery
connection closed
[ perf record: Woken up 41 times to write data ]
[ perf record: Captured and wrote 10.490 MB perf.data (273571 samples) ]
andrew@sherlock:~/dma/odbc_ibm$ perf report --stdio
# To display the perf.data header info, please use --header/--header-only options.
#
node 4.8.3
andrew@sherlock:~/dma/odbc_ibm$ perf record node --perf-basic-prof db2-bench-prepare-executeNonQuery.js
100000 queries issued in 20.666 seconds, 4838/sec : Prepare - ExecuteNonQuery
connection closed
[ perf record: Woken up 35 times to write data ]
[ perf record: Captured and wrote 9.556 MB perf.data (244959 samples) ]
andrew@sherlock:~/dma/odbc_ibm$ perf report --stdio
# To display the perf.data header info, please use --header/--header-only options.
#