MonetDB: Jul2017 - Initialize sys.argv, because tensorflow requi...
Changeset: 44e0bc7dab59 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=44e0bc7dab59 Modified Files: sql/backends/monet5/UDF/pyapi/pyapi.c Branch: Jul2017 Log Message: Initialize sys.argv, because tensorflow requires this. diffs (20 lines): diff --git a/sql/backends/monet5/UDF/pyapi/pyapi.c b/sql/backends/monet5/UDF/pyapi/pyapi.c --- a/sql/backends/monet5/UDF/pyapi/pyapi.c +++ b/sql/backends/monet5/UDF/pyapi/pyapi.c @@ -1425,9 +1425,16 @@ PYFUNCNAME(PyAPIprelude)(void *ret) { MT_lock_init(&queryLock, "query_lock"); MT_lock_set(&pyapiLock); if (!pyapiInitialized) { +#ifdef IS_PY3K + wchar_t* program = Py_DecodeLocale("mserver5", NULL); + wchar_t* argv[] = { program }; +#else + char* argv[] = {"mserver5"}; +#endif str msg = MAL_SUCCEED; PyObject *tmp; Py_Initialize(); + PySys_SetArgvEx(1, argv, 0); _import_array(); msg = _connection_init(); if (msg != MAL_SUCCEED) { ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: jitudf - More compilation fixes.
Changeset: c2c56a8d02c5 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c2c56a8d02c5 Modified Files: sql/backends/monet5/UDF/capi/capi.c Branch: jitudf Log Message: More compilation fixes. diffs (118 lines): diff --git a/sql/backends/monet5/UDF/capi/capi.c b/sql/backends/monet5/UDF/capi/capi.c --- a/sql/backends/monet5/UDF/capi/capi.c +++ b/sql/backends/monet5/UDF/capi/capi.c @@ -424,6 +424,9 @@ static str CUDFeval(Client cntxt, MalBlk size_t input_size = 0; bit non_grouped_aggregate = 0; + size_t index = 0; + int bat_type = 0; + (void)cntxt; actual_mprotected_regions[tid] = ®ions; @@ -726,7 +729,7 @@ static str CUDFeval(Client cntxt, MalBlk // of the function // first convert the input for (i = pci->retc + ARG_OFFSET; i < (size_t)pci->argc; i++) { - int bat_type = !isaBatType(getArgType(mb, pci, i)) + bat_type = !isaBatType(getArgType(mb, pci, i)) ? getArgType(mb, pci, i) : getBatType(getArgType(mb, pci, i)); const char *tpe = GetTypeName(bat_type); @@ -741,7 +744,7 @@ static str CUDFeval(Client cntxt, MalBlk } if (non_grouped_aggregate) { // manually add "aggr_group" for non-grouped aggregates - int bat_type = TYPE_oid; + bat_type = TYPE_oid; const char *tpe = GetTypeName(bat_type); assert(tpe); if (tpe) { @@ -753,7 +756,7 @@ static str CUDFeval(Client cntxt, MalBlk } // output types for (i = 0; i < (size_t)pci->retc; i++) { - int bat_type = getBatType(getArgType(mb, pci, i)); + bat_type = getBatType(getArgType(mb, pci, i)); const char *tpe = GetTypeName(bat_type); assert(tpe); if (tpe) { @@ -882,8 +885,8 @@ static str CUDFeval(Client cntxt, MalBlk // create the inputs argnode = sqlfun ? sqlfun->ops->h : NULL; for (i = pci->retc + ARG_OFFSET; i < (size_t)pci->argc; i++) { - size_t index = i - (pci->retc + ARG_OFFSET); - int bat_type = getArgType(mb, pci, i); + index = i - (pci->retc + ARG_OFFSET); + bat_type = getArgType(mb, pci, i); if (!isaBatType(bat_type)) { // scalar input // create a temporary BAT @@ -1085,7 +1088,7 @@ static str CUDFeval(Client cntxt, MalBlk } if (non_grouped_aggregate) { - size_t index = input_count; + index = input_count; GENERATE_BAT_INPUT_BASE(oid); bat_data->count = input_size; bat_data->data = @@ -1096,8 +1099,8 @@ static str CUDFeval(Client cntxt, MalBlk argnode = sqlfun ? sqlfun->res->h : NULL; // output types for (i = 0; i < output_count; i++) { - size_t index = i; - int bat_type = getBatType(getArgType(mb, pci, i)); + index = i; + bat_type = getBatType(getArgType(mb, pci, i)); if (bat_type == TYPE_bit || bat_type == TYPE_bte) { GENERATE_BAT_OUTPUT(bte); } else if (bat_type == TYPE_sht) { @@ -1151,18 +1154,16 @@ static str CUDFeval(Client cntxt, MalBlk msg = createException(MAL, "cudf.eval", "Attempting to write to " "the input or triggered a " "segfault/bus error"); - goto wrapup; } else if (ret == 2) { msg = createException(MAL, "cudf.eval", "Malloc failure in internal function!"); - goto wrapup; } else { // we jumped here msg = createException(MAL, "cudf.eval", "We longjumped here " "because of an error, but " "we don't know which!"); - goto wrapup; } + goto wrapup; } // set up the signal handler for catching segfaults @@ -1223,7 +1224,7 @@ static str CUDFeval(Client cntxt, MalBlk // create the output bats from the returned results
MonetDB: jitudf - Compilation fixes.
Changeset: 659abbe2473d for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=659abbe2473d Modified Files: sql/backends/monet5/UDF/capi/Tests/All sql/backends/monet5/UDF/capi/capi.c Branch: jitudf Log Message: Compilation fixes. diffs (93 lines): diff --git a/sql/backends/monet5/UDF/capi/Tests/All b/sql/backends/monet5/UDF/capi/Tests/All --- a/sql/backends/monet5/UDF/capi/Tests/All +++ b/sql/backends/monet5/UDF/capi/Tests/All @@ -1,14 +1,14 @@ -capi00 -capi01 -capi02 -capi03 -capi04 -capi05 -capi06 -capi07 -capi08 -capi09 -capi10 -capi11 -capi12 +NOT_WIN32?capi00 +NOT_WIN32?capi01 +NOT_WIN32?capi02 +NOT_WIN32?capi03 +NOT_WIN32?capi04 +NOT_WIN32?capi05 +NOT_WIN32?capi06 +NOT_WIN32?capi07 +NOT_WIN32?capi08 +NOT_WIN32?capi09 +NOT_WIN32?capi10 +NOT_WIN32?capi11 +NOT_WIN32?capi12 diff --git a/sql/backends/monet5/UDF/capi/capi.c b/sql/backends/monet5/UDF/capi/capi.c --- a/sql/backends/monet5/UDF/capi/capi.c +++ b/sql/backends/monet5/UDF/capi/capi.c @@ -16,7 +16,6 @@ #include #include #include -#include #include #include #include @@ -348,7 +347,6 @@ const char *cpp_flag = "capi_cpp"; static size_t GetTypeCount(int type, void *struct_ptr); static void *GetTypeData(int type, void *struct_ptr); -static const char *GetTypeDefinition(int type); static const char *GetTypeName(int type); static void data_from_date(date d, cudf_data_date *ptr); @@ -1521,42 +1519,6 @@ wrapup: return msg; } -static const char *GetTypeDefinition(int type) -{ - const char *tpe = NULL; - if (type == TYPE_bit) { - tpe = "signed char"; - } else if (type == TYPE_bte) { - tpe = "signed char"; - } else if (type == TYPE_sht) { - tpe = "short"; - } else if (type == TYPE_int) { - tpe = "int"; - } else if (type == TYPE_oid) { - tpe = "size_t"; - } else if (type == TYPE_lng) { - tpe = "lng"; - } else if (type == TYPE_flt) { - tpe = "float"; - } else if (type == TYPE_dbl) { - tpe = "double"; - } else if (type == TYPE_str) { - tpe = "char*"; - } else if (type == TYPE_date) { - tpe = "cudf_data_date"; - } else if (type == TYPE_daytime) { - tpe = "cudf_data_time"; - } else if (type == TYPE_timestamp) { - tpe = "cudf_data_timestamp"; - } else if (type == TYPE_blob || type == TYPE_sqlblob) { - tpe = "cudf_data_blob"; - } else { - // unsupported type: string - tpe = "char*"; - } - return tpe; -} - static const char *GetTypeName(int type) { const char *tpe = NULL; ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list
MonetDB: Jul2017 - Don't assume that bat.append modifies its fir...
Changeset: 621f76f4c576 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=621f76f4c576 Modified Files: sql/backends/monet5/sql_execute.c Branch: Jul2017 Log Message: Don't assume that bat.append modifies its first argument. Patch by Roberto Cornacchia. diffs (88 lines): diff --git a/sql/backends/monet5/sql_execute.c b/sql/backends/monet5/sql_execute.c --- a/sql/backends/monet5/sql_execute.c +++ b/sql/backends/monet5/sql_execute.c @@ -84,6 +84,7 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) q= newStmt(mb, profilerRef, stoptraceRef); q= pushStr(mb,q,"sql_traces"); + /* cook a new resultSet instruction */ resultset = newInstruction(mb,sqlRef, resultSetRef); getArg(resultset,0) = newTmpVariable(mb, TYPE_int); @@ -92,7 +93,6 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) tbls = newStmt(mb,batRef, newRef); setVarType(mb, getArg(tbls,0), newBatType(TYPE_str)); tbls = pushType(mb, tbls, TYPE_str); - resultset= pushArgument(mb,resultset, getArg(tbls,0)); q= newStmt(mb,batRef,appendRef); q= pushArgument(mb,q,getArg(tbls,0)); @@ -103,11 +103,12 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) q= pushArgument(mb,q,k); q= pushStr(mb,q,".trace"); + resultset= pushArgument(mb,resultset, getArg(q,0)); + /* build colum defs */ cols = newStmt(mb,batRef, newRef); setVarType(mb, getArg(cols,0), newBatType(TYPE_str)); cols = pushType(mb, cols, TYPE_str); - resultset= pushArgument(mb,resultset, getArg(cols,0)); q= newStmt(mb,batRef,appendRef); q= pushArgument(mb,q,getArg(cols,0)); @@ -115,14 +116,15 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) k= getArg(q,0); q= newStmt(mb,batRef,appendRef); - q= pushArgument(mb,q, getArg(cols,0)); + q= pushArgument(mb,q, k); q= pushStr(mb,q,"statement"); + resultset= pushArgument(mb,resultset, getArg(q,0)); + /* build type defs */ types = newStmt(mb,batRef, newRef); setVarType(mb, getArg(types,0), newBatType(TYPE_str)); types = pushType(mb, types, TYPE_str); - resultset= pushArgument(mb,resultset, getArg(types,0)); q= newStmt(mb,batRef,appendRef); q= pushArgument(mb,q, getArg(types,0)); @@ -133,11 +135,12 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) q= pushArgument(mb,q, k); q= pushStr(mb,q,"clob"); + resultset= pushArgument(mb,resultset, getArg(q,0)); + /* build scale defs */ clen = newStmt(mb,batRef, newRef); setVarType(mb, getArg(clen,0), newBatType(TYPE_int)); clen = pushType(mb, clen, TYPE_int); - resultset= pushArgument(mb,resultset, getArg(clen,0)); q= newStmt(mb,batRef,appendRef); q= pushArgument(mb,q, getArg(clen,0)); @@ -148,11 +151,12 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) q= pushArgument(mb,q, k); q= pushInt(mb,q,0); + resultset= pushArgument(mb,resultset, getArg(q,0)); + /* build scale defs */ scale = newStmt(mb,batRef, newRef); setVarType(mb, getArg(scale,0), newBatType(TYPE_int)); scale = pushType(mb, scale, TYPE_int); - resultset= pushArgument(mb,resultset, getArg(scale,0)); q= newStmt(mb,batRef,appendRef); q= pushArgument(mb,q, getArg(scale,0)); @@ -163,6 +167,8 @@ SQLsetTrace(Client cntxt, MalBlkPtr mb) q= pushArgument(mb, q, k); q= pushInt(mb,q,0); + resultset= pushArgument(mb,resultset, getArg(q,0)); + /* add the ticks column */ q = newStmt(mb, profilerRef, "getTrace"); ___ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list