eZ Community » Forums » eZ Publish 5 Platform » Backwards compatibility issues (fetch...
expandshrink

Backwards compatibility issues (fetch list/tree)

Backwards compatibility issues (fetch list/tree)

Thursday 31 July 2014 11:08:14 am - 7 replies

I'm in the process of migrating different 4.4 customers to version 2014.05. Most of the sites will receive at least a TWIG page layout, but for the time being, much of the logic and templating will remain in legacy. Given the excellent job of the core developers in regards to backwards compatibility I expect few problems.

Nevertheless I encountered a problem with fetches (content list or tree) using limit=0. Although not explicitly documented, a limit of 0 would return ALL rows in eZ 4. In eZ 5, however, the limit value goes straight to the SQL query, returning ZERO rows.

Not a very big issue, but worth a bug report and mentioning, so that you are aware of it!

Please share your experiences with BC here.

Cheers,
Donat

Modified on Thursday 31 July 2014 11:10:38 am by Donat Fritschy

Tuesday 05 August 2014 9:45:47 am

Hi Donat,

I do not think it has ever work with 0. Limit must be set to false with the false() function to get all the elements.

Tuesday 05 August 2014 3:10:47 pm

Hi Sebastian

I have some old template code which uses 0 (and works in 4.4).

But you are of course right that the correct way would be to use false() - and if used this way, there is no problem with backwards compatibility.

Thanks for your clarification!

Cheers,
Donat

Tuesday 05 August 2014 5:31:44 pm

Hi Donat

As explained in the Jira issue, nothing has changed in the related legacy code, so I would expect a MySQL change of behavior in your new installation, or maybe directly related to PHP.

Anyway, Sebastian is right, you should pass false() instead of 0.

Tuesday 05 August 2014 6:31:42 pm

My bad, this behavior has actually been introduced in 4.5 by a fix for EZP-14342 (thanks Donat for the hint!). Documentation will be updated.

Tuesday 05 August 2014 10:11:40 pm

Hi,

I understand the desire to have backwards compatibility, however to what extent should it go? While legacy appears to have at some point been able to take a limit of 0 and return ALL results, am I correct in understanding that this will now be carried over into the symfony stack?

If so, I would suggest that would not be logical by any means. If a request is made and somehow (explicitly or by expression evaluation) a value of 0 gets passed in, logic would state then that 0 results should be returned. If all results are desired to be return, then I would have expected to either not include a limit or have the limit value set to a boolean false.

Tuesday 05 August 2014 10:46:39 pm

Hi Michael

We're only talking about legacy stack here, don't worry happy.gif Emoticon

Tuesday 05 August 2014 10:59:34 pm

Ok, thanks; I saw twig mentioned and was not real sure which part of the functionality was going to remain in legacy vs symfony based on the discussion.

expandshrink

You must be logged in to post messages in this topic!

36 542 Users on board!

Forums menu

Proudly Developed with from