~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to plugin/slave/queue_producer.cc

  • Committer: Lee Bieber
  • Date: 2011-03-04 23:51:48 UTC
  • mfrom: (2219.1.2 build)
  • Revision ID: kalebral@gmail.com-20110304235148-g7sawtycktp1vz74
Merge Shrews - 729372: Semicolon causing slave plugin to stop replicating
Merge Andrew - 728990: libdrizzle: Re-using a result struct without freeing causes infinite loop

Show diffs side-by-side

added added

removed removed

Lines of Context:
174
174
  if (drizzle_quit(&_connection, &result, &ret) == NULL)
175
175
  {
176
176
    _last_return= ret;
 
177
    drizzle_result_free(&result);
177
178
    return false;
178
179
  }
179
180
 
235
236
 
236
237
  drizzle_return_t ret;
237
238
  drizzle_result_st result;
238
 
  drizzle_result_create(&_connection, &result);
239
239
  drizzle_query_str(&_connection, &result, sql.c_str(), &ret);
240
240
  
241
241
  if (ret != DRIZZLE_RETURN_OK)
244
244
    _last_error_message= "Replication slave: ";
245
245
    _last_error_message.append(drizzle_error(&_drizzle));
246
246
    errmsg_printf(error::ERROR, _("%s"), _last_error_message.c_str());
 
247
    drizzle_result_free(&result);
247
248
    return false;
248
249
  }
249
250
 
340
341
      it= message_text.insert(it, '\\');
341
342
      ++it;
342
343
    }
 
344
    else if (*it == ';')
 
345
    {
 
346
      it= message_text.insert(it, '\\');
 
347
      ++it;  /* advance back to the semicolon */
 
348
    }
343
349
  }
344
350
 
345
351
  sql.append(message_text);
391
397
 
392
398
  drizzle_return_t ret;
393
399
  drizzle_result_st result;
394
 
  drizzle_result_create(&_connection, &result);
395
400
  drizzle_query_str(&_connection, &result, sql.c_str(), &ret);
396
401
  
397
402
  if (ret != DRIZZLE_RETURN_OK)
400
405
    _last_error_message= "Replication slave: ";
401
406
    _last_error_message.append(drizzle_error(&_drizzle));
402
407
    errmsg_printf(error::ERROR, _("%s"), _last_error_message.c_str());
 
408
    drizzle_result_free(&result);
403
409
    return false;
404
410
  }
405
411
 
425
431
    {
426
432
      errmsg_printf(error::ERROR,
427
433
                    _("Replication slave: Unable to insert into queue."));
 
434
      drizzle_result_free(&result);
428
435
      return false;
429
436
    }
430
437
  }