Search

I think I’m going crazy.

I’m using 2.3.2 (master) on my dev environment (php 5.4.6, mysql 5.5.31) and testing/live (php 5.3.5, mysql 5.1.54, I know, old), and have found that filtering datasources by later than {$x} and equal to or later than {$x} isn’t working. I have sites using 2.3.1 that are working in both environments. earlier than works perfectly.

Anyone else seeing this problem? Should I revert to symphony 2.3.1 and cross my fingers that it magically starts working in 2.3.3?

(I’ve tried with a brand new install with only the default extensions, so nothing else is causing my problems.)

Ah ha, figured it out. The problem lied in this MYSQL query:

SELECT SQL_CACHE `e`.id, `e`.section_id, e.`author_id`, UNIX_TIMESTAMP(e.`creation_date`) AS `creation_date`, UNIX_TIMESTAMP(e.`modification_date`) AS `modification_date` FROM `sym_entries` AS `e` LEFT JOIN `sym_entries_data_1` AS `t11` ON `e`.`id` = `t11`.entry_id WHERE 1 AND `e`.`section_id` = '1' AND (`t11`.date >= '2013-05-19 04:59:59' AND `t11`.date <= '10000-01-01 05:59:59' ) ORDER BY `e`.`id`DESC LIMIT 0, 1

The most important part is at the end: 10000-01-01 05:59:59. Also known as the time at GMT when my time zone hits the end of this kilennium. Hilarious. An unexpected problem due to this commit. I suppose it isn’t a problem for anyone in or east of GMT.

I’ve temporarily switched line 206 to $string = $later . ' to 9999-12-30 23:59:59'; but that’s obviously a suboptimal solution. Will try to think of a more elegant solution.

(Added an issue on github)

Create an account or sign in to comment.

Symphony • Open Source XSLT CMS

Server Requirements

  • PHP 5.3-5.6 or 7.0-7.3
  • PHP's LibXML module, with the XSLT extension enabled (--with-xsl)
  • MySQL 5.5 or above
  • An Apache or Litespeed webserver
  • Apache's mod_rewrite module or equivalent

Compatible Hosts

Sign in

Login details