The docs say I'm supposed to call BackgroundWorkerInitializeConnection in a 
bgworker and then I can start using spi functions, but they aren't clear on if 
I should call SPI_connect too.

If I call BackgroundWorkerInitializeConnection and then SPI_execute I get a 
return code of SPI_ERROR_UNCONNECTED. If I call 
BackgroundWorkerInitializeConnection then SPI_connect I get a segfault.

I'm initialising my worker as:

    strncpy(worker.bgw_name, "tds handler", sizeof(worker.bgw_name));
    worker.bgw_flags = BGWORKER_SHMEM_ACCESS | 
BGWORKER_BACKEND_DATABASE_CONNECTION;
    worker.bgw_start_time = BgWorkerStart_RecoveryFinished;
    worker.bgw_restart_time = BGW_NEVER_RESTART;
    //worker.bgw_main_arg = 1433;
    worker.bgw_main = tdsworker;
    RegisterDynamicBackgroundWorker(&worker, &handle);

What am I missing? (this is 9.4 obviously, as I'm using a dynamic bgworker)

Thanks

James


-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to