From 1b260ab37a271c3312c1d74d48c5c448bc91d487 Mon Sep 17 00:00:00 2001 From: Daniel Larimer Date: Thu, 30 Jul 2015 16:45:14 -0400 Subject: [PATCH] adding spam to detect bugs --- libraries/app/api.cpp | 19 ++++++++++++++++--- libraries/fc | 2 +- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/libraries/app/api.cpp b/libraries/app/api.cpp index f96c291b..79651410 100644 --- a/libraries/app/api.cpp +++ b/libraries/app/api.cpp @@ -708,6 +708,7 @@ namespace graphene { namespace app { result.push_back( aobj->owner ); break; } case impl_account_statistics_object_type:{ + elog( "stats object" ); const auto& aobj = dynamic_cast(obj); assert( aobj != nullptr ); result.push_back( aobj->owner ); @@ -801,6 +802,7 @@ namespace graphene { namespace app { map< pair, vector > market_broadcast_queue; for(auto id : ids) { + edump((id)(_account_subscriptions.size())); if(_subscriptions.find(id) != _subscriptions.end()) my_objects.push_back(id); @@ -811,6 +813,7 @@ namespace graphene { namespace app { if( obj ) { vector relevant = get_relevant_accounts( obj ); + edump(("relevant accounts")(relevant)(obj->id)); for( const auto& r : relevant ) { auto sub = _account_subscriptions.find(r); @@ -818,6 +821,8 @@ namespace graphene { namespace app { broadcast_queue[r].emplace_back(obj->to_variant()); } } + else + elog( "unable to find object ${id}", ("id",id) ); } if( _market_subscriptions.size() ) @@ -842,12 +847,20 @@ namespace graphene { namespace app { /// if a connection hangs then this could get backed up and result in /// a failure to exit cleanly. _broadcast_changes_complete = fc::async([=](){ + for( const auto& item : broadcast_queue ) + edump((item.second)); + for( const auto& item : broadcast_queue ) { edump( (item) ); - auto sub = _account_subscriptions.find(item.first); - if( sub != _account_subscriptions.end() ) - sub->second( fc::variant(item.second ) ); + try { + auto sub = _account_subscriptions.find(item.first); + if( sub != _account_subscriptions.end() ) + sub->second( fc::variant(item.second ) ); + } catch ( const fc::exception& e ) + { + edump((e.to_detail_string())); + } } for( const auto& item : market_broadcast_queue ) { diff --git a/libraries/fc b/libraries/fc index 088dadd1..d11b48a0 160000 --- a/libraries/fc +++ b/libraries/fc @@ -1 +1 @@ -Subproject commit 088dadd12481e75829b83c098f3bc36b7e296ca0 +Subproject commit d11b48a015e0c339cc20f739ef1f8a5b3c57b913