का उपयोग करते समय हम एक ऐसा एप्लिकेशन बना रहे हैं जो ऑफ़लाइन डेटा स्टोर करने के लिए फ़ायरफ़ॉक्स पर इंडेक्सड डीबी का व्यापक उपयोग करता है।त्रुटि "ऑपरेशन विफल हुआ क्योंकि अनुरोधित डेटाबेस ऑब्जेक्ट नहीं मिला ..." अनुक्रमणित डीबी
यह काम करता है अच्छी तरह से समय की सबसे लेकिन कभी-कभी की तरह त्रुटियों के साथ विफल रहता है निम्नलिखित:
Exception... "The operation failed because the requested database object could
not be found. For example, an object store did not exist but was being opened."
code: "3" nsresult: "0x80660003 (NS_ERROR_DOM_INDEXEDDB_NOT_FOUND_ERR)"
यह कोड में विभिन्न स्थानों में विफल रहा है;
_writePage: (storeName, startIndex, endIndex, binder) ->
writeTransaction = @connection.transaction([storeName], @idbTransaction.READ_WRITE)
store = writeTransaction.objectStore(storeName)
for index in [startIndex...endIndex] when (item = binder.list[index])?
writeRequest = store.put(item)
writeRequest.onerror = binder.failCallback()
writeRequest.onsuccess = binder.successCallback()
if endIndex >= binder.list.length
binder.finishedRegisteringCallbacks()
return
setTimeout((=> @_writePage(storeName, endIndex, endIndex + @WRITE_EACH_PAGE_SIZE, binder)), @WRITE_EACH_PAGE_DELAY)
null
बात यह है कि पहेली मुझे उस विफलताओं बार बार होते हैं, स्वचालित परीक्षण है कि आमतौर पर काम (हम फांसी के सैकड़ों प्रति इन विफलताओं में से एक को देख रहे हैं) के दौरान होता है: यहाँ अपराधियों में से एक है।
यह उल्लेखनीय है कि हम सैकड़ों मेगाबाइट्स के क्रम में भी बहुत सारे डेटा संग्रहित कर रहे हैं।
स्वचालित परीक्षणों को केवल कुछ मेगाबाइट स्टोर करता है, इसलिए यह आकार का मामला नहीं है।
क्या किसी और ने अनुभव किया है (या बेहतर अभी तक, अनुभवी और तय!) इस समस्या?
धन्यवाद है - लेकिन यह केवल एक ही टैब के साथ prod में हुआ है एक ब्राउज़र उदाहरण में। –