Skip to content

Instantly share code, notes, and snippets.

View nirbhayc's full-sized avatar

Nirbhay Choubey nirbhayc

  • Bloomberg LP
  • New York
View GitHub Profile
diff --git a/sqlite/src/comdb2lua.c b/sqlite/src/comdb2lua.c
index 9fe75932..cfcdc984 100644
--- a/sqlite/src/comdb2lua.c
+++ b/sqlite/src/comdb2lua.c
@@ -145,8 +145,13 @@ Cdb2TrigTables *comdb2AddTriggerTable(Parse *parse, Cdb2TrigTables *tables,
// dynamic -> consumer
void comdb2CreateTrigger(Parse *parse, int dynamic, int seq, Token *proc,
- Cdb2TrigTables *tbl)
+ Cdb2TrigTables *tbl, int is_audited)
create table t1 {
schema
{
int i
}
keys
{
"idx1" = i
}
} $$
cdb2sql> create table t1(i int)$$
[create table t1(i int)] rc 0
cdb2sql> insert into t1 select * from generate_series(1,10);
(rows inserted=10)
[insert into t1 select * from generate_series(1,10)] rc 0
$ comdb2sql -cost nctdb "select * from t1 order by 1"
(i=1)
(i=2)
(i=3)
create table t1(i int)$$
select * from t1;
- cur->vs_stab = bdb_temp_table_create(cur->state, bdberr); // bdb/cursor.c (Table of records to skip in the virtual stripe.)
insert into t1 values(1);
- tran->db = bdb_temp_array_create(thedb->bdb_env, &bdberr); // osqlq_bplog_start() db/osqlblockproc.c (temptable for bplog)
- tran->db_ins = bdb_temp_array_create(thedb->bdb_env, &bdberr); // osqlq_bplog_start() db/osqlblockproc.c (reorder)
- rc = create_tablecursor(env->bdb_env, &tbl->add_tbl, &tbl->add_cur, &bdberr, // osql_insrec() (shadow - add tbl)
- rc = create_tablecursor(env->bdb_env, &tbl->upd_tbl, &tbl->upd_cur, &bdberr, // osql_insrec() (shadow - upd tbl)
@nirbhayc
nirbhayc / gist:5152b40706efe2e951044eb1f99f6307
Created January 17, 2019 18:51
comdb2/sqlite plan (commit: 3087047)
nctdb> update sbtest1 set k=k+1 where id=1;
+-------------------------------------------------------------------------------------------------------------------------------+
| Plan |
+-------------------------------------------------------------------------------------------------------------------------------+
| ' 0 [ Init]: Start at 25 ' |
| ' 1 [ Null]: R1 = NULL' |
| ' 2 [ OpenRead]: Open read cursor [2] on index "COMDB2_PK" of table "sbtest1" (covering index) (cmnt:$COMDB2_PK_7C917175)' |
| ' 3 [ColumnsUsed]: Cursor [2] using column mask 1000000000000000000000000000000000000000000000000000000000000000' |
| ' 4 [ Explain]: No-op (168)'
@nirbhayc
nirbhayc / gist:be1578284bedd49f2434fa2745fb65fe
Created January 17, 2019 18:50
comdb2/sqlite plan (commit: dd2553d)
nctdb> update sbtest1 set k=k+1 where id=1;
+-------------------------------------------------------------------------------------------------------------------------------+
| Plan |
+-------------------------------------------------------------------------------------------------------------------------------+
| ' 0 [ Init]: Start at 23 ' |
| ' 1 [ Null]: R1 = NULL' |
| ' 2 [ OpenRead]: Open read cursor [2] on index "COMDB2_PK" of table "sbtest1" (covering index) (cmnt:$COMDB2_PK_7C917175)' |
| ' 3 [ColumnsUsed]: Cursor [2] using column mask 1000000000000000000000000000000000000000000000000000000000000000' |
| ' 4 [ Explain]: No-op (178)'
@nirbhayc
nirbhayc / PR-653
Last active January 18, 2018 19:57
Fix random 'Error in sending back data' from server #653
diff --git a/lua/sp.c b/lua/sp.c
index 40dfeab..25f5b76 100644
--- a/lua/sp.c
+++ b/lua/sp.c
@@ -1382,9 +1382,8 @@ typedef struct client_info {
int has_buffer;
} clnt_info;
-static int send_sp_trace(SP sp, const char *trace, int want_response)
+static void send_sp_trace(SP sp, const char *trace, int want_response)
@nirbhayc
nirbhayc / sysbench
Last active February 23, 2018 20:56
Sysbench notes
Clone:
https://github.com/nirbhayc/sysbench
Command:
mkdir b
./autogen.sh
./configure --with-mysql --with-comdb2 --prefix=/home/nirbhay/comdb2/sysbench/b (--with-debug)
make
make install
export PATH=$PATH:/home/nirbhay/comdb2/nirbhayc/sysbench/b/bin/:/home/nirbhay/comdb2/nirbhayc/sysbench/b/share/sysbench/
diff --git a/bbinc/tunables.h b/bbinc/tunables.h
index eb1d5d1..41263b2 100644
--- a/bbinc/tunables.h
+++ b/bbinc/tunables.h
@@ -59,6 +59,9 @@ typedef enum {
/* Set this flag if no argument has been specified. */
EMPTY = 1 << 8,
+
+ /* Set this flag if the tunable needs to be read early during startup. */
@nirbhayc
nirbhayc / systemctl
Created July 11, 2017 13:26
(Blog) Systemd + MariaDB
$ sudo systemctl daemon-reload