Thanks to both for looking into this.

Dan, you are right. The issue is on the send call in translate. This is
a one-to-many relationship, and so by the time it reaches object.send
(... ...), it tries to call the method on an array of AR objects, not on
the AR object itself. This causes the no method found issue. I've pasted
the stack trace here: http://gist.github.com/65198

Regarding the date-of-birth issue, I am still not sure what's causing
it. However, I do see that it is using cast(extract(epoch from
people.dob) as int) on dob when it is configured as an attribute. Most
of these DOBs are pre unix timestamp = 0 (1970-01-01), and so when this
is run directly on the database, I get integer out of range error. That
said, the number of docs created is much less than the number of people
with a DOB < 1970-01-01, so there's something else going on as well. I
am using postgreSQL 8.2 for these trials...

Can sphinx create attributes with dates older than 1970-01-01? I
understand that it converts them to integers (unix timestamps), but is
there a way around it? Can it take negative integers representing dates
pre 1970?

Thanks again,
-H

-----Original Message-----
From: Dan Pickett <[email protected]>
Reply-to: [email protected]
To: [email protected]
Subject: [ts] Re: from acts_as_solr to thinking_sphinx, first thoughts
Date: Mon, 16 Feb 2009 06:48:38 -0500

awesome, Pat.

I think this is probably due to the send call in translate of facet.rb -
I proposed and am still considering creating a translation field for
crc'd attributes like dates and strings in the generated configuration.
The indexed fields wouldn't be a problem because they're already in the
query.

What do you think? 

On Mon, Feb 16, 2009 at 3:05 AM, Pat Allan <[email protected]>
wrote:

        
        Hi Harold
        
        Can you post the stack-trace of that facet error?
        
        The date-of-bith issue is odd - it's nice to know it works as a
        field,
        but that means you won't be able to filter by it. I've seen this
        issue
        occasionally, but not reliably, and would be awesome to track it
        down.
        What happens if you switch it back to being an attribute, run
        ts:in,
        and then check the sql_query value for that index in config/
        development.sphinx.conf - remove the parts of the WHERE clause
        that
        handle id paging, and see how many records it returns...
        
        Dan: I've started to look through your fork, and I've been
        refactoring
        both your and my code. Haven't got it ready for release just yet
        though.
        
        Cheers
        
        --
        Pat
        
        
        
        On 16/02/2009, at 3:47 AM, Harold A. Giménez Ch. wrote:
        
        > Hi Dan. Thanks for your response.
        >
        > I did see the facet support. However, it is only working for
        me when
        > the facet is on the model being indexed, not on one of its
        > associations. If I try adding :facet => true to one of the
        > attributes that are associations, it indexes without issues,
        but
        > when calling Model.facets('something') I get an exception
        along the
        > lines of:
        >
        > NoMethodError: undefined method `facet_name' for #<Class:
        > 0x7f6a4d321a68>
        >
        >
        > Regarding the question below about person.dob and why it would
        not
        > index all of my records, turns out that I tried indexes
        person.dob
        > (instead of has person.dob) and it did index the full set.
        >
        > Thanks again for the help,
        >
        > -Harold
        >
        >
        > On Sun, Feb 15, 2009 at 11:39 AM, Dan Pickett
        > <[email protected]> wrote:
        > Hey Harold,
        >
        > The current version of Thinking Sphinx has facet support
        (add :facet
        > => true to your attribute ). There's some additional
        functionality
        > in my fork for class based facets, but it definitely could use
        some
        > more love from contributors -
        >
        > http://github.com/dpickett/thinking-sphinx/tree/master
        >
        > I'm hoping to continue to work on it, but I haven't had a lot
        of
        > free cycles.
        >
        > Regards,
        > Dan
        >
        >
        > On Sat, Feb 14, 2009 at 10:44 PM, Harold A. Gimenez
        <[email protected]
        > > wrote:
        > Hi,
        >
        > I started looking at sphinx today, with the intent to port an
        > application's search engine from solr to sphinx. The solr
        > implementation is solid, but doesn't meet my business needs -
        we
        > have to bulk load the database and reindex new data more often
        than
        > indexing solr takes! It is a huge bottleneck in our ops. I
        have a
        > few comments which I'd like to share, as well as a couple of
        > questions I hope I can get some guidance with.
        >
        > Sphinx (and TS) installation was a breeze. First step for me
        was to
        > try out the indexing speed. I added a few fields and
        attributes to a
        > Patient model and kicked off indexing. I was discouraged by
        how long
        > it took. Turns out that the (fake) data I was indexing came
        from
        > fixtures. Switching to a production-like database, with
        sequential
        > primary keys,  indexed 500K+ records in less than a minute.
        Wow!
        >
        > Now I have a problem. I've added a DOB attribute (has
        > person.dob, :as => :date_of_birth). Now, when I run the index,
        it is
        > only picking up 45885 docs (I'm expecting over 500K+).  The
        dob
        > field is of type timestamp. As a trial, I switched person.dob
        to
        > person.created_at, and all of the 500K+ documents do get
        generated.
        > Any thoughts on why this is happening?
        >
        > The next challenge is facet support, specifically on
        associations.
        > Is there a fork somewhere where this has been implemented? Any
        > pointers would be appreciated.
        >
        > Thanks,
        > -H
        >
        >
        >
        >
        >
        >
        > >
        
        
        
        




--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Thinking Sphinx" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/thinking-sphinx?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to