MCPcopy Create free account
hub / github.com/FirebirdSQL/firebird / freeClientData

Method freeClientData

src/remote/client/interface.cpp:1346–1389  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1344
1345
1346void Blob::freeClientData(CheckStatusWrapper* status, bool force)
1347{
1348/**************************************
1349 *
1350 * g d s _ c a n c e l _ b l o b
1351 *
1352 **************************************
1353 *
1354 * Functional description
1355 * Abort a partially completed blob.
1356 *
1357 **************************************/
1358 try
1359 {
1360 if (!blob)
1361 {
1362 return;
1363 }
1364
1365 CHECK_HANDLE(blob, isc_bad_segstr_handle);
1366
1367 Rdb* rdb = blob->rbl_rdb;
1368 CHECK_HANDLE(rdb, isc_bad_db_handle);
1369 rem_port* port = rdb->rdb_port;
1370 RefMutexGuard portGuard(*port->port_sync, FB_FUNCTION);
1371
1372 try
1373 {
1374 if (!blob->isCached())
1375 release_object(status, rdb, op_cancel_blob, blob->rbl_id);
1376 }
1377 catch (const Exception&)
1378 {
1379 if (!force)
1380 throw;
1381 }
1382 release_blob(blob);
1383 blob = NULL;
1384 }
1385 catch (const Exception& ex)
1386 {
1387 ex.stuffException(status);
1388 }
1389}
1390
1391
1392void Blob::internalCancel(CheckStatusWrapper* status)

Callers

nothing calls this directly

Calls 15

CHECK_HANDLEFunction · 0.85
release_objectFunction · 0.85
send_packetFunction · 0.85
receive_responseFunction · 0.85
iscLogStatusFunction · 0.85
GdsClass · 0.85
defer_packetFunction · 0.85
send_and_receiveFunction · 0.85
unsupportedFunction · 0.85
clear_queueFunction · 0.85
REMOTE_reset_statementFunction · 0.85

Tested by

no test coverage detected