Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash in segments_util.cc #21052

Closed
SergeyZhukovsky opened this issue Feb 11, 2022 · 5 comments · Fixed by brave/brave-core#12241
Closed

Crash in segments_util.cc #21052

SergeyZhukovsky opened this issue Feb 11, 2022 · 5 comments · Fixed by brave/brave-core#12241
Assignees
Labels
crash feature/ads OS/Android Fixes related to Android browser functionality OS/Desktop priority/P2 A bad problem. We might uplift this to the next planned release. QA Pass - Android ARM QA Pass-Linux QA/Yes release/blocking release-notes/exclude

Comments

@SergeyZhukovsky
Copy link
Member

I see such crash stack on Android Play Store on a stable channel. Version is 1.35.101.

pid: 0, tid: 0 >>> com.brave.browser <<<
()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::__is_long() const  ../../buildtools/third_party/libc++/trunk/include/string:1445:39
  0000000001eac910  base::GUID::GUID(base::GUID const&)                                               ../../buildtools/third_party/libc++/trunk/include/string:1908:16
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  000000000381cc3c  ads::GetParentSegment(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/segments/segments_util.cc:77:10
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  000000000381ccbc  ads::GetParentSegments(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/segments/segments_util.cc:86:40
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000037c85dc  ads::ad_targeting::GetTopSegments(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, int, bool)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/ad_targeting/ad_targeting_util.cc:49:39
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000037c86f0  ads::ad_targeting::GetTopSegments(ads::ad_targeting::UserModelInfo const&, bool)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/ad_targeting/ad_targeting_util.cc:63:7
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000037f82d0  ads::ad_notifications::EligibleAdsV1::GetForParentSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/eligible_ads/ad_notifications/eligible_ad_notifications_v1.cc:108:32
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1::operator()(bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&) const  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/eligible_ads/ad_notifications/eligible_ad_notifications_v1.cc:94:11
  v------>  decltype(std::__1::forward<ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1&>(fp)(std::__1::forward<bool>(fp0), std::__1::forward<std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&>(fp0), std::__1::forward<std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&>(fp0))) std::__1::__invoke<ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1&, bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&>(ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1&, bool&&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)  ../../buildtools/third_party/libc++/trunk/include/type_traits:3956:1
  v------>  void std::__1::__invoke_void_return_wrapper<void, true>::__call<ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1&, bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&>(ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1&, bool&&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)  ../../buildtools/third_party/libc++/trunk/include/__functional_base:348:9
  v------>  std::__1::__function::__default_alloc_func<ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1, void (bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>::operator()(bool&&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)  ../../buildtools/third_party/libc++/trunk/include/functional:1615:12
  00000000037f9818  void std::__1::__function::__policy_invoker<void (bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>::__call_impl<std::__1::__function::__default_alloc_func<ads::ad_notifications::EligibleAdsV1::GetForParentChildSegments(ads::ad_targeting::UserModelInfo const&, std::__1::vector<ads::AdEventInfo, std::__1::allocator<ads::AdEventInfo> > const&, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)::$_1, void (bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)> >(std::__1::__function::__policy_storage const*, bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)  ../../buildtools/third_party/libc++/trunk/include/functional:2096:16
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000037f03ec  ads::database::table::CreativeAdNotifications::OnGetForSegments(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::function<void (bool, std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&, std::__1::vector<ads::CreativeAdNotificationInfo, std::__1::allocator<ads::CreativeAdNotificationInfo> > const&)>)  ../../brave/vendor/bat-native-ads/src/bat/ads/internal/database/tables/creative_ad_notifications_database_table.cc:0:0
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  decltype(*(std::__1::forward<ads::database::table::ConversionQueue*&>(fp0)).*fp(std::__1::forward<mojo::StructPtr<ads::mojom::DBCommandResponse> >(fp1), std::__1::forward<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&>(fp1), std::__1::forward<std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>(fp1))) std::__1::__invoke<void (ads::database::table::ConversionQueue::*&)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*&, mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&, void>(void (ads::database::table::ConversionQueue::*&)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*&, mojo::StructPtr<ads::mojom::DBCommandResponse>&&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&)  ../../buildtools/third_party/libc++/trunk/include/type_traits:3897:1
  v------>  std::__1::__bind_return<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&>, __is_valid_bind_return<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&> >::value>::type std::__1::__apply_functor<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >, 0ul, 1ul, 2ul, 3ul, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&> >(void (ads::database::table::ConversionQueue::*&)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >&, std::__1::__tuple_indices<0ul, 1ul, 2ul, 3ul>, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&>&&)  ../../buildtools/third_party/libc++/trunk/include/functional:2864:12
  v------>  std::__1::__bind_return<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&>, __is_valid_bind_return<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), std::__1::tuple<ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)> >, std::__1::tuple<mojo::StructPtr<ads::mojom::DBCommandResponse>&&> >::value>::type std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>::operator()<mojo::StructPtr<ads::mojom::DBCommandResponse> >(mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../buildtools/third_party/libc++/trunk/include/functional:2897:20
  v------>  decltype(std::__1::forward<std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>&>(fp)(std::__1::forward<mojo::StructPtr<ads::mojom::DBCommandResponse> >(fp0))) std::__1::__invoke<std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>&, mojo::StructPtr<ads::mojom::DBCommandResponse> >(std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>&, mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../buildtools/third_party/libc++/trunk/include/type_traits:3956:1
  v------>  void std::__1::__invoke_void_return_wrapper<void, true>::__call<std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>&, mojo::StructPtr<ads::mojom::DBCommandResponse> >(std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>&, mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../buildtools/third_party/libc++/trunk/include/__functional_base:348:9
  v------>  std::__1::__function::__default_alloc_func<std::__1::__bind<void (ads::database::table::ConversionQueue::*)(mojo::StructPtr<ads::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>), ads::database::table::ConversionQueue*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (bool, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::vector<ads::ConversionQueueItemInfo, std::__1::allocator<ads::ConversionQueueItemInfo> > const&)>&>, void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>::operator()(mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../buildtools/third_party/libc++/trunk/include/functional:1615:12
  00000000037eeaf0  void std::__1::__function::__policy_invoker<void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)>::__call_impl<std::__1::__function::__default_alloc_func<std::__1::__bind<void (ledger::database::DatabaseServerPublisherBanner::*)(mojo::StructPtr<ledger::mojom::DBCommandResponse>, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (mojo::StructPtr<ledger::mojom::PublisherBanner>)>), ledger::database::DatabaseServerPublisherBanner*, std::__1::placeholders::__ph<1> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::function<void (mojo::StructPtr<ledger::mojom::PublisherBanner>)>&>, void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)> >(std::__1::__function::__policy_storage const*, mojo::StructPtr<ledger::mojom::DBCommandResponse>&&)  ../../buildtools/third_party/libc++/trunk/include/functional:2096:16
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  std::__1::__function::__policy_func<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>::operator()(mojo::StructPtr<ads::mojom::DBCommandResponse>&&) const  ../../buildtools/third_party/libc++/trunk/include/functional:2228:16
  v------>  std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>::operator()(mojo::StructPtr<ads::mojom::DBCommandResponse>) const  ../../buildtools/third_party/libc++/trunk/include/functional:2567:12
  0000000006747e88  bat_ledger::OnRunDBTransaction(std::__1::function<void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ledger::mojom::DBCommandResponse>)  ../../brave/components/services/bat_ads/bat_ads_client_mojo_bridge.cc:246:3
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  void base::internal::FunctorTraits<void (*)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), void>::Invoke<void (*)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>, mojo::StructPtr<ads::mojom::DBCommandResponse> >(void (*&&)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>&&, mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../base/bind_internal.h:430:12
  v------>  void base::internal::InvokeHelper<false, void>::MakeItSo<void (*)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>, mojo::StructPtr<ads::mojom::DBCommandResponse> >(void (*&&)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>&&, mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../base/bind_internal.h:699:12
  v------>  void base::internal::Invoker<base::internal::BindState<void (*)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> >, void (mojo::StructPtr<ads::mojom::DBCommandResponse>)>::RunImpl<void (*)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::tuple<std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> >, 0ul>(void (*&&)(std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ads::mojom::DBCommandResponse>), std::__1::tuple<std::__1::function<void (mojo::StructPtr<ads::mojom::DBCommandResponse>)> >&&, std::__1::integer_sequence<unsigned long, 0ul>, mojo::StructPtr<ads::mojom::DBCommandResponse>&&)  ../../base/bind_internal.h:772:12
  0000000006748334  base::internal::Invoker<base::internal::BindState<void (*)(std::__1::function<void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)> const&, mojo::StructPtr<ledger::mojom::DBCommandResponse>), std::__1::function<void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)> >, void (mojo::StructPtr<ledger::mojom::DBCommandResponse>)>::RunOnce(base::internal::BindStateBase*, mojo::StructPtr<ledger::mojom::DBCommandResponse>&&)  ../../base/bind_internal.h:741:12
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  0000000001eac754  base::OnceCallback<void (subresource_redirect::RobotsRulesParser::CheckResult)>::Run(subresource_redirect::RobotsRulesParser::CheckResult) &&  ../../base/callback.h:142:12
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  000000000397f9ac  bat_ads::mojom::BatAdsClient_RunDBTransaction_ForwardToCallback::Accept(mojo::Message*)  gen/brave/components/services/bat_ads/public/interfaces/bat_ads.mojom.cc:12286:26
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*)             ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:895:23
  0000000003ca997c  mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:331:18
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                         FILE:LINE
  0000000003cac4fc  mojo::MessageDispatcher::Accept(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/message_dispatcher.cc:43:19
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                              FILE:LINE
  0000000003caa824  mojo::InterfaceEndpointClient::HandleIncomingMessage(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:657:20
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  0000000003caf0b0  mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::internal::MultiplexRouter::MessageWrapper*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SequencedTaskRunner*)  ../../mojo/public/cpp/bindings/lib/multiplex_router.cc:1104:42
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                 FILE:LINE
  0000000003caed84  mojo::internal::MultiplexRouter::Accept(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/multiplex_router.cc:724:7
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                         FILE:LINE
  0000000003cac4fc  mojo::MessageDispatcher::Accept(mojo::Message*)  ../../mojo/public/cpp/bindings/lib/message_dispatcher.cc:43:19
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                         FILE:LINE
  0000000003ca7500  mojo::Connector::DispatchMessage(mojo::Message)  ../../mojo/public/cpp/bindings/lib/connector.cc:556:49
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                     FILE:LINE
  0000000003ca7af8  mojo::Connector::ReadAllAvailableMessages()  ../../mojo/public/cpp/bindings/lib/connector.cc:614:14
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                              FILE:LINE
  v------>  base::OnceCallback<void ()>::Run() &&                 ../../base/callback.h:142:12
  0000000003a39e4c  base::TaskAnnotator::RunTaskImpl(base::PendingTask&)  ../../base/task/common/task_annotator.cc:135:32
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  void base::TaskAnnotator::RunTask<base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*)::$_0>(perfetto::StaticString, base::PendingTask&, base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*)::$_0&&)  ../../base/task/common/task_annotator.h:74:5
  v------>  base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWorkImpl(base::sequence_manager::LazyNow*)  ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:356:21
  0000000003a4d014  base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork()   ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:261:30
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  non-virtual thunk to base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::DoWork()  ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:0:0
  0000000003a0b410  base::MessagePumpDefault::Run(base::MessagePump::Delegate*)                       ../../base/message_loop/message_pump_default.cc:38:55
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  0000000003a4d630  base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta)  ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:468:12
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  non-virtual thunk to base::sequence_manager::internal::ThreadControllerWithMessagePumpImpl::Run(bool, base::TimeDelta)  ../../base/task/sequence_manager/thread_controller_with_message_pump_impl.cc:0:0
  0000000003a275d4  base::RunLoop::Run(base::Location const&)                                         ../../base/run_loop.cc:140:14
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                           FILE:LINE
  00000000036c5f24  content::UtilityMain(content::MainFunctionParams)  ../../content/utility/utility_main.cc:248:12
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  v------>  content::RunOtherNamedProcessTypeMain(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, content::MainFunctionParams, content::ContentMainDelegate*)  ../../content/app/content_main_runner_impl.cc:678:14
  00000000036c43cc  content::ContentMainRunnerImpl::Run()                                             ../../content/app/content_main_runner_impl.cc:1028:10
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                                          FILE:LINE
  00000000036c29f4  content::RunContentProcess(content::ContentMainParams, content::ContentMainRunner*)  ../../content/app/content_main.cc:398:36
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION                                                 FILE:LINE
  v------>  content::JNI_ContentMain_Start(_JNIEnv*, unsigned char)  ../../content/app/android/content_main_android.cc:51:10
  00000000036c35ec  Java_J_N_M1Y_1XVCN                                       gen/content/public/android/content_jni_headers/ContentMain_jni.h:34:10
()
-----------------------------------------------------

()
Stack Trace:
  RELADDR   FUNCTION         FILE:LINE
  00000000003385f8  offset 0x2ae000  /data/app/com.brave.browser-Mct89_DB64HsMb85rUyyOQ==/oat/arm64/base.odex
@SergeyZhukovsky SergeyZhukovsky added crash priority/P2 A bad problem. We might uplift this to the next planned release. feature/ads OS/Android Fixes related to Android browser functionality labels Feb 11, 2022
@kjozwiak kjozwiak added this to the 1.35.x - Release #3 milestone Feb 13, 2022
@kjozwiak
Copy link
Member

Labelled as release/blocking and moved it onto 1.35.x - Release #3 as we want to get crashes fixed as quickly as possible. @SergeyZhukovsky please remove if you feel differently re: getting this into 1.35.x - Release #3.

@kjozwiak
Copy link
Member

Will require 1.36.104 or higher. @srirambv @Uni-verse re: Android, we can basically just spot check Rewards/Ads/News as @btlechowski checked with @tmancey and confirmed the above can be checked on Desktop as it might be harder to check on Android.

@SergeyZhukovsky can verify that the above was fixed once we push out 1.36.x and he keeps an eye on the GPS console to crashes.

@srirambv
Copy link
Contributor

we can basically just spot check Rewards/Ads/News

Can this be marked as checked on Android when the manual pass is done?

@btlechowski
Copy link

Verification passed on

Brave 1.36.105 Chromium: 99.0.4844.45 (Official Build) (64-bit)
Revision edbc0b8343c7b10fddb0e1b4efb280b0f6e38cab-refs/branch-heads/4844@{#788}
OS Ubuntu 18.04 LTS

Verified test plan from brave/brave-core#12241 (comment)

Verified no crash with RU catalog

[14206:14206:0225/020417.382672:VERBOSE2:epsilon_greedy_bandit_model.cc(162)] Exploiting epsilon greedy bandit segments:
[14206:14206:0225/020417.382723:VERBOSE1:eligible_inline_content_ads_v1.cc(40)] Get eligible inline content ads:
[14206:14206:0225/020417.385011:VERBOSE1:eligible_inline_content_ads_v1.cc(160)] Get eligible ads for untargeted segment
[14206:14206:0225/020417.389001:VERBOSE1:eligible_inline_content_ads_v1.cc(176)] No eligible ads for untargeted segment
[14206:14206:0225/020417.389080:VERBOSE1:inline_content_ad_serving.cc(81)] Inline content ad not served: No eligible ads found
[14206:14206:0225/020534.091204:VERBOSE2:epsilon_greedy_bandit_model.cc(162)] Exploiting epsilon greedy bandit segments:
[14206:14206:0225/020534.091246:VERBOSE1:eligible_inline_content_ads_v1.cc(40)] Get eligible inline content ads:
[14206:14206:0225/020534.092230:VERBOSE1:eligible_inline_content_ads_v1.cc(160)] Get eligible ads for untargeted segment
[14206:14206:0225/020534.093307:VERBOSE1:eligible_inline_content_ads_v1.cc(176)] No eligible ads for untargeted segment
[14206:14206:0225/020534.093345:VERBOSE1:inline_content_ad_serving.cc(81)] Inline content ad not served: No eligible ads found

Verified ads were shown when notification ad is of technology & computing and no crash:

[15728:15728:0225/022231.519176:VERBOSE2:epsilon_greedy_bandit_model.cc(162)] Exploiting epsilon greedy bandit segments:
[15728:15728:0225/022231.519217:VERBOSE2:epsilon_greedy_bandit_model.cc(164)]   technology & computing
[15728:15728:0225/022231.519254:VERBOSE1:eligible_inline_content_ads_v1.cc(40)] Get eligible inline content ads:
[15728:15728:0225/022231.530211:VERBOSE1:eligible_inline_content_ads_v1.cc(86)] Get eligible ads for parent-child segments:
[15728:15728:0225/022231.530258:VERBOSE1:eligible_inline_content_ads_v1.cc(88)]   technology & computing
[15728:15728:0225/022231.534898:VERBOSE1:eligible_inline_content_ads_v1.cc(105)] No eligible ads for parent-child segments
[15728:15728:0225/022231.535008:VERBOSE1:eligible_inline_content_ads_v1.cc(127)] Get eligible ads for parent segments:
[15728:15728:0225/022231.535126:VERBOSE1:eligible_inline_content_ads_v1.cc(129)]   technology & computing
[15728:15728:0225/022231.537044:VERBOSE1:eligible_inline_content_ads_v1.cc(146)] No eligible ads for parent segments
[15728:15728:0225/022231.537093:VERBOSE1:eligible_inline_content_ads_v1.cc(160)] Get eligible ads for untargeted segment
[15728:15728:0225/022231.540455:VERBOSE1:eligible_inline_content_ads_v1.cc(176)] No eligible ads for untargeted segment
[15728:15728:0225/022231.540508:VERBOSE1:inline_content_ad_serving.cc(81)] Inline content ad not served: No eligible ads found
[19226:19226:0225/032933.375032:VERBOSE2:epsilon_greedy_bandit_model.cc(162)] Exploiting epsilon greedy bandit segments:
[19226:19226:0225/032933.375131:VERBOSE2:epsilon_greedy_bandit_model.cc(164)]   technology & computing
[19226:19226:0225/032933.375191:VERBOSE1:eligible_ad_notifications_v1.cc(39)] Get eligible ad notifications:
[19226:19226:0225/032933.376165:VERBOSE1:eligible_ad_notifications_v1.cc(80)] Get eligible ads for parent-child segments:
[19226:19226:0225/032933.376271:VERBOSE1:eligible_ad_notifications_v1.cc(82)]   technology & computing
[19226:19226:0225/032933.392219:VERBOSE2:ad_priority.h(32)] 8 ads with a priority of 1 in bucket 1
[19226:19226:0225/032933.392575:VERBOSE1:ad_notification_serving.cc(141)] Found 8 eligible ads
[19226:19226:0225/032933.392625:VERBOSE1:ad_notification_serving.cc(260)] Serving ad notification:
  uuid: 8a81b4ec-e9d7-46fc-a1f4-72a637e8d60e
  creativeInstanceId: 163074cf-8c33-44bf-bd15-fc3a9e257453
  creativeSetId: 4a02efce-1886-4e51-96dc-3c8752c6f014
  campaignId: bb2971c3-e557-4ff2-8cca-b9fe747e9c83
  advertiserId: fbc0298f-7698-43cc-b45b-ce7ebd9226f8
  segment: technology & computing
  title: Domain Money
  body: Seamless Investing, Built by Experts. Download Now.
  targetUrl: https://domainmoney.smart.link/657hia626?content=5


Verified ads were shown when notification ad is of technology & computing-software and no crash:

[21153:21153:0225/044130.639429:VERBOSE2:epsilon_greedy_bandit_model.cc(162)] Exploiting epsilon greedy bandit segments:
[21153:21153:0225/044130.639518:VERBOSE2:epsilon_greedy_bandit_model.cc(164)]   technology & computing
[21153:21153:0225/044130.639617:VERBOSE1:eligible_ad_notifications_v1.cc(39)] Get eligible ad notifications:
[21153:21153:0225/044130.640903:VERBOSE1:eligible_ad_notifications_v1.cc(80)] Get eligible ads for parent-child segments:
[21153:21153:0225/044130.640983:VERBOSE1:eligible_ad_notifications_v1.cc(82)]   technology & computing
[21153:21153:0225/044130.644008:VERBOSE2:ad_priority.h(32)] 8 ads with a priority of 1 in bucket 1
[21153:21153:0225/044130.644569:VERBOSE1:ad_notification_serving.cc(141)] Found 8 eligible ads
[21153:21153:0225/044130.644656:VERBOSE1:ad_notification_serving.cc(260)] Serving ad notification:
  uuid: ea94d9c8-eaca-4c4a-9bca-ba955303daf3
  creativeInstanceId: 70ecb62c-8d0e-4f38-973a-525cf72660e4
  creativeSetId: 4a02efce-1886-4e51-96dc-3c8752c6f014
  campaignId: bb2971c3-e557-4ff2-8cca-b9fe747e9c83
  advertiserId: fbc0298f-7698-43cc-b45b-ce7ebd9226f8
  segment: technology & computing
  title: Domain Money
  body: Crypto Serious, Stocks Serious, Money Serious. Download Now.
  targetUrl: https://domainmoney.smart.link/657hia626?content=8

@kjozwiak
Copy link
Member

kjozwiak commented Mar 1, 2022

After speaking with @btlechowski and as per #21052 (comment), this doesn't need to be verified on Android. However, I'll leave the OS/Android as the issue affected Android and will add QA/Yes as we verified that ads didn't regress. This way it will remove the above issue from our queries of issues that still need to be verified.

@kjozwiak kjozwiak added OS/Android Fixes related to Android browser functionality QA Pass - Android ARM and removed OS/Android Fixes related to Android browser functionality labels Mar 1, 2022
@tmancey tmancey added this to Ads Jun 10, 2024
@tmancey tmancey moved this to Done in Ads Jun 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
crash feature/ads OS/Android Fixes related to Android browser functionality OS/Desktop priority/P2 A bad problem. We might uplift this to the next planned release. QA Pass - Android ARM QA Pass-Linux QA/Yes release/blocking release-notes/exclude
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

6 participants