[mythtv-commits] Re: Ticket #551: blocking in ThreadedFileWriter
MythTV
mythtv at cvs.mythtv.org
Mon Nov 14 10:19:56 EST 2005
#551: blocking in ThreadedFileWriter
-----------------------+----------------------------------------------------
Reporter: anonymous | Owner: danielk
Type: defect | Status: assigned
Priority: critical | Milestone: 0.19
Component: mythtv | Version: head
Severity: medium | Resolution:
-----------------------+----------------------------------------------------
Comment (by anonymous):
This was a 4 minute run with the cycles increased. Blocking was going on
for all but the last 15 seconds. I cleared the recordedmarkup table (88MB
for MYD and 58MB for the MYI files), the people (3MB) and credits (2MB)
tables also prior to this run.
Is there a way to set when the schedular updates? Is there a DB table
that may be causing problems? What are the safe tables to reset without
losing any critical information?.. Would be nice if there was a "flush
information that's not critical to cause missed recordings so those of us
with year(s) of information can clean things up without starting a new DB"
Or maybe a "export recording schedules, music, video's, etc...
<COMPLETE PROFILE DUMP>
Counted CPU_CLK_UNHALTED events (Cycles outside of halt state) with a unit
mask of 0x00 (No unit mask) count 10000
samples % symbol name
786 16.0835 Scheduler::FindNextConflict(std::list<ProgramInfo*,
std::allocator<ProgramInfo*> >&, ProgramInfo*,
std::_List_iterator<ProgramInfo*, ProgramInfo*&, ProgramInfo**>&)
547 11.1930 Scheduler::AddNewRecords()
377 7.7143 void std::list<ProgramInfo*,
std::allocator<ProgramInfo*> >::merge<bool (*)(ProgramInfo*,
ProgramInfo*)>(std::list<ProgramInfo*, std::allocator<ProgramInfo*> >&,
bool (*)(ProgramInfo*, ProgramInfo*))
286 5.8523 std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >::_M_stringbuf_init(std::_Ios_Openmode)
225 4.6041 std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >::str() const
200 4.0925 comp_priority(ProgramInfo*, ProgramInfo*)
188 3.8469 std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >::overflow(int)
187 3.8265 void std::list<ProgramInfo*,
std::allocator<ProgramInfo*> >::sort<bool (*)(ProgramInfo*,
ProgramInfo*)>(bool (*)(ProgramInfo*, ProgramInfo*))
157 3.2126 anonymous symbol from section .plt
155 3.1717 Scheduler::MarkShowingsList(std::list<ProgramInfo*,
std::allocator<ProgramInfo*> >&, ProgramInfo*)
144 2.9466 std::basic_stringbuf<char, std::char_traits<char>,
std::allocator<char> >::_M_really_sync(unsigned int, unsigned int)
131 2.6806 comp_overlap(ProgramInfo*, ProgramInfo*)
115 2.3532 QMapPrivate<int, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::find(int const&) const
113 2.3123 char* std::string::_S_construct<char*>(char*, char*,
std::allocator<char> const&, std::forward_iterator_tag)
112 2.2918 comp_redundant(ProgramInfo*, ProgramInfo*)
109 2.2304 AutoExpire::FillDBOrdered(int)
101 2.0667 Scheduler::RunScheduler()
97 1.9849 QValueListPrivate<QString>::~QValueListPrivate()
85 1.7393 QValueListPrivate<QString>::QValueListPrivate()
67 1.3710 Scheduler::SchedNewRecords()
57 1.1664 Scheduler::BuildListMaps()
56 1.1459 std::basic_string<char, std::char_traits<char>,
std::allocator<char> >::basic_string<char*>(char*,
char*,std::allocator<char> const&)
51 1.0436 QMapPrivate<QString, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::find(QString const&) const
49 1.0027 Scheduler::PruneOverlaps()
45 0.9208 QMapPrivate<int, bool>::find(int const&) const
44 0.9003 QValueList<QString>::detachInternal()
43 0.8799 QValueListPrivate<QString>::at(unsigned int) const
41 0.8390
QValueListPrivate<QString>::insert(QValueListIterator<QString>, QString
const&)
36 0.7366
QValueListPrivate<QString>::QValueListPrivate(QValueListPrivate<QString>
const&)
34 0.6957 Scheduler::PruneRedundants()
29 0.5934 QMapPrivate<RecordingType, int>::find(RecordingType
const&) const
24 0.4911 QMap<int, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::operator[](int const&)
24 0.4911 std::list<ProgramInfo*, std::allocator<ProgramInfo*>
>::_M_create_node(ProgramInfo* const&)
23 0.4706 std::_Rb_tree<QString, QString, std::_Identity<QString>,
std::less<QString>, std::allocator<QString> >::find(QString const&) const
18 0.3683 std::list<ProgramInfo*, std::allocator<ProgramInfo*>
>::insert(std::_List_iterator<ProgramInfo*, ProgramInfo*&, ProgramInfo**>,
ProgramInfo* const&)
12 0.2455 AutoExpire::UpdateDontExpireSet()
7 0.1432 AutoExpire::Sleep(int)
6 0.1228 AutoExpire::IsInDontExpireSet(QString, QDateTime)
6 0.1228 QMap<RecordingType, int>::operator[](RecordingType
const&)
6 0.1228 QMapPrivate<QString, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::insertSingle(QString const&)
6 0.1228 QMapPrivate<int, bool>::clear(QMapNode<int, bool>*)
6 0.1228 QMapPrivate<int, bool>::insert(QMapNodeBase*,
QMapNodeBase*, int const&)
5 0.1023 std::_List_base<ProgramInfo*,
std::allocator<ProgramInfo*> >::__clear()
4 0.0818 QMapPrivate<int, bool>::insertSingle(int const&)
4 0.0818 QMapPrivate<int, jobqueueentry>::clear(QMapNode<int,
jobqueueentry>*)
4 0.0818 comp_recstart(ProgramInfo*, ProgramInfo*)
4 0.0818 std::list<ProgramInfo*, std::allocator<ProgramInfo*>
>::erase(std::_List_iterator<ProgramInfo*, ProgramInfo*&, ProgramInfo**>)
3 0.0614 HouseKeeper::wantToRun(QString const&, int, int, int)
3 0.0614 QMap<QString, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::operator[](QString const&)
3 0.0614 QMapPrivate<QString, QString>::find(QString const&)
const
3 0.0614 QMapPrivate<int, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::clear(QMapNode<int,
std::list<ProgramInfo*, std::allocator<ProgramInfo*> > >*)
3 0.0614 Scheduler::PruneOldRecords()
3 0.0614 std::list<ProgramInfo*, std::allocator<ProgramInfo*>
>::operator=(std::list<ProgramInfo*, std::allocator<ProgramInfo*> >
const&)
2 0.0409 AutoExpire::RunExpirer()
2 0.0409 HouseKeeper::RunHouseKeeping()
2 0.0409 MainServer::customEvent(QCustomEvent*)
2 0.0409 MainServer::qt_invoke(int, QUObject*)
2 0.0409 MythEvent::~MythEvent()
2 0.0409 PlaybackSock::UpRef()
2 0.0409 QMap<RecordingType, int>::insert(RecordingType const&,
int const&, bool)
2 0.0409 QMapIterator<QString, int>::inc()
2 0.0409 QMapPrivate<QString, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::clear(QMapNode<QString,
std::list<ProgramInfo*, std::allocator<ProgramInfo*> > >*)
2 0.0409 QString::~QString()
2 0.0409 jobqueueentry::jobqueueentry()
1 0.0205 AutoExpire::ExpireEpisodesOverMax()
1 0.0205 AutoExpire::SendDeleteMessages(unsigned int, unsigned
int, bool)
1 0.0205 EncoderLink::MatchesRecording(ProgramInfo const*)
1 0.0205 MainServer::DoHandleDeleteRecording(ProgramInfo*,
PlaybackSock*, bool)
1 0.0205 MainServer::deferredDeleteSlot()
1 0.0205 MainServer::staticMetaObject()
1 0.0205 QMap<QString, QString>::operator[](QString const&)
1 0.0205 QMap<QString, int>::operator[](QString const&)
1 0.0205 QMap<QString, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::insert(QString const&,
std::list<ProgramInfo*, std::allocator<ProgramInfo*> > const&, bool)
1 0.0205 QMapPrivate<QString, int>::clear()
1 0.0205 QMapPrivate<int, jobqueueentry>::clear()
1 0.0205 QMapPrivate<int, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::insert(QMapNodeBase*, QMapNodeBase*, int
const&)
1 0.0205 QMapPrivate<int, std::list<ProgramInfo*,
std::allocator<ProgramInfo*> > >::insertSingle(int const&)
1 0.0205 Scheduler::FillEncoderFreeSpaceCache()
1 0.0205 Scheduler::FillRecordList()
1 0.0205 Scheduler::MoveHigherRecords()
1 0.0205 Scheduler::PrintRec(ProgramInfo*, char const*)
1 0.0205 std::_Rb_tree<QString, QString, std::_Identity<QString>,
std::less<QString>, std::allocator<QString> >::_M_create_node(QString
const&)
1 0.0205 std::_Rb_tree<QString, QString, std::_Identity<QString>,
std::less<QString>, std::allocator<QString>
>::_M_erase(std::_Rb_tree_node<QString>*)
1 0.0205 std::_Rb_tree_rebalance(std::_Rb_tree_node_base*,
std::_Rb_tree_node_base*&)
--
Ticket URL: <http://cvs.mythtv.org/trac/ticket/551>
MythTV <http://www.mythtv.org/>
MythTV
More information about the mythtv-commits
mailing list