On 21 Jan 2008, at 1:28 AM, Adam R. Maxwell wrote:

>
> On Jan 20, 2008, at 4:14 PM, Christiaan Hofman wrote:
>
>>
>> On 21 Jan 2008, at 1:12 AM, Adam R. Maxwell wrote:
>>
>>>
>>> On Jan 20, 2008, at 4:00 PM, Christiaan Hofman wrote:
>>>
>>>>
>>>> On 21 Jan 2008, at 12:53 AM, Adam R. Maxwell wrote:
>>>>
>>>>>
>>>>> On Jan 20, 2008, at 3:46 PM, Christiaan Hofman wrote:
>>>>>
>>>>>>>>> True; the unarchiving can be done on the thread, though,
>>>>>>>>> after -
>>>>>>>>> init
>>>>>>>>> has returned.  It would just cut down on overhead in case of
>>>>>>>>> multiple
>>>>>>>>> huge indexes stored on disk, so you wouldn't have to read all
>>>>>>>>> of
>>>>>>>>> them
>>>>>>>>> fully in order to find the right one.
>>>>>>>>
>>>>>>>> Of course unarchiving on the thread would mean creating the
>>>>>>>> index on
>>>>>>>> the thread. And then we need safeguards in -index. (in the
>>>>>>>> cancel
>>>>>>>> method the lock is probably sufficient).
>>>>>>>
>>>>>>> I'd say just creating it as a local variable and then assigning
>>>>>>> to
>>>>>>> the
>>>>>>> ivar when it's done is sufficient.  The BDSKSearch now ignores a
>>>>>>> NULL
>>>>>>> index (but it won't get any delegate messages until the index is
>>>>>>> fully
>>>>>>> created anyway), so -index should be fine as-is.
>>>>>>
>>>>>> No that does not work. Apart from a failing OBPOSTCONDITION and a
>>>>>> log, sometimes it does nothing.
>>>>>
>>>>> What does not work?  And what sometimes does nothing?
>>>>
>>>>
>>>> Creating the index in buildIndex... does not work. Sometimes there
>>>> just happens nothing: no indexing, at least the UI does not show  
>>>> the
>>>> progress bar and nothing appears in the table. Also if I remove the
>>>> OBPOSTCONDITION.
>>>
>>> I don't understand that.  Is it raising an exception somewhere?  The
>>> OBPOSTCONDITION is just a harmless log message.
>>>
>>> If I move all the index creation stuff from -init to
>>> buildIndexForItems: and make the document an ivar to get its URL  
>>> (not
>>> safe, I know), it works fine.  No postcondition log, progress bar
>>> works, and results show up in the table.
>>
>> For me sometimes it does, and sometimes it doesn't.
>
> That sounds most peculiar; I've tried several times here and it
> works.  Have you verified that your indexData and index ivars are non-
> NULL before if ([signatures count])?  And that buildIndexForItems:
> gets called every time?

Yes. And it happens every time I get the POSTCONDITION warning from  
BDSKFileSearch.

Christiaan



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Bibdesk-develop mailing list
Bibdesk-develop@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bibdesk-develop

Reply via email to