trigger type 2
This commit is contained in:
@@ -75,7 +75,7 @@ class build_manager:
|
||||
'build.py', 'Makefile',
|
||||
'server/server.cpp', 'server/libaquery.cpp',
|
||||
'server/monetdb_conn.cpp', 'server/threading.cpp',
|
||||
'server/winhelper.cpp'
|
||||
'server/winhelper.cpp', 'server/monetdb_ext.c'
|
||||
]
|
||||
headerfiles = ['server/aggregations.h', 'server/hasher.h', 'server/io.h',
|
||||
'server/libaquery.h', 'server/monetdb_conn.h', 'server/pch.hpp',
|
||||
|
||||
@@ -35,9 +35,9 @@ struct monetdbe_table_data{
|
||||
void* cols;
|
||||
};
|
||||
|
||||
size_t
|
||||
extern "C" size_t
|
||||
monetdbe_get_size(void* dbhdl, const char *table_name);
|
||||
|
||||
void*
|
||||
extern "C" void*
|
||||
monetdbe_get_col(void* dbhdl, const char *table_name, uint32_t col_id);
|
||||
#endif
|
||||
|
||||
@@ -69,10 +69,13 @@ monetdbe_get_size(monetdbe_database dbhdl, const char *table_name)
|
||||
monetdbe_database_internal* hdl = (monetdbe_database_internal*)dbhdl;
|
||||
backend* be = ((backend *)(((monetdbe_database_internal*)dbhdl)->c->sqlcontext));
|
||||
mvc *m = be->mvc;
|
||||
//mvc_trans(m);
|
||||
sql_table *t = find_table_or_view_on_scope(m, NULL, "sys", table_name, "CATALOG", false);
|
||||
if (!t) return 0;
|
||||
sql_column *col = ol_first_node(t->columns)->data;
|
||||
sqlstore* store = m->store;
|
||||
size_t sz = store->storage_api.count_col(m->session->tr, col, QUICK);
|
||||
//mvc_cancel_session(m);
|
||||
return sz;
|
||||
}
|
||||
|
||||
@@ -81,10 +84,13 @@ monetdbe_get_col(monetdbe_database dbhdl, const char *table_name, uint32_t col_i
|
||||
monetdbe_database_internal* hdl = (monetdbe_database_internal*)dbhdl;
|
||||
backend* be = ((backend *)(((monetdbe_database_internal*)dbhdl)->c->sqlcontext));
|
||||
mvc *m = be->mvc;
|
||||
//mvc_trans(m);
|
||||
sql_table *t = find_table_or_view_on_scope(m, NULL, "sys", table_name, "CATALOG", false);
|
||||
if (!t) return 0;
|
||||
sql_column *col = ol_fetch(t->columns, col_id);
|
||||
sqlstore* store = m->store;
|
||||
BAT *b = store->storage_api.bind_col(m->session->tr, col, QUICK);
|
||||
BATiter iter = bat_iterator(b);
|
||||
//mvc_cancel_session(m);
|
||||
return iter.base;
|
||||
}
|
||||
|
||||
+1
-1
@@ -472,7 +472,7 @@ start:
|
||||
auto fp = fopen(config_name.c_str(), "rb");
|
||||
if(fp == nullptr){
|
||||
puts("ERROR: Procedure not found on disk.");
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
fread(&p.cnt, sizeof(p.cnt), 1, fp);
|
||||
fread(&p.postproc_modules, sizeof(p.postproc_modules), 1, fp);
|
||||
|
||||
@@ -211,7 +211,7 @@ public:
|
||||
iterator_t erase(iterator_t _it) {
|
||||
#ifdef DEBUG
|
||||
// Do bound checks
|
||||
if (!(size && capicity && container &&
|
||||
if (!(size && capacity && container &&
|
||||
_it >= container && (_it - container) < size))
|
||||
return 0;
|
||||
#endif
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!aquery
|
||||
|
||||
procedure one run
|
||||
procedure two run
|
||||
|
||||
@@ -5,4 +7,5 @@ create table t(a int);
|
||||
exec
|
||||
create trigger a on t action one when two;
|
||||
exec
|
||||
insert into t(a) values (1);
|
||||
insert into t(a) values (1);
|
||||
exec
|
||||
Reference in New Issue
Block a user