@@ -241,12 +241,11 @@ int PyWrapper::wrapperFini() {
241
241
242
242
int PyWrapper::wrapperOnceExec (const char *usrTag, std::map <std::string, std::string> params, DataListCls reqData,
243
243
pDataList *respData, std::string sid, wrapperCallback cb) {
244
+ SetSidUsrTag (sid, usrTag);
244
245
try {
245
246
if (cb != nullptr ) {
246
247
SetSidCallBack (cb, sid);
247
-
248
248
}
249
- SetSidUsrTag (sid, usrTag);
250
249
params[" sid" ] = sid;
251
250
// 执行python exec 推理
252
251
py::object r = _wrapperOnceExec (params, reqData, usrTag);
@@ -260,12 +259,14 @@ int PyWrapper::wrapperOnceExec(const char *usrTag, std::map <std::string, std::s
260
259
// 先判断python有没有抛出错误. response中的 errorCode
261
260
if (resp->errCode != 0 ) {
262
261
spdlog::error (" find error from python: {}" , resp->errCode );
262
+ DelSidUsrTag (sid);
263
263
return resp->errCode ;
264
264
}
265
265
266
266
int dataSize = resp->list .size ();
267
267
if (dataSize == 0 ) {
268
268
spdlog::error (" error, not find any data from resp" );
269
+ DelSidUsrTag (sid);
269
270
return -1 ;
270
271
}
271
272
for (int idx = 0 ; idx < dataSize; idx++) {
@@ -283,6 +284,7 @@ int PyWrapper::wrapperOnceExec(const char *usrTag, std::map <std::string, std::s
283
284
if (pr == nullptr ) {
284
285
int ret = -1 ;
285
286
spdlog::error (" can't malloc memory for data, sid:{}" , sid);
287
+ DelSidUsrTag (sid);
286
288
return ret;
287
289
}
288
290
ptr = PyBytes_AsString (itemData.data .ptr ());
@@ -309,17 +311,22 @@ int PyWrapper::wrapperOnceExec(const char *usrTag, std::map <std::string, std::s
309
311
}
310
312
catch (py::cast_error &e) {
311
313
spdlog::error (" cast error: {}" , e.what ());
314
+ DelSidUsrTag (sid);
312
315
return -1 ;
313
316
}
314
317
catch (py::error_already_set &e) {
315
318
spdlog::error (" error_already_set error: {}" , e.what ());
319
+ DelSidUsrTag (sid);
320
+
316
321
return -1 ;
317
322
}
318
323
catch (const std::exception &e) {
319
324
spdlog::error (" error_already_set error: {}" , e.what ());
325
+ DelSidUsrTag (sid);
326
+
320
327
return -1 ;
321
328
}
322
-
329
+ DelSidUsrTag (sid);
323
330
return 0 ;
324
331
325
332
}
0 commit comments