Multiple test Mailnews failures/timeouts: test_gloda_content_imap_offline.js, test_gloda_content_local.js, test_index_addressbook.js and many more

RESOLVED FIXED in Firefox 49

Status

()

RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: jorgk, Assigned: aleth)

Tracking

({regression})

Trunk
mozilla49
regression
Points:
---

Firefox Tracking Flags

(firefox49 fixed)

Details

Attachments

(3 attachments)

(Reporter)

Description

2 years ago
First seen on C-C on 2016-05-19 (not seen 2016-05-17):

TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_gloda_content_imap_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_gloda_content_local.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_addressbook.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_noun_mimetype.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_messages_imap_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_junk_local.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_messages_imap_online_to_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_junk_imap_online.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_junk_imap_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_bad_messages.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_corrupt_database.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_cleanup_msf_databases.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_folder_logic.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_fts3_tokenizer.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_compaction.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_msg_search.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_messages_local.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_messages_imap_online.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_index_sweep_folder.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_intl.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_migration.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_query_messages_imap_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_query_core.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_query_messages_imap_online.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_query_messages_imap_online_to_offline.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_query_messages_local.js | xpcshell return code: 0
TEST-UNEXPECTED-FAIL | mailnews/db/gloda/test/unit/test_startup_offline.js | xpcshell return code: 0 

Here a snippet from the log:

12:26:41     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_index_messages_imap_online_to_offline.js | took 109477ms
12:26:41     INFO -  TEST-START | mailnews/db/gloda/test/unit/test_query_messages_local.js
12:26:41     INFO -  Failed to remove directory: c:\users\cltbld\appdata\local\temp\xpc-plugins-ephhe5. Waiting.
12:26:42     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_index_junk_imap_online.js | took 112169ms
12:26:42     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_index_junk_imap_offline.js | took 112286ms
12:26:42     INFO -  mailnews/db/gloda/test/unit/test_gloda_content_local.js failed or timed out, will retry.
12:26:42     INFO -  Failed to remove directory: c:\users\cltbld\appdata\local\temp\xpc-plugins-85hund. Waiting.
12:26:42     INFO -  mailnews/db/gloda/test/unit/test_index_addressbook.js failed or timed out, will retry.
12:26:42     INFO -  mailnews/db/gloda/test/unit/test_noun_mimetype.js failed or timed out, will retry.
12:26:42     INFO -  Failed to remove directory: c:\users\cltbld\appdata\local\temp\xpc-plugins-ephhe5. Waiting.
12:26:42     INFO -  mailnews/db/gloda/test/unit/test_index_messages_imap_offline.js failed or timed out, will retry.
12:26:42     INFO -  mailnews/db/gloda/test/unit/test_index_junk_local.js failed or timed out, will retry.
12:26:43     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_cleanup_msf_databases.js | took 115085ms
12:26:43     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_corrupt_database.js | took 115085ms
12:26:43     INFO -  TEST-FAIL | mailnews/db/gloda/test/unit/test_fts3_tokenizer.js | took 115086ms
(Assignee)

Comment 1

2 years ago
Some ReferenceErrors too (which may be harmless, but should be fixed anyway to reduce noise)
ReferenceError: reference to undefined property aAttrDef.objectNounDef.contributeObjDependencies" {file: "resource:///modules/gloda/gloda.js" line: 1838}
ReferenceError: reference to undefined property ims.waitingForIndexingCompletion" {file: "resources/glodaTestHelper.js" line: 673}
(Assignee)

Comment 2

2 years ago
Created attachment 8754971 [details] [diff] [review]
Fix mailnews gloda test failures

This fixes the tests for me. But I don't understand why, or why this broke. Any ideas?
Attachment #8754971 - Flags: feedback?(mkmelin+mozilla)
(Assignee)

Updated

2 years ago
Assignee: nobody → aleth
Status: NEW → ASSIGNED
(Reporter)

Comment 3

2 years ago
That fixes the whole lot?? Incredible.
(Assignee)

Comment 5

2 years ago
Created attachment 8754984 [details] [diff] [review]
Alternative fix to show how strange this is
Really strange indeed! We're likely hitting some js engine bug, I doubt this is intended.
(Reporter)

Comment 7

2 years ago
Can't we just ask? I try.

Hi Jason, we're seeing some strange test failures in our xpcshell test suite for Thunderbird.

The errors go away when we apply either attachment 8754971 [details] [diff] [review] or attachment 8754984 [details] [diff] [review]. Somehow logical operators && and || behave strangely.

Do you know of any changes in JS in the last two to three days which could have caused this?
(Reporter)

Updated

2 years ago
Flags: needinfo?(jorendorff)
(Reporter)

Comment 8

2 years ago
(In reply to Magnus Melin from comment #6)
> Really strange indeed! We're likely hitting some js engine bug, I doubt this
> is intended.
Agreed, but why does this only break in the gloda test? I have a locally compiled version of TB in use and it works fine. I would expect it to fall apart if && and || have a problem ;-)
Yes, I think this has to be a JS engine bug. It's very surprising that this got through our test suite, though.

Of the stuff in that list, I think bug 1261826 is suspicious. It would help if you could bisect this. (If my hunch is correct, the bug does not appear in mozilla-central revision a7f37ab1e0c3, but does appear in mozilla-central revision 2e29695fee87.)

Detailed steps to reproduce will probably be necessary to get this fixed.
Flags: needinfo?(jorendorff)
> I have a locally compiled version of TB in use and it works fine.

Oh. Does this bug reproduce for anyone locally, or is it test servers only?
(Reporter)

Comment 11

2 years ago
My local build is based on rev c67dc1f9fab8 and includes 2e29695fee87. As far as I can see TB works fine. I will run the test locally.
(Reporter)

Comment 12

2 years ago
OK, I ran:
mozilla/mach xpcshell-test mailnews/db/gloda/test/unit/test_gloda_content_imap_offline.js

The test fails and I see as already reported in comment #1:
 0:04.41 LOG: Thread-1 INFO "CONSOLE_MESSAGE: (warn) [JavaScript Warning: "ReferenceError: reference to undefined proper
ty aAttrDef.objectNounDef.contributeObjDependencies" {file: "resource:///modules/gloda/gloda.js" line: 1838}]"
 0:04.42 LOG: Thread-1 ERROR Error console says [stackFrame ReferenceError: reference to undefined property aAttrDef.obj
ectNounDef.contributeObjDependencies]
(Reporter)

Comment 13

2 years ago
Jason, could one or your colleagues build Thunderbird and simply run the xpcshell test to reproduce the problem? Surely finding a bug in your JS engine and your test suite is worth this effort.
(Assignee)

Comment 14

2 years ago
(In reply to Jason Orendorff [:jorendorff] from comment #9)
> Of the stuff in that list, I think bug 1261826 is suspicious. It would help
> if you could bisect this. (If my hunch is correct, the bug does not appear
> in mozilla-central revision a7f37ab1e0c3, but does appear in mozilla-central
> revision 2e29695fee87.)

Your guess is correct, I checked with my local build and that indeed seems to be the regressing bug.
Blocks: 1261826
Keywords: regression
(Assignee)

Updated

2 years ago
Flags: needinfo?(nicolas.b.pierron)
(Assignee)

Updated

2 years ago
Component: General → JavaScript Engine
Product: Thunderbird → Core
(Assignee)

Updated

2 years ago
Attachment #8754971 - Flags: feedback?(mkmelin+mozilla)
The problem comes from the addition of JumpTarget opcode.  Reference error are produced when we are looking for a property name, without having a direct test following the property access. The difference comes form [1].

before, we had something like:

  if… b
 a:
  getprop
 b:
  ifeq

and now we have something like

  if… b
 a:
  jumptarget
  getprop
 b:
  jumptarget
  ifeq

This change should be fixed by the part 5 of Bug 1261826.  I will attach it here, and apply the nits from Bug 1261826.

[1] https://dxr.mozilla.org/mozilla-central/source/js/src/vm/NativeObject.cpp#1926-1929
Created attachment 8755540 [details] [diff] [review]
Skip jump target opcodes while looking for a JOF_DETECTING opcode.

This patch walk make the Detecting function ignore all the jump target
opcodes, such that we can focus on the next instruction.

This fixes the added test case. (and also move the test case from which this
is inspired to the basic directory instead of jaeger)
Attachment #8755540 - Flags: review?(jorendorff)
Attachment #8755540 - Flags: review?(jorendorff) → review+
(Reporter)

Updated

2 years ago
Flags: needinfo?(nicolas.b.pierron)

Comment 18

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/432400265fed
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
status-firefox49: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla49
You need to log in before you can comment on or make changes to this bug.