Status: Unconfirmed
Owner: ----
Labels: Type-Bug Pri-2 OS-All Area-Misc

New issue 20472 by patrick.horn: Assertion at text_database_manager.cc(295)  
opening two of the same page at the same time
http://code.google.com/p/chromium/issues/detail?id=20472

Chrome Version       : Chromium 4.0.204.0 (Developer Build 24668)
(64-bit Linux version!)

URLs (if applicable) : http://news.google.com/ http://images.google.com/
Other browsers tested: Firefox 3.0
   Add OK or FAIL after other browsers where you have tested this issue:
      Safari 4:
   Firefox 3.x: OK
          IE 7:
          IE 8:
What steps will reproduce the problem?
1. Visit http://images.google.com
2. Clear history
3. Browse back and forth clicking Images and News links.
4. Open or close a tab containing News at the same time News is already
opening.

What is the expected result?

Chromium loads each page, even if there are two requests to open the same
page at once.

I ran into this with a page that opened the same URL twice in two separate
IFrames--I suspect it was probably recently broken or someone would have
reported this already since you don't have to do anything tricky to trigger
this assertion.

What happens instead?

Gets to a NOT_REACHED in the text_database_manager.cc
[30973:30992:31577304225:FATAL:chrome/browser/history/text_database_manager.cc(295)]
Check failed: false. We should always have found a visit when given an ID.

Please provide any additional information below. Attach a screenshot if
possible.

Stacktrace:
#0  DebugUtil::BreakDebugger () at base/debug_util_posix.cc:116
No locals.
#1  0x000000000210ae46 in ~LogMessage (this=0x7fb203750340) at
base/logging.cc:535
         str_newline = {static npos = 18446744073709551615, _M_dataplus =
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data
fields>}, <No data fields>},
     _M_p = 0x7fb204147748
"[31892:31913:31727017971:FATAL:chrome/browser/history/text_database_manager.cc(295)]
Check failed: false. We should always have found a visit when given an  
ID.\n"}}
#2  0x00000000019d700f in history::TextDatabaseManager::AddPageData
(this=0x7fb20403b790, u...@0x7fb204140e10, url_id=5, visit_id=7, visit_time=
       {static kMillisecondsPerSecond = 1000, static
kMicrosecondsPerMillisecond = 1000, static kMicrosecondsPerSecond =
1000000, static kMicrosecondsPerMinute = 60000000, static
kMicrosecondsPerHour = -694967296, static kMicrosecondsPerDay =
86400000000, static kMicrosecondsPerWeek = <optimized out>, static
kNanosecondsPerMicrosecond = 1000, static kNanosecondsPerSecond =
<optimized out>, static kWindowsEpochDeltaMicroseconds = 11644473600000000,
static kTimeTToMicrosecondsOffset = 11644473600000000, us_ =
12895910270701632}, tit...@0x7fb204140e80, bo...@0x7fb204140e88)
     at chrome/browser/history/text_database_manager.cc:295
         db = (history::TextDatabase *) 0x7fb20413fb80
         beginning_time = {ticks_ = 31727017801}
         visits = {<std::_Vector_base<history::VisitRow,
std::allocator<history::VisitRow> >> = {
     _M_impl = {<std::allocator<history::VisitRow>> =
{<__gnu_cxx::new_allocator<history::VisitRow>> = {<No data fields>}, <No
data fields>}, _M_start = 0x0, _M_finish = 0x0,
       _M_end_of_storage = 0x0}}, <No data fields>}
         our_visit_row_index = 0
         url_str = {static npos = 18446744073709551615, _M_dataplus =
{<std::allocator<char>> = {<__gnu_cxx::new_allocator<char>> = {<No data
fields>}, <No data fields>},
     _M_p = 0x7fb203750530 "\200�023\004�\177"}}
         success = false
         counter = {_vptr.Histogram = 0x3ee4e90, static kSampleType_MAX =
2147483647, static kHexRangePrintingFlag = -32768, histogram_name_ =
{static npos = 18446744073709551615,
     _M_dataplus = {<std::allocator<char>> =
{<__gnu_cxx::new_allocator<char>> = {<No data fields>}, <No data fields>},
_M_p = 0x7fb20409f718 "History.AddFTSData"}}, declared_min_ = 1,
   declared_max_ = 10000, bucket_count_ = 50, flags_ = 0, ranges_ =
{<std::_Vector_base<int, std::allocator<int> >> = {
       _M_impl = {<std::allocator<int>> = {<__gnu_cxx::new_allocator<int>> =
{<No data fields>}, <No data fields>}, _M_start = 0x7fb2040a3df0, _M_finish
= 0x7fb2040a3ebc,
         _M_end_of_storage = 0x7fb2040a3ebc}}, <No data fields>}, sample_ =
{counts_ = {<std::_Vector_base<int, std::allocator<int> >> = {
         _M_impl = {<std::allocator<int>> = {<__gnu_cxx::new_allocator<int>>
= {<No data fields>}, <No data fields>}, _M_start = 0x7fb2040a8d90,
_M_finish = 0x7fb2040a8e58,
           _M_end_of_storage = 0x7fb2040a8e58}}, <No data fields>}, sum_ =
72, square_sum_ = 5042}, registered_ = true}
#3  0x00000000019d731d in
history::TextDatabaseManager::FlushOldChangesForTime (this=0x7fb20403b790,
now={ticks_ = 31725820201}) at
chrome/browser/history/text_database_manager.cc:541
         i = {<std::iterator<std::bidirectional_iterator_tag,
std::pair<GURL, history::TextDatabaseManager::PageInfo>, long int,
std::pair<GURL, history::TextDatabaseManager::PageInfo>*, std::pair<GURL,
history::TextDatabaseManager::PageInfo>&>> = {<No data fields>}, current =
{_M_node = 0x7fb20403b7c8}}
#4  0x00000000019d73dd in history::TextDatabaseManager::FlushOldChanges
(this=0x7fb20403b790) at chrome/browser/history/text_database_manager.cc:532
No locals.
#5  0x00000000019d99d5 in DispatchToMethod<history::TextDatabaseManager,
void (history::TextDatabaseManager::*)()> (obj=0x7fb20403b790,
     method=0x19d73c0 <history::TextDatabaseManager::FlushOldChanges()>,
a...@0x7fb2040d8180) at ./base/tuple.h:412
No locals.
#6  0x00000000019d9a05 in
ScopedRunnableMethodFactory<history::TextDatabaseManager>::RunnableMethod<void
(history::TextDatabaseManager::*)(), Tuple0>::Run (this=0x7fb2040d8150) at
./base/task.h:197
No locals.
#7  0x00000000019d9a31 in
ScopedTaskFactory<ScopedRunnableMethodFactory<history::TextDatabaseManager>::RunnableMethod<void
(history::TextDatabaseManager::*)(), Tuple0> >::TaskWrapper::Run (
     this=0x7fb2040d8150) at ./base/task.h:92
No locals.
#8  0x000000000210d2c9 in MessageLoop::RunTask (this=0x7fb203750e90,
task=0x7fb2040d8150) at base/message_loop.cc:314
No locals.
#9  0x000000000210d908 in MessageLoop::DeferOrRunPendingTask
(this=0x7fb203750e90, pending_ta...@0x7fb2037508c0) at  
base/message_loop.cc:322
No locals.
#10 0x000000000210da4a in MessageLoop::DoDelayedWork (this=0x7fb203750e90,
next_delayed_work_time=0x58a1688) at base/message_loop.cc:456
         pending_task = {task = 0x7fb2040d8150, delayed_run_time = {static
kMillisecondsPerSecond = 1000, static kMicrosecondsPerMillisecond = 1000,
static kMicrosecondsPerSecond = 1000000,
     static kMicrosecondsPerMinute = 60000000, static kMicrosecondsPerHour =
-694967296, static kMicrosecondsPerDay = 86400000000, static
kMicrosecondsPerWeek = <optimized out>,
     static kNanosecondsPerMicrosecond = 1000, static kNanosecondsPerSecond
= <optimized out>, static kWindowsEpochDeltaMicroseconds =  
11644473600000000,
     static kTimeTToMicrosecondsOffset = 11644473600000000, us_ =
12895910298289685}, sequence_num = 7, nestable = true}
#11 0x0000000002115d17 in base::MessagePumpDefault::Run (this=0x58a1670,
delegate=0x7fb203750e90) at base/message_pump_default.cc:27
         autorelease_pool = {<No data fields>}
         did_work = false
#12 0x000000000210e223 in MessageLoop::RunInternal (this=0x7fb203750e90) at
base/message_loop.cc:199
No locals.
#13 0x000000000210e243 in MessageLoop::RunHandler (this=0x7fb203750e90) at
base/message_loop.cc:181
No locals.

(snipped MessageLoop::Run and below)

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--~--~---------~--~----~------------~-------~--~----~
Automated mail from issue updates at http://crbug.com/
Subscription options: http://groups.google.com/group/chromium-bugs
-~----------~----~----~----~------~----~------~--~---

Reply via email to