comparison Framework/PostgreSQL/PostgreSQLStatement.cpp @ 469:302f3c2b1c34

merge pg-transactions -> mainline
author Alain Mazy <am@osimis.io>
date Mon, 05 Feb 2024 09:48:11 +0100
parents f0976163dbe1
children 54d518dcd74a
comparison
equal deleted inserted replaced
464:042416783518 469:302f3c2b1c34
285 { 285 {
286 PQclear(result); 286 PQclear(result);
287 } 287 }
288 288
289 #if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 9, 2) 289 #if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 9, 2)
290 throw Orthanc::OrthancException(Orthanc::ErrorCode_DatabaseCannotSerialize); 290 std::string errorString(PQresultErrorMessage(result));
291 throw Orthanc::OrthancException(Orthanc::ErrorCode_DatabaseCannotSerialize, errorString, false); // don't log here, it is handled at higher level
291 #else 292 #else
292 throw Orthanc::OrthancException(Orthanc::ErrorCode_Database, "Collision between multiple writers"); 293 throw Orthanc::OrthancException(Orthanc::ErrorCode_Database, "Collision between multiple writers");
293 #endif 294 #endif
294 } 295 }
295 else if (result == NULL) 296 else if (result == NULL)
306 database_(database), 307 database_(database),
307 sql_(sql), 308 sql_(sql),
308 inputs_(new Inputs), 309 inputs_(new Inputs),
309 formatter_(Dialect_PostgreSQL) 310 formatter_(Dialect_PostgreSQL)
310 { 311 {
311 LOG(TRACE) << "PostgreSQL: " << sql; 312 if (database.IsVerboseEnabled())
313 {
314 LOG(TRACE) << "PostgreSQL: " << sql;
315 }
312 } 316 }
313 317
314 318
315 PostgreSQLStatement::PostgreSQLStatement(PostgreSQLDatabase& database, 319 PostgreSQLStatement::PostgreSQLStatement(PostgreSQLDatabase& database,
316 const Query& query) : 320 const Query& query) :
317 database_(database), 321 database_(database),
318 inputs_(new Inputs), 322 inputs_(new Inputs),
319 formatter_(Dialect_PostgreSQL) 323 formatter_(Dialect_PostgreSQL)
320 { 324 {
321 query.Format(sql_, formatter_); 325 query.Format(sql_, formatter_);
322 LOG(TRACE) << "PostgreSQL: " << sql_; 326
327 if (database.IsVerboseEnabled())
328 {
329 LOG(TRACE) << "PostgreSQL: " << sql_;
330 }
323 331
324 for (size_t i = 0; i < formatter_.GetParametersCount(); i++) 332 for (size_t i = 0; i < formatter_.GetParametersCount(); i++)
325 { 333 {
326 switch (formatter_.GetParameterType(i)) 334 switch (formatter_.GetParameterType(i))
327 { 335 {