]> granicus.if.org Git - icinga2/commitdiff
Clean up the FinishAsyncQueries code a bit
authorGunnar Beutner <gunnar@beutner.name>
Mon, 14 Dec 2015 09:33:43 +0000 (10:33 +0100)
committerGunnar Beutner <gunnar@beutner.name>
Mon, 14 Dec 2015 09:34:12 +0000 (10:34 +0100)
refs #8714

lib/db_ido/dbevents.cpp
lib/db_ido_mysql/idomysqlconnection.cpp
lib/db_ido_mysql/idomysqlconnection.hpp

index a763b65b5573a7344991163a0402d2a8a3675ca9..514a65531d7f0f41e93513b33a3c93427810d1dc 100644 (file)
@@ -117,8 +117,6 @@ void DbEvents::NextCheckChangedHandler(const Checkable::Ptr& checkable)
        else
                query1.WhereCriteria->Set("host_object_id", host);
 
-       query1.WhereCriteria->Set("instance_id", 0); /* DbConnection class fills in real ID */
-
        DbObject::OnQuery(query1);
 }
 
index dca7df260abc528fe339b20388f1d2203665bf70..7ed9b1d6eab21449503a3426b29a20794c806e19 100644 (file)
@@ -139,7 +139,7 @@ void IdoMysqlConnection::TxTimerHandler(void)
 void IdoMysqlConnection::NewTransaction(void)
 {
        m_QueryQueue.Enqueue(boost::bind(&IdoMysqlConnection::InternalNewTransaction, this), PriorityHigh);
-       m_QueryQueue.Enqueue(boost::bind(&IdoMysqlConnection::FinishAsyncQueries, this, true), PriorityHigh);
+       m_QueryQueue.Enqueue(boost::bind(&IdoMysqlConnection::FinishAsyncQueries, this), PriorityHigh);
 }
 
 void IdoMysqlConnection::InternalNewTransaction(void)
@@ -405,18 +405,10 @@ void IdoMysqlConnection::AsyncQuery(const String& query, const boost::function<v
        aq.Query = query;
        aq.Callback = callback;
        m_AsyncQueries.push_back(aq);
-
-       if (m_AsyncQueries.size() > 500)
-               FinishAsyncQueries(true);
-       else
-               m_QueryQueue.Enqueue(boost::bind(&IdoMysqlConnection::FinishAsyncQueries, this, false), PriorityLow);
 }
 
-void IdoMysqlConnection::FinishAsyncQueries(bool force)
+void IdoMysqlConnection::FinishAsyncQueries(void)
 {
-       if (m_AsyncQueries.size() < 10 && !force)
-               return;
-
        std::vector<IdoAsyncQuery> queries;
        m_AsyncQueries.swap(queries);
 
@@ -515,7 +507,7 @@ IdoMysqlResult IdoMysqlConnection::Query(const String& query)
        AssertOnWorkQueue();
 
        /* finish all async queries to maintain the right order for queries */
-       FinishAsyncQueries(true);
+       FinishAsyncQueries();
 
        Log(LogDebug, "IdoMysqlConnection")
            << "Query: " << query;
index 684c73b983c7142895fc33b16e39680f66d19afe..35c50ad0f90c956ffa325fa00b88e47fb81edb13 100644 (file)
@@ -90,7 +90,7 @@ private:
        void DiscardRows(const IdoMysqlResult& result);
 
        void AsyncQuery(const String& query, const IdoAsyncCallback& callback = IdoAsyncCallback());
-       void FinishAsyncQueries(bool force = false);
+       void FinishAsyncQueries(void);
 
        bool FieldToEscapedString(const String& key, const Value& value, Value *result);
        void InternalActivateObject(const DbObject::Ptr& dbobj);