New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 594781 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Mar 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 2
Type: Bug



Sign in to add a comment

Dr. Memory errors in SQLite when accessing prop variants

Project Member Reported by reillyg@chromium.org, Mar 14 2016

Issue description

There is a family of new Dr. Memory errors in SQLite related to prop variants:

https://build.chromium.org/p/chromium.memory.fyi/builders/Windows%20Browser%20%28DrMemory%20full%29%20%281%29/builds/2862

UNINITIALIZED READ: reading register eax
# 0 chromium_sqlite3.dll!PSCreateMemoryPropertyStore                     +0x60b    (0x67d5c537 <chromium_sqlite3.dll+0xc537>)
# 1 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                       +0x20e4e  (0x67dd5ad0 <chromium_sqlite3.dll+0x85ad0>)
# 2 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                       +0x153e1  (0x67dca063 <chromium_sqlite3.dll+0x7a063>)
# 3 chromium_sqlite3.dll!PropVariantGetUInt32Elem                        +0x7bf0   (0x67d85f53 <chromium_sqlite3.dll+0x35f53>)
# 4 chromium_sqlite3.dll!Ordinal404                                      +0x431    (0x67dac999 <chromium_sqlite3.dll+0x5c999>)
# 5 chromium_sqlite3.dll!InitPropVariantFromUInt16Vector                 +0x4c7    (0x67daa6cf <chromium_sqlite3.dll+0x5a6cf>)
# 6 chromium_sqlite3.dll!PropVariantToUInt32WithDefault                  +0x4263   (0x67d64cf9 <chromium_sqlite3.dll+0x14cf9>)
# 7 chromium_sqlite3.dll!PropVariantToUInt32WithDefault                  +0x42b0   (0x67d64d46 <chromium_sqlite3.dll+0x14d46>)
# 8 chromium_sqlite3.dll!PropVariantToUInt32WithDefault                  +0x266    (0x67d60cfc <chromium_sqlite3.dll+0x10cfc>)
# 9 chromium_sqlite3.dll!PropVariantToUInt32WithDefault                  +0x3dce   (0x67d64864 <chromium_sqlite3.dll+0x14864>)
#10 chromium_sqlite3.dll!PSPropertyKeyFromString                         +0x64f1   (0x67d931ea <chromium_sqlite3.dll+0x431ea>)
#11 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                       +0x7937   (0x67dbc5b9 <chromium_sqlite3.dll+0x6c5b9>)
#12 chromium_sqlite3.dll!VariantToStringArrayAlloc                       +0x4f     (0x67db4675 <chromium_sqlite3.dll+0x64675>)
#13 chromium_sqlite3.dll!StgDeserializePropVariant                       +0x283    (0x67d5f98b <chromium_sqlite3.dll+0xf98b>)
#14 sql.dll!sql::Connection::ExecuteAndReturnErrorCode                    [sql\connection.cc:1383]
#15 sql.dll!sql::Connection::Execute                                      [sql\connection.cc:1420]
#16 autofill::AutofillTable::InitServerAddressMetadataTable               [components\autofill\core\browser\webdata\autofill_table.cc:1829]
#17 autofill::AutofillTable::CreateTablesIfNecessary                      [components\autofill\core\browser\webdata\autofill_table.cc:411]
#18 webdata_common.dll!WebDatabase::Init                                  [components\webdata\common\web_database.cc:127]
#19 webdata_common.dll!WebDatabaseBackend::LoadDatabaseIfNecessary        [components\webdata\common\web_database_backend.cc:54]
#20 webdata_common.dll!WebDatabaseBackend::InitDatabase                   [components\webdata\common\web_database_backend.cc:36]
#21 base.dll!base::debug::TaskAnnotator::RunTask                          [base\debug\task_annotator.cc:51]
#22 base.dll!base::MessageLoop::RunTask                                   [base\message_loop\message_loop.cc:476]
#23 base.dll!base::MessageLoop::DeferOrRunPendingTask                     [base\message_loop\message_loop.cc:485]
#24 base.dll!base::MessageLoop::DoWork                                    [base\message_loop\message_loop.cc:597]
#25 base.dll!base::MessagePumpDefault::Run                                [base\message_loop\message_pump_default.cc:33]
#26 base.dll!base::MessageLoop::RunHandler                                [base\message_loop\message_loop.cc:440]
#27 base.dll!base::MessageLoop::Run                                       [base\message_loop\message_loop.cc:293]
#28 base.dll!base::Thread::Run                                            [base\threading\thread.cc:202]
#29 content.dll!content::BrowserThreadImpl::DBThreadRun                   [content\browser\browser_thread_impl.cc:181]
#30 content.dll!content::BrowserThreadImpl::Run                           [content\browser\browser_thread_impl.cc:241]
#31 base.dll!base::Thread::ThreadMain                                     [base\threading\thread.cc:254]
#32 base.dll!base::`anonymous namespace'::ThreadFunc                      [base\threading\platform_thread_win.cc:84]
#33 KERNEL32.dll!BaseThreadInitThunk                                     +0x11     (0x75b6337a <KERNEL32.dll+0x1337a>)
Note: @0:01:07.660 in thread 3912
Note: instruction: movzx  0x67df1873(%eax) -> %eax
The report came from the `MimeHandlerViewTest.PostMessageW` test.

UNINITIALIZED READ: reading register eax
# 0 chromium_sqlite3.dll!PSCreateMemoryPropertyStore        +0x60b    (0x67d5c537 <chromium_sqlite3.dll+0xc537>)
# 1 chromium_sqlite3.dll!VariantToDoubleArrayAlloc          +0x20e4e  (0x67dd5ad0 <chromium_sqlite3.dll+0x85ad0>)
# 2 chromium_sqlite3.dll!PropVariantGetUInt32Elem           +0x87d1   (0x67d86b34 <chromium_sqlite3.dll+0x36b34>)
# 3 chromium_sqlite3.dll!PropVariantGetUInt32Elem           +0x9237   (0x67d8759a <chromium_sqlite3.dll+0x3759a>)
# 4 chromium_sqlite3.dll!PropVariantGetUInt32Elem           +0x60ef   (0x67d84452 <chromium_sqlite3.dll+0x34452>)
# 5 chromium_sqlite3.dll!PSPropertyKeyFromString            +0x5c7a   (0x67d92973 <chromium_sqlite3.dll+0x42973>)
# 6 chromium_sqlite3.dll!VariantToDoubleArrayAlloc          +0x6101   (0x67dbad83 <chromium_sqlite3.dll+0x6ad83>)
# 7 chromium_sqlite3.dll!VariantToStringArrayAlloc          +0x4f     (0x67db4675 <chromium_sqlite3.dll+0x64675>)
# 8 chromium_sqlite3.dll!StgDeserializePropVariant          +0x283    (0x67d5f98b <chromium_sqlite3.dll+0xf98b>)
# 9 sql.dll!sql::Connection::ExecuteAndReturnErrorCode       [sql\connection.cc:1383]
#10 sql.dll!sql::Connection::Execute                         [sql\connection.cc:1420]
#11 history::InMemoryDatabase::InitDB                        [components\history\core\browser\in_memory_database.cc:32]
#12 history::InMemoryDatabase::InitFromDisk                  [components\history\core\browser\in_memory_database.cc:66]
#13 history::InMemoryHistoryBackend::Init                    [components\history\core\browser\in_memory_history_backend.cc:28]
#14 history::HistoryBackend::InitImpl                        [components\history\core\browser\history_backend.cc:683]
#15 history::HistoryBackend::Init                            [components\history\core\browser\history_backend.cc:250]
#16 base::internal::Invoker<>::Run                           [base\bind_internal.h:352]
#17 base.dll!base::debug::TaskAnnotator::RunTask             [base\debug\task_annotator.cc:51]
#18 base.dll!base::MessageLoop::RunTask                      [base\message_loop\message_loop.cc:476]
#19 base.dll!base::MessageLoop::DeferOrRunPendingTask        [base\message_loop\message_loop.cc:485]
#20 base.dll!base::MessageLoop::DoWork                       [base\message_loop\message_loop.cc:597]
#21 base.dll!base::MessagePumpDefault::Run                   [base\message_loop\message_pump_default.cc:33]
#22 base.dll!base::MessageLoop::RunHandler                   [base\message_loop\message_loop.cc:440]
#23 base.dll!base::MessageLoop::Run                          [base\message_loop\message_loop.cc:293]
#24 base.dll!base::Thread::Run                               [base\threading\thread.cc:202]
#25 base.dll!base::Thread::ThreadMain                        [base\threading\thread.cc:254]
#26 base.dll!base::`anonymous namespace'::ThreadFunc         [base\threading\platform_thread_win.cc:84]
#27 KERNEL32.dll!BaseThreadInitThunk                        +0x11     (0x75b6337a <KERNEL32.dll+0x1337a>)
Note: @0:01:07.882 in thread 248
Note: instruction: movzx  0x67df1873(%eax) -> %eax
The report came from the `MimeHandlerViewTest.PostMessageW` test.

UNINITIALIZED READ: reading register eax
# 0 chromium_sqlite3.dll!PSCreateMemoryPropertyStore                          +0x60b    (0x67d5c537 <chromium_sqlite3.dll+0xc537>)
# 1 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                            +0x1f9fd  (0x67dd467f <chromium_sqlite3.dll+0x8467f>)
# 2 chromium_sqlite3.dll!DllGetClassObject                                    +0x12ad   (0x67d5abf7 <chromium_sqlite3.dll+0xabf7>)
# 3 chromium_sqlite3.dll!PropVariantGetUInt32Elem                             +0x76a8   (0x67d85a0b <chromium_sqlite3.dll+0x35a0b>)
# 4 chromium_sqlite3.dll!PropVariantGetUInt32Elem                             +0x6bf3   (0x67d84f56 <chromium_sqlite3.dll+0x34f56>)
# 5 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                            +0x14f47  (0x67dc9bc9 <chromium_sqlite3.dll+0x79bc9>)
# 6 chromium_sqlite3.dll!PropVariantGetUInt32Elem                             +0x2830   (0x67d80b93 <chromium_sqlite3.dll+0x30b93>)
# 7 chromium_sqlite3.dll!PSPropertyKeyFromString                              +0x7017   (0x67d93d10 <chromium_sqlite3.dll+0x43d10>)
# 8 chromium_sqlite3.dll!VariantToDoubleArrayAlloc                            +0x75a3   (0x67dbc225 <chromium_sqlite3.dll+0x6c225>)
# 9 chromium_sqlite3.dll!VariantToStringArrayAlloc                            +0x4f     (0x67db4675 <chromium_sqlite3.dll+0x64675>)
#10 chromium_sqlite3.dll!StgDeserializePropVariant                            +0x283    (0x67d5f98b <chromium_sqlite3.dll+0xf98b>)
#11 sql.dll!sql::Statement::StepInternal                                       [sql\statement.cc:72]
#12 sql.dll!sql::Statement::Run                                                [sql\statement.cc:89]
#13 sql.dll!sql::MetaTable::SetMmapStatus                                      [sql\meta_table.cc:96]
#14 sql.dll!sql::MetaTable::Init                                               [sql\meta_table.cc:168]
#15 content.dll!net::SQLitePersistentCookieStore::Backend::EnsureDatabaseVersion [net\extras\sqlite\sqlite_persistent_cookie_store.cc:810]
#16 content.dll!net::SQLitePersistentCookieStore::Backend::InitializeDatabase  [net\extras\sqlite\sqlite_persistent_cookie_store.cc:633]
#17 content.dll!net::SQLitePersistentCookieStore::Backend::LoadAndNotifyInBackground [net\extras\sqlite\sqlite_persistent_cookie_store.cc:476]
#18 content.dll!base::internal::Invoker<>::Run                                 [base\bind_internal.h:352]
#19 base.dll!base::SequencedWorkerPool::Inner::ThreadLoop                      [base\threading\sequenced_worker_pool.cc:834]
#20 base.dll!base::SequencedWorkerPool::Worker::Run                            [base\threading\sequenced_worker_pool.cc:535]
#21 base.dll!base::SimpleThread::ThreadMain                                    [base\threading\simple_thread.cc:66]
#22 base.dll!base::`anonymous namespace'::ThreadFunc                           [base\threading\platform_thread_win.cc:84]
#23 KERNEL32.dll!BaseThreadInitThunk                                          +0x11     (0x75b6337a <KERNEL32.dll+0x1337a>)
Note: @0:01:46.899 in thread 2948
Note: instruction: movzx  0x67df1873(%eax) -> %eax
The report came from the `MimeHandlerViewTest.PostMessageW` test.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/56047cef021402a70701ca7c81897db542be731d

commit 56047cef021402a70701ca7c81897db542be731d
Author: reillyg <reillyg@chromium.org>
Date: Mon Mar 14 22:57:38 2016

Add suppressions for remaining SQLite issues.

BUG= 594781 , 594785 
TBR=zhaoqin@chromium.org
NOTRY=true

Review URL: https://codereview.chromium.org/1802143002

Cr-Commit-Position: refs/heads/master@{#381104}

[modify] https://crrev.com/56047cef021402a70701ca7c81897db542be731d/tools/valgrind/drmemory/suppressions_full.txt

Comment 2 by sh...@chromium.org, Mar 21 2016

Is this still live, or is it part of the overall group of DrMemory issues?

In the section of the backtrace attributed to chromium_sqlite3.dll!, none of the symbols right of the ! are SQLite symbols.  Not sure why that would be, as we compile our own sqlite3.c (so in theory it should be the same as sql.dll or base.dll, etc).

Comment 3 by sh...@chromium.org, Mar 21 2016

Also, I don't see bug_594781a/b or bug_59785 listed in the suppressions where I'd expect it (OP had in browser_tests, so I looked in the same tests for a recent run on same builder).
Status: Fixed (was: Untriaged)
These were removed in r382222.

Sign in to add a comment