Count the buckets, in two different date ranges (corresponding to the time periods when 44 was in beta, and current release)
$ node bucket-count.js -o 20151214-20160125-counts.json 2015-12-14:2016-01-25
$ node bucket-count.js -o 20160125-20160224-counts.json 2016-01-25:2016-02-24
Make a weights.json file for mapping release population to beta. We don't filter on release version anywhere here, since we care just about the population (though we could filter for more potential accuracy).
$ node weight.js 20160125-20160224-counts.json release 20151214-20160125-counts.json beta weights.json
Get some topcrash lists, using given buckets, channel, and explicit major release number. Crashes that don't fit into a bucket, or aren't the right channel or release are ignored.
$ node topcrash.js -b buckets.js -c release -r 44 2016-01-25:2016-02-24
104760.00 OOM | small
84619.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | mozilla::CondVar::Wait
63064.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | mozilla::net::nsHttpConnectionMgr::Shutdown
55651.00 F1398665248_____________________________
29249.00 hang | WaitForMultipleObjectsEx | RealMsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
27550.00 gfxContext::PushGroupAndCopyBackground
25567.00 js::AutoEnterOOMUnsafeRegion::crash
22794.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_ProcessNextEvent | mozilla::SharedThreadPool::SpinUntilEmpty
22711.00 hang | WaitForMultipleObjectsEx | MsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
21630.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | nsThread::Shutdown
21406.00 moz_abort | pages_commit
19136.00 mozalloc_abort | NS_DebugBreak | nsDebugImpl::Abort
18127.00 shutdownhang | _VEC_memset
16635.00 hang | WaitForSingleObjectEx | WaitForSingleObject | npjp2.dll@0xb966
16625.00 js::GCMarker::processMarkStackTop
15905.00 js::jit::EnterBaselineMethod
15224.00 js::ObjectGroup::sweep
15210.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_InvokeByIndex
12871.00 js::jit::AssemblerX86Shared::bind
10172.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_ProcessNextEvent | nsThread::Shutdown
9560.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_ProcessNextEvent | mozilla::dom::workers::RuntimeService::Cleanup
8812.00 hang | BaseGetNamedObjectDirectory | RealMsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
8324.00 strncpy | js::DecompileValueGenerator
7812.00 js::GCMarker::eagerlyMarkChildren
7711.00 hang | ConsoleCopyStringToBuffer
$ node topcrash.js -b buckets.js -c beta -r 44 2015-12-14:2016-01-25
63114.00 OOM | small
20921.00 gfxASurface::CairoStatus
20116.00 F1398665248_____________________________
18377.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | mozilla::CondVar::Wait
17952.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | mozilla::net::nsHttpConnectionMgr::Shutdown
14370.00 js::AutoEnterOOMUnsafeRegion::crash
10122.00 js::GCMarker::processMarkStackTop
9822.00 js::jit::EnterBaselineMethod
9438.00 moz_abort | pages_commit
9187.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | nsThread::Shutdown
8728.00 mozilla::a11y::DocAccessible::RemoveDependentIDsFor
8245.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_ProcessNextEvent | mozilla::SharedThreadPool::SpinUntilEmpty
8070.00 nsSocketOutputStream::Write
7807.00 js::ObjectGroup::sweep
7347.00 mozalloc_abort | NS_DebugBreak | nsDebugImpl::Abort
6853.00 shutdownhang | _VEC_memset
6478.00 mozilla::UniquePtr<T>::reset
5001.00 hang | WaitForMultipleObjectsEx | RealMsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
4837.00 js::GCMarker::eagerlyMarkChildren
4265.00 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_InvokeByIndex
4154.00 mozilla::a11y::DocAccessibleParent::Destroy
3847.00 mozilla::layers::ImageBridgeChild::EndTransaction
3704.00 js::GCMarker::lazilyMarkChildren
3673.00 hang | BaseGetNamedObjectDirectory | RealMsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
3637.00 mozilla::layers::ContentClientDoubleBuffered::FinalizeFrame
Get topcrashes again, with beta-as-release weights that we generated above applied.
$ node topcrash.js -b buckets.js -w weights.json -c beta -r 44 2015-12-14:2016-01-25
57495.68 OOM | small
20079.37 F1398665248_____________________________
19391.47 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | mozilla::CondVar::Wait
17694.03 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | mozilla::net::nsHttpConnectionMgr::Shutdown
17562.91 gfxASurface::CairoStatus
12929.47 js::AutoEnterOOMUnsafeRegion::crash
10915.56 moz_abort | pages_commit
9789.30 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | nsThread::Shutdown
9077.65 js::GCMarker::processMarkStackTop
9024.05 js::jit::EnterBaselineMethod
8863.65 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_ProcessNextEvent | mozilla::SharedThreadPool::SpinUntilEmpty
8651.10 mozilla::a11y::DocAccessible::RemoveDependentIDsFor
8077.44 mozalloc_abort | NS_DebugBreak | nsDebugImpl::Abort
7485.87 mozilla::UniquePtr<T>::reset
7111.51 js::jit::AssemblerX86Shared::bind
6935.64 js::ObjectGroup::sweep
6280.07 shutdownhang | _VEC_memset
5940.04 nsSocketOutputStream::Write
5810.14 hang | WaitForMultipleObjectsEx | RealMsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
4923.14 mozilla::layers::ImageBridgeChild::EndTransaction
4841.66 mozilla::dom::DeferredFinalizerImpl<T>::DeferredFinalize
4734.41 hang | WaitForMultipleObjectsEx | MsgWaitForMultipleObjectsEx | MsgWaitForMultipleObjects | F_1152915508___________________________________
4623.30 shutdownhang | WaitForSingleObjectEx | WaitForSingleObject | PR_WaitCondVar | nsThread::ProcessNextEvent | NS_InvokeByIndex
4425.71 js::GCMarker::eagerlyMarkChildren
4201.98 mozilla::a11y::DocAccessibleParent::Destroy