#1 April 29, 2012 8:30pm

enigmabomb
Member
Registered: April 29, 2012
Posts: 4

Upper Limits Of Pages?

Hi Guys,

I'm wondering if BigTree has an upper limit on the number of hierarchical pages? For example, I want to have 20-50 "parent pages" with as many as 5000 pages below each of those. In WordPress (Is that a dirty word here?) this breaks the admin views because the queries get so large. Has anyone run a setup this large on BigTree? Are their any reasons why it's not possible? I suspect the sitemap functionality may break, but that's ok.

Thank you,

Josh   

Offline

#2 April 30, 2012 8:03am

curt
Administrator
Registered: March 30, 2012
Posts: 7

Re: Upper Limits Of Pages?

Josh, would the 5000 pages be direct descendants of a parent page or would they be within a more complicated tree structure under the parent? Theoretically there isn't a limit, but I could imagine the admin list view having some trouble rendering 5000 items on a single page. I'll run some tests and see how a view with 5000 items reacts. If the 5000 items are organized into a more complex page hierarchy I'm confident everything will work just fine. I just checked on a live project and it has over 6,000 unique pages and is growing on a daily basis.


Curt

Offline

#3 April 30, 2012 8:42am

curt
Administrator
Registered: March 30, 2012
Posts: 7

Re: Upper Limits Of Pages?

Josh,
I just ran a test on 1000 children of a single item. It didn't go off without a hitch. The view renders fine and all pages where accessible for edit, delete, etc... The only issue I currently see is that drag & drop re-ordering of the pages fails. I don't see any reason why the error I'm getting can't be avoided so I am creating an issue in Git Hub so hopefully we can clear up this hurdle and you can develop your project on BigTree. If you want I can keep you posted when the issue is resolved.


Curt

Offline

#4 May 1, 2012 1:10am

enigmabomb
Member
Registered: April 29, 2012
Posts: 4

Re: Upper Limits Of Pages?

Hey Curt,

I ran some of my own tests and saw that above 1000 children of a page rendered everything just fine. My structure would be 20-50 "Parent Pages" and each of those would have 1000-5000 children. The only thing I saw that I think would be helpful is pagination. I tried adding it, but Im in a foreign source tree here, so please forgive me. I've been poking around the source and don't see where

function local_drawPageTree($nav,$title,$subtitle,$class,$draggable = false) {

throws it's query to get the results it displays. I think with a little more tweaking I could make pages of 100, which would keep the memory, ajax, and other problems at bay when dealing with these huge data sets.

I've been really impressed with the codebase thus far though.

Thanks a lot for your help,

Josh

Offline

#5 May 1, 2012 6:39pm

benplum
Administrator
Registered: March 30, 2012
Posts: 54

Re: Upper Limits Of Pages?

The local_drawPageTree function is called lower in the view-tree.php file. It is a localized display function that is passed arrays generated by the admin functions getNaturalNavigationByParent, GetHiddenNavigationByParent and getPendingNavigationByParent.

One issue you may run into when trying to impliment pagination on the default sortable tree view is the actual re-ordering of the pages. We have squashed that bug limiting the size of the ajax call, but the process still requires the set's order to be passed in full. One fix could be to re-write the query to reorder the objects within the bounds of the current sub-set. let us know if you come up with something, we'll also take a closer look into tackling this issue.

Offline

#6 May 1, 2012 7:12pm

enigmabomb
Member
Registered: April 29, 2012
Posts: 4

Re: Upper Limits Of Pages?

Oh, I didn't know that the reordering function needs the full set. Hm. Implementing the ordering function as a column that auto increments each additional pages "order" by 5 so that there is 'room' between pages is not a terrible solution, but those numbers will become very large, linearly, with the size of pages, and at some point, the form field will run out of space to properly display them in the view.

For my purposes, I dont need page ordering, so I'm fine with it being broken, but as something of general value to the public, and something I'd be proud pulling on Git, this might need some more discussion.

Offline

#7 May 1, 2012 7:42pm

benplum
Administrator
Registered: March 30, 2012
Posts: 54

Re: Upper Limits Of Pages?

Sorting is always done by id DESC, so of 5 items, the 'top' item is position 4. Adding pagination to sortable views could be as simple as passing the current page, along with the current sub-set's order, and calculating the new offset order. So page 2 of 3, displaying 20 items each, would contain items ordered 39-19. We would then only update the effected rows. The only down side to having paginated sortable views would be that you will loose the ability to move an item from a deeper page to the top. If your project doesn't require sorting, feel free to remove it completely. Also, remember to make any modifications to core files by duplicating the file's directory location inside the custom folder. Core files will be overwritten if a mirror is found in the custom folder, allowing you to maintain the core code base while still customizing to no end.

Offline

#8 May 1, 2012 8:28pm

enigmabomb
Member
Registered: April 29, 2012
Posts: 4

Re: Upper Limits Of Pages?

To start, I'm going to try to see if the the framework will hold up
under the mass of pages Im going to put in it. If it does, and it can
display the sub pages on a single page, thats still functional for my
purposes. I'll look into adding the pagination. Good heads up on the
overloading of Core files. Thank you.

Offline

Board footer

Powered by FluxBB

The Discussion Forum is not available on displays of this size.