What would happen if I call sp_open/sp_getobject(env, table) twice, either by error or because the second instance still runs in background after sp_destroy, and do write operations with both pointers? My tests show that data corruption is possible in this case, but I'm not 100% sure, might be the other reason.