2012-02-15 131 views
6

我遇到隨機崩潰我的應用程序,堆棧跟蹤不包含任何代碼的我,我掙扎着要弄清楚什麼導致了它。堆棧跟蹤總是相同的:崩潰的NSURLConnection的線程

#0 0x00007fff903610e9 in __cxa_throw() 
#1 0x00007fff922199c2 in Security::UnixError::throwMe(int)() 
#2 0x00007fff920b068d in Security::safeCopyFile(char const*, unsigned int, char const*, unsigned short)() 
#3 0x00007fff920af765 in Security::MDSSession::updateDataBases()() 
#4 0x00007fff9211318b in Security::MDSSession::DbOpen(char const*, cssm_net_address const*, unsigned int, Security::AccessCredentials const*, void const*, long&)() 
#5 0x00007fff9211300b in mds_DbOpen(long, char const*, cssm_net_address const*, unsigned int, cssm_access_credentials const*, void const*, long*)() 
#6 0x00007fff920aebee in Security::MDSClient::Directory::cdsa() const() 
#7 0x00007fff922013ee in Security::MDSClient::Directory::dlGetFirst(cssm_query const&, cssm_db_record_attribute_data&, cssm_data*, cssm_db_unique_record*&)() 
#8 0x00007fff920ae6db in Security::CssmClient::Table<Security::MDSClient::Common>::startQuery(Security::CssmQuery const&, bool)() 
#9 0x00007fff920ae1e9 in Security::CssmClient::Table<Security::MDSClient::Common>::find(Security::CssmClient::Query const&)() 
#10 0x00007fff920ae140 in Security::CssmClient::Table<Security::MDSClient::Common>::fetch(Security::CssmClient::Query const&, int)() 
#11 0x00007fff920ad71f in MdsComponent::MdsComponent(Security::Guid const&)() 
#12 0x00007fff920ad29b in CssmManager::loadModule(Security::Guid const&, unsigned int, Security::ModuleCallback const&)() 
#13 0x00007fff920ad1a2 in CSSM_ModuleLoad() 
#14 0x00007fff92138db2 in loadModule() 
#15 0x00007fff921093c1 in attachToModules() 
#16 0x00007fff9210931d in attachToAll() 
#17 0x00007fff92109253 in SSLNewContext() 
#18 0x00007fff95016162 in SocketStream::securitySetInfo_NoLock(__CFDictionary const*)() 
#19 0x00007fff950159fd in SocketStream::setProperty(void const*, __CFString const*, void const*)() 
#20 0x00007fff9501552c in virtual thunk to SocketStream::setProperty(void const*, __CFString const*, void const*)() 
#21 0x00007fff950160db in ReadStreamCallbacks::_setProperty(__CFReadStream*, __CFString const*, void const*, void*)() 
#22 0x00007fff8f4ef604 in CFReadStreamSetProperty() 
#23 0x00007fff9501457e in HTTPNetConnection::createStreams(__CFWriteStream**, __CFReadStream**)() 
#24 0x00007fff95014426 in NetConnection::initialize(NetConnection::Options&)() 
#25 0x00007fff95014354 in HTTPNetConnection::initialize(__CFString const*, int, unsigned int, __CFDictionary const*, NetConnection::Options&)() 
#26 0x00007fff950142ab in HTTPNetConnection_NoAuth::initialize(__CFString const*, int, unsigned int, __CFDictionary const*, NetConnection::Options&)() 
#27 0x00007fff950141d4 in CFHTTPConnectionCreate() 
#28 0x00007fff95014089 in HTTPConnectionCacheEntry::findOrCreateEmptyUnauthenticatedNetConnection(HTTPProtocol*, __CFHTTPMessage*, unsigned char*, __CFError**)() 
#29 0x00007fff95012f84 in HTTPConnectionCacheEntry::enqueueRequestForProtocol(HTTPProtocol*, __CFHTTPMessage*)() 
#30 0x00007fff95012901 in HTTPConnectionCache::EnqueueRequestForProtocol(HTTPProtocol*, __CFHTTPMessage*)() 
#31 0x00007fff9500f283 in HTTPProtocol::createStream()() 
#32 0x00007fff9500eb82 in HTTPProtocol::createAndOpenStream()() 
#33 0x00007fff9500cef1 in URLConnectionLoader::loaderScheduleOriginLoadLocked(_CFURLRequest const*)() 
#34 0x00007fff950dec12 in URLConnectionLoader::loaderScheduleOriginLoad(_CFURLRequest const*)() 
#35 0x00007fff950de637 in URLConnectionLoader::LoaderConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XLoaderEvent, XLoaderEventParams>*, long)() 
#36 0x00007fff9500c959 in URLConnectionLoader::processEvents()() 
#37 0x00007fff950079ee in MultiplexerSource::perform()() 
#38 0x00007fff8f45a6e1 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__() 
#39 0x00007fff8f459f4d in __CFRunLoopDoSources0() 
#40 0x00007fff8f480d39 in __CFRunLoopRun() 
#41 0x00007fff8f480676 in CFRunLoopRunSpecific() 
#42 0x00007fff8dad5ffb in +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:]() 
#43 0x00007fff8daca74e in -[NSThread main]() 
#44 0x00007fff8daca6c6 in __NSThread__main__() 
#45 0x00007fff8f3b48bf in _pthread_start() 
#46 0x00007fff8f3b7b75 in thread_start() 

我還有其他的幾個線程,但我所有的線程都在睡覺等待輸入的,唯一感興趣的其他線程似乎是這樣的一個:

#0 0x00007fff90342a8e in pread() 
#1 0x00007fff8ba90ce5 in unixRead() 
#2 0x00007fff8ba8cc33 in sqlite3BtreeOpen() 
#3 0x00007fff8ba88fc6 in openDatabase() 
#4 0x00007fff95002c7d in __CFURLCache::OpenDatabase()() 
#5 0x00007fff95002800 in ProcessCacheTasks(__CFURLCache*, bool)() 
#6 0x00007fff95002232 in _CFURLCacheTimerCallback(void*)() 
#7 0x00007fff94e238ba in _dispatch_call_block_and_release() 
#8 0x00007fff94e2510a in _dispatch_queue_drain() 
#9 0x00007fff94e24f66 in _dispatch_queue_invoke() 
#10 0x00007fff94e24760 in _dispatch_worker_thread2() 
#11 0x00007fff8f3b63da in _pthread_wqthread() 
#12 0x00007fff8f3b7b85 in start_wqthread() 

我提到那個線程,正如我在這裏看到的另一個問題,類似的崩潰與NSURLCache有關。我不直接調用NSURLCache上的任何方法,但我正在使用上面的線程中提到的sqlite數據庫。

有沒有人見過這個或有任何想法去哪裏找來解決這個問題?

+0

嘗試圍繞NSURLCache區域進行調試。 – iDifferent 2012-02-15 14:04:30

+0

我有一個類似的錯誤 - 你有沒有找到解決這個問題的解決方案? – vivianaranha 2012-02-15 20:29:07

+4

這真的是一個崩潰還是它只是觸發一個異常斷點?在我的情況下,引發了一個認證錯誤的異常,但最終被捕獲。 – nschum 2012-12-29 17:43:09

回答

0

您很可能會啓用常規異常斷點。導航到您的斷點窗格和禁用它們(如圖這裏):enter image description here

好運。