Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What are Fetch Index Elements in the CoreData Model?

In my xcdatamodel two new fields, byTitleIndex and compoundIndex, are showing under Fetch Index Elements. I have not seen this section before in Xcode. What is a Fetch Index Element?

Screenshot of Xcode xcdatamodel highlighting compoundIndex field

like image 331
lostAtSeaJoshua Avatar asked Dec 06 '17 00:12

lostAtSeaJoshua


1 Answers

Fetch Index Elements are part of Apple’s new indexing API, announced at WWDC 2017. They allow you to specify one or more Index Elements; properties that are used to create an index for faster database searches. In your case, the "title" property will be used to create an index called “compoundIndex” under your "Passage" entity, allowing for faster title searches.

Announcement: https://developer.apple.com/videos/play/wwdc2017/210/?time=628

Demo: https://developer.apple.com/videos/play/wwdc2017/210/?time=997

Documentation (scroll down to "Working with Indexes"): https://developer.apple.com/documentation/coredata/nsmanagedobjectmodel

like image 175
rymerej Avatar answered Nov 17 '22 01:11

rymerej