Changeset: 68b1ae1ed486 for MonetDB URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=68b1ae1ed486 Modified Files: monetdb5/extras/pyapi/connection.c monetdb5/extras/pyapi/pyapi.c monetdb5/extras/pyapi/pyapi.h sql/backends/monet5/sql_execute.c sql/backends/monet5/sql_execute.h Branch: pythonudf Log Message:
Load functions from correct DLL file on Windows. diffs (104 lines): diff --git a/monetdb5/extras/pyapi/connection.c b/monetdb5/extras/pyapi/connection.c --- a/monetdb5/extras/pyapi/connection.c +++ b/monetdb5/extras/pyapi/connection.c @@ -9,7 +9,7 @@ #define PyString_FromString PyUnicode_FromString #endif -CREATE_SQL_FUNCTION_PTR(void,res_table_destroy,(res_table*)); +CREATE_SQL_FUNCTION_PTR(void,SQLdestroyResult,(res_table*)); CREATE_SQL_FUNCTION_PTR(str,SQLstatementIntern,(Client, str *, str, int, bit, res_table **)); static PyObject * @@ -234,7 +234,7 @@ PyTypeObject Py_ConnectionType = { void _connection_cleanup_result(void* output) { - (*res_table_destroy_ptr)((res_table*) output); + (*SQLdestroyResult_ptr)((res_table*) output); } char* _connection_query(Client cntxt, char* query, res_table** result) { @@ -266,8 +266,8 @@ void _connection_init(void) { import_array(); - LOAD_SQL_FUNCTION_PTR(res_table_destroy); - LOAD_SQL_FUNCTION_PTR(SQLstatementIntern); + LOAD_SQL_FUNCTION_PTR(SQLdestroyResult, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(SQLstatementIntern, "lib_sql.dll"); if (PyType_Ready(&Py_ConnectionType) < 0) return; diff --git a/monetdb5/extras/pyapi/pyapi.c b/monetdb5/extras/pyapi/pyapi.c --- a/monetdb5/extras/pyapi/pyapi.c +++ b/monetdb5/extras/pyapi/pyapi.c @@ -1623,18 +1623,20 @@ str return createException(MAL, "pyapi.eval", "Failed to load function \"loads\" from Marshal module."); } PyEval_SaveThread(); - LOAD_SQL_FUNCTION_PTR(batbte_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(batsht_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(batint_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(batwrd_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(batlng_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(bathge_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(bathge_dec2_dbl); - LOAD_SQL_FUNCTION_PTR(batstr_2time_timestamp); - LOAD_SQL_FUNCTION_PTR(batstr_2time_daytime); - LOAD_SQL_FUNCTION_PTR(batstr_2_date); - LOAD_SQL_FUNCTION_PTR(batdbl_num2dec_lng); - LOAD_SQL_FUNCTION_PTR(SQLbatstr_cast); + LOAD_SQL_FUNCTION_PTR(batbte_dec2_dbl, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batsht_dec2_dbl, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batint_dec2_dbl, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batwrd_dec2_dbl, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batlng_dec2_dbl, "lib_sql.dll"); +#ifdef HAVE_HGE + LOAD_SQL_FUNCTION_PTR(bathge_dec2_dbl, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(bathge_dec2_dbl, "lib_sql.dll"); +#endif + LOAD_SQL_FUNCTION_PTR(batstr_2time_timestamp, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batstr_2time_daytime, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batstr_2_date, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(batdbl_num2dec_lng, "lib_sql.dll"); + LOAD_SQL_FUNCTION_PTR(SQLbatstr_cast, "lib_sql.dll"); pyapiInitialized++; } MT_lock_unset(&pyapiLock); diff --git a/monetdb5/extras/pyapi/pyapi.h b/monetdb5/extras/pyapi/pyapi.h --- a/monetdb5/extras/pyapi/pyapi.h +++ b/monetdb5/extras/pyapi/pyapi.h @@ -107,8 +107,8 @@ pyapi_export void* lookup_function(char typedef retval (*fcnname##_ptr_tpe)params; \ fcnname##_ptr_tpe fcnname##_ptr = NULL; -#define LOAD_SQL_FUNCTION_PTR(fcnname) \ - fcnname##_ptr = (fcnname##_ptr_tpe) lookup_function(#fcnname, "sql"); \ +#define LOAD_SQL_FUNCTION_PTR(fcnname,libname) \ + fcnname##_ptr = (fcnname##_ptr_tpe) lookup_function(#fcnname, libname); \ if (fcnname##_ptr == NULL) { \ WARNING_MESSAGE("Failed to load function %s", #fcnname); \ } 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 @@ -489,3 +489,7 @@ cleanup_engine: c->glb = oldglb; return msg; } + +void SQLdestroyResult(res_table *destroy) { + res_table_destroy(destroy); +} \ No newline at end of file diff --git a/sql/backends/monet5/sql_execute.h b/sql/backends/monet5/sql_execute.h --- a/sql/backends/monet5/sql_execute.h +++ b/sql/backends/monet5/sql_execute.h @@ -15,5 +15,6 @@ sql5_export str SQLstatementIntern(Clien sql5_export str SQLexecutePrepared(Client c, backend *be, cq *q); sql5_export str SQLengineIntern(Client c, backend *be); sql5_export str SQLrecompile(Client c, backend *be); +sql5_export void SQLdestroyResult(res_table *destroy); #endif /* _SQL_EXECUTE_H_ */ _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list