Bug 167622 - [GTK] Performance test IndexedDB/index-get.html deadlocks / timeouts on the GTK+ perf bot.
Summary: [GTK] Performance test IndexedDB/index-get.html deadlocks / timeouts on the G...
Status: NEW
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-01-30 17:41 PST by Carlos Alberto Lopez Perez
Modified: 2017-01-31 07:35 PST (History)
4 users (show)

See Also:


Attachments
Backtrace from the WebProcess when it has deadlocked (16.25 KB, text/plain)
2017-01-30 17:42 PST, Carlos Alberto Lopez Perez
no flags Details
Backtrace from the DatabaseProcess when it has deadlocked (13.91 KB, text/plain)
2017-01-30 17:42 PST, Carlos Alberto Lopez Perez
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Carlos Alberto Lopez Perez 2017-01-30 17:41:11 PST
The test IndexedDB/index-get.html timeouts on the GTK+ perf bot since it was added on r209765 <http://trac.webkit.org/r209765>.

The test however works fine on my development machine.

The only difference I can think of that may explain this is that the GTK+ perf bot has 8GB of RAM, my dev machine 16GB.

However, there are no signs of the machine running out of memory or the Linux Kernel OOM killer being triggered.

It seems that the test is deadlocking. As soon as it is started on the GTK+ perf bot, the Web and Database process stop using CPU time and remains in that state forever.

I have attached a GDB process to the Web and Database process and dumped the stack trace. I'm attaching the traces here.

I also tried this patch on the GTK+ perf bot. With it the test works as expected (no longer timeouts):

diff --git a/PerformanceTests/IndexedDB/index-get.html b/PerformanceTests/IndexedDB/index-get.html
index 89e52673a85..e10aa888fd3 100644
--- a/PerformanceTests/IndexedDB/index-get.html
+++ b/PerformanceTests/IndexedDB/index-get.html
@@ -36,7 +36,7 @@ function nextStep()
     testGenerator.next();
 }
 
-var numberOfEntries = 5000;
+var numberOfEntries = 2000;
 
 function *runIteration()
 {
Comment 1 Carlos Alberto Lopez Perez 2017-01-30 17:42:12 PST
Created attachment 300169 [details]
Backtrace from the WebProcess when it has deadlocked
Comment 2 Carlos Alberto Lopez Perez 2017-01-30 17:42:32 PST
Created attachment 300170 [details]
Backtrace from the DatabaseProcess when it has deadlocked
Comment 3 Carlos Alberto Lopez Perez 2017-01-31 07:35:50 PST
This test was skipped for the GTK+ Perf bot in https://trac.webkit.org/changeset/211430/trunk/PerformanceTests/Skipped