Treemodel Problem

View: New views
7 Messages — Rating Filter:   Alert me  

Treemodel Problem

by Brian Matherly :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

In trunk: When I try to select the Center Family for a family group report, I get the following error:

128984: ERROR: gramps.py: line 121: Unhandled exception
Traceback (most recent call last):
  File "/home/brian/workspace/gramps_trunk/src/PluginUtils/_GuiOptions.py", line 592, in __get_family_clicked
    filter=rfilter )
  File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 107, in __init__
    self.build_tree()
  File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 263, in build_tree
    search=filter_info)
  File "/home/brian/workspace/gramps_trunk/src/DisplayModels/_FamilyModel.py", line 93, in __init__
    search=search, skip=skip, sort_map=sort_map)
  File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
    self.set_search(search)
  File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
    if search[2]:
IndexError: tuple index out of range

I would fix this myself, but I presume it is related to the recent treemodel changes, and I don't really understand that code.

~Brian

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by Rob Healey-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Greetings:

I also get something close to yours as if it wasd the same error!

It is when I tried to select an existing place....

python ~/gramps32/src/gramps.py
61182: ERROR: gramps.py: line 121: Unhandled exception
Traceback (most recent call last):
  File "/home/Frog/gramps32/src/Editors/ObjectEntries.py", line 200, in share_clicked
    select = self.call_selector()
  File "/home/Frog/gramps32/src/Editors/ObjectEntries.py", line 289, in call_selector
    return cls(self.dbstate, self.uistate, self.track)
  File "/home/Frog/gramps32/src/Selectors/_BaseSelector.py", line 107, in __init__
    self.build_tree()
  File "/home/Frog/gramps32/src/Selectors/_BaseSelector.py", line 263, in build_tree
    search=filter_info)
  File "/home/Frog/gramps32/src/DisplayModels/_PlaceModel.py", line 93, in __init__
    search=search, skip=skip, sort_map=sort_map)
  File "/home/Frog/gramps32/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
    self.set_search(search)
  File "/home/Frog/gramps32/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
    if search[2]:
IndexError: tuple index out of range

Sincerely yours,
Rob G. Healey

On Mon, Oct 26, 2009 at 7:32 PM, Brian Matherly <brian@...> wrote:
In trunk: When I try to select the Center Family for a family group report, I get the following error:

128984: ERROR: gramps.py: line 121: Unhandled exception
Traceback (most recent call last):
 File "/home/brian/workspace/gramps_trunk/src/PluginUtils/_GuiOptions.py", line 592, in __get_family_clicked
   filter=rfilter )
 File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 107, in __init__
   self.build_tree()
 File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 263, in build_tree
   search=filter_info)
 File "/home/brian/workspace/gramps_trunk/src/DisplayModels/_FamilyModel.py", line 93, in __init__
   search=search, skip=skip, sort_map=sort_map)
 File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
   self.set_search(search)
 File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
   if search[2]:
IndexError: tuple index out of range

I would fix this myself, but I presume it is related to the recent treemodel changes, and I don't really understand that code.

~Brian

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by nwallingford :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Nick and Benny are aware of this one: it relates to work Nick was doing
with the treemodel changes (as opposed to the three model changes...)

I can't remember which of them was going to fix it, but they were aware
of it having come out of the previous changes made by Nick.

The other Nick.

Brian Matherly wrote:

> In trunk: When I try to select the Center Family for a family group report, I get the following error:
>
> 128984: ERROR: gramps.py: line 121: Unhandled exception
> Traceback (most recent call last):
>   File "/home/brian/workspace/gramps_trunk/src/PluginUtils/_GuiOptions.py", line 592, in __get_family_clicked
>     filter=rfilter )
>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 107, in __init__
>     self.build_tree()
>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 263, in build_tree
>     search=filter_info)
>   File "/home/brian/workspace/gramps_trunk/src/DisplayModels/_FamilyModel.py", line 93, in __init__
>     search=search, skip=skip, sort_map=sort_map)
>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
>     self.set_search(search)
>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
>     if search[2]:
> IndexError: tuple index out of range
>
> I would fix this myself, but I presume it is related to the recent treemodel changes, and I don't really understand that code.
>
> ~Brian
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> Gramps-devel mailing list
> Gramps-devel@...
> https://lists.sourceforge.net/lists/listinfo/gramps-devel

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by Benny Malengier :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The solution is in the patch of Nick on bug tracker, but that patch
has the new peopleview also, which is a bit slower if I understand
correctly (did not have time to try yet) than the old one.

I'll try to find time this week to review the code and commit.

Benny

2009/10/27 Nick Wallingford <nickw@...>:

> Nick and Benny are aware of this one: it relates to work Nick was doing
> with the treemodel changes (as opposed to the three model changes...)
>
> I can't remember which of them was going to fix it, but they were aware
> of it having come out of the previous changes made by Nick.
>
> The other Nick.
>
> Brian Matherly wrote:
>> In trunk: When I try to select the Center Family for a family group report, I get the following error:
>>
>> 128984: ERROR: gramps.py: line 121: Unhandled exception
>> Traceback (most recent call last):
>>   File "/home/brian/workspace/gramps_trunk/src/PluginUtils/_GuiOptions.py", line 592, in __get_family_clicked
>>     filter=rfilter )
>>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 107, in __init__
>>     self.build_tree()
>>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 263, in build_tree
>>     search=filter_info)
>>   File "/home/brian/workspace/gramps_trunk/src/DisplayModels/_FamilyModel.py", line 93, in __init__
>>     search=search, skip=skip, sort_map=sort_map)
>>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
>>     self.set_search(search)
>>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
>>     if search[2]:
>> IndexError: tuple index out of range
>>
>> I would fix this myself, but I presume it is related to the recent treemodel changes, and I don't really understand that code.
>>
>> ~Brian
>>
>> ------------------------------------------------------------------------------
>> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
>> is the only developer event you need to attend this year. Jumpstart your
>> developing skills, take BlackBerry mobile applications to market and stay
>> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
>> http://p.sf.net/sfu/devconference
>> _______________________________________________
>> Gramps-devel mailing list
>> Gramps-devel@...
>> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> Gramps-devel mailing list
> Gramps-devel@...
> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by Nick Hall-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

With my data the new treemodel runs slower than the old people model.  
The old people model was fixed to 2 levels of hierarchy, the new code
will handle any number of levels.  I was hoping that the new code could
be used for all hierarchical treeviews.

I'll have another look at the treemodel to see if I can speed things
up.  It may be that we need a third model for the people view with just
2 levels of hierarchy and use the new model for future models requiring
three or more levels.

The bug is due to the fact that I extended the search/filter
functionality to handle both "exact" and "contains" type searches.  This
is only used in the people view with the gender column at the moment but
I added the functionality to the other model for consistency.  As a side
issue, when doing an exact search on gender the drop down still says
"gender contains" which may be misleading.

In the change I added an extra element to the search tuple.  Before it was:

search[0] = the type (filter, search)
search[1] = a filter or a tuple containing (model column, text, inverted)

Now search[2] can contain a boolean indicating an "exact" or  "contains"
search.

This is very easy to fix.  I fixed it against my working copy but I
could provide a patch against a clean copy of trunk if required.

Nick.

Benny Malengier wrote:

> The solution is in the patch of Nick on bug tracker, but that patch
> has the new peopleview also, which is a bit slower if I understand
> correctly (did not have time to try yet) than the old one.
>
> I'll try to find time this week to review the code and commit.
>
> Benny
>
> 2009/10/27 Nick Wallingford <nickw@...>:
>  
>> Nick and Benny are aware of this one: it relates to work Nick was doing
>> with the treemodel changes (as opposed to the three model changes...)
>>
>> I can't remember which of them was going to fix it, but they were aware
>> of it having come out of the previous changes made by Nick.
>>
>> The other Nick.
>>
>> Brian Matherly wrote:
>>    
>>> In trunk: When I try to select the Center Family for a family group report, I get the following error:
>>>
>>> 128984: ERROR: gramps.py: line 121: Unhandled exception
>>> Traceback (most recent call last):
>>>   File "/home/brian/workspace/gramps_trunk/src/PluginUtils/_GuiOptions.py", line 592, in __get_family_clicked
>>>     filter=rfilter )
>>>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 107, in __init__
>>>     self.build_tree()
>>>   File "/home/brian/workspace/gramps_trunk/src/Selectors/_BaseSelector.py", line 263, in build_tree
>>>     search=filter_info)
>>>   File "/home/brian/workspace/gramps_trunk/src/DisplayModels/_FamilyModel.py", line 93, in __init__
>>>     search=search, skip=skip, sort_map=sort_map)
>>>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 393, in __init__
>>>     self.set_search(search)
>>>   File "/home/brian/workspace/gramps_trunk/src/gui/views/treemodels/flatbasemodel.py", line 433, in set_search
>>>     if search[2]:
>>> IndexError: tuple index out of range
>>>
>>> I would fix this myself, but I presume it is related to the recent treemodel changes, and I don't really understand that code.
>>>
>>> ~Brian
>>>
>>> ------------------------------------------------------------------------------
>>> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
>>> is the only developer event you need to attend this year. Jumpstart your
>>> developing skills, take BlackBerry mobile applications to market and stay
>>> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
>>> http://p.sf.net/sfu/devconference
>>> _______________________________________________
>>> Gramps-devel mailing list
>>> Gramps-devel@...
>>> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>>>      
>> ------------------------------------------------------------------------------
>> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
>> is the only developer event you need to attend this year. Jumpstart your
>> developing skills, take BlackBerry mobile applications to market and stay
>> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
>> http://p.sf.net/sfu/devconference
>> _______________________________________________
>> Gramps-devel mailing list
>> Gramps-devel@...
>> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>>
>>    
>
> ------------------------------------------------------------------------------
> Come build with us! The BlackBerry(R) Developer Conference in SF, CA
> is the only developer event you need to attend this year. Jumpstart your
> developing skills, take BlackBerry mobile applications to market and stay
> ahead of the curve. Join us from November 9 - 12, 2009. Register now!
> http://p.sf.net/sfu/devconference
> _______________________________________________
> Gramps-devel mailing list
> Gramps-devel@...
> https://lists.sourceforge.net/lists/listinfo/gramps-devel
>  

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by Benny Malengier :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

2009/10/29 Nick Hall <nick__hall@...>:

> With my data the new treemodel runs slower than the old people model.  The
> old people model was fixed to 2 levels of hierarchy, the new code will
> handle any number of levels.  I was hoping that the new code could be used
> for all hierarchical treeviews.
>
> I'll have another look at the treemodel to see if I can speed things up.  It
> may be that we need a third model for the people view with just 2 levels of
> hierarchy and use the new model for future models requiring three or more
> levels.
>
> The bug is due to the fact that I extended the search/filter functionality
> to handle both "exact" and "contains" type searches.  This is only used in
> the people view with the gender column at the moment but I added the
> functionality to the other model for consistency.  As a side issue, when
> doing an exact search on gender the drop down still says "gender contains"
> which may be misleading.
>
> In the change I added an extra element to the search tuple.  Before it was:
>
> search[0] = the type (filter, search)
> search[1] = a filter or a tuple containing (model column, text, inverted)
>
> Now search[2] can contain a boolean indicating an "exact" or  "contains"
> search.
>
> This is very easy to fix.  I fixed it against my working copy but I could
> provide a patch against a clean copy of trunk if required.

Yes, please make such a small patch so the others don't have issues
with this specific item.
About improving performance of the present implementation, just give
me some time to look at it, before creating a treemodel for peopleview
only. There are some optimizations that can be done on the code you
submitted.

Benny

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel

Re: Treemodel Problem

by Nick Hall-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



Benny Malengier wrote:

> 2009/10/29 Nick Hall <nick__hall@...>:
>  
>> With my data the new treemodel runs slower than the old people model.  The
>> old people model was fixed to 2 levels of hierarchy, the new code will
>> handle any number of levels.  I was hoping that the new code could be used
>> for all hierarchical treeviews.
>>
>> I'll have another look at the treemodel to see if I can speed things up.  It
>> may be that we need a third model for the people view with just 2 levels of
>> hierarchy and use the new model for future models requiring three or more
>> levels.
>>
>> The bug is due to the fact that I extended the search/filter functionality
>> to handle both "exact" and "contains" type searches.  This is only used in
>> the people view with the gender column at the moment but I added the
>> functionality to the other model for consistency.  As a side issue, when
>> doing an exact search on gender the drop down still says "gender contains"
>> which may be misleading.
>>
>> In the change I added an extra element to the search tuple.  Before it was:
>>
>> search[0] = the type (filter, search)
>> search[1] = a filter or a tuple containing (model column, text, inverted)
>>
>> Now search[2] can contain a boolean indicating an "exact" or  "contains"
>> search.
>>
>> This is very easy to fix.  I fixed it against my working copy but I could
>> provide a patch against a clean copy of trunk if required.
>>    
>
> Yes, please make such a small patch so the others don't have issues
> with this specific item.
>  

I have attached it to the bug report.

> About improving performance of the present implementation, just give
> me some time to look at it, before creating a treemodel for peopleview
> only. There are some optimizations that can be done on the code you
> submitted.
>
>  

Yes, I am aware that there are improvements to be made in the existing
code.  It would be good for maintenance reasons if we could use a single
base model for all hierarchical views rather than have a specialised one
for the Person view.

I'll let you have a look at it first though.

> Benny
>
>
>  

Regards,

Nick.

------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Gramps-devel mailing list
Gramps-devel@...
https://lists.sourceforge.net/lists/listinfo/gramps-devel