<feed xmlns='http://www.w3.org/2005/Atom'>
<title>FreshRSS (Customized)/app/Models/EntryDAO.php, branch 0.7.4</title>
<subtitle>Customized version of FreshRSS, a self-hosted RSS feed aggregator</subtitle>
<id>https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.7.4</id>
<link rel='self' href='https://git.rdnlsmith.com/fresh-rss-custom/atom?h=0.7.4'/>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/'/>
<updated>2014-08-23T20:02:22+00:00</updated>
<entry>
<title>Fix bug add favorite entry</title>
<updated>2014-08-23T20:02:22+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-08-23T20:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=1316ada15260e8f2fdb486595d5953bef9badc50'/>
<id>urn:sha1:1316ada15260e8f2fdb486595d5953bef9badc50</id>
<content type='text'>
See https://github.com/marienfressinaud/FreshRSS/issues/494
</content>
</entry>
<entry>
<title>Improvement for ASC order</title>
<updated>2014-08-19T18:58:18+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-08-19T18:58:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=50075bfbdcd6a7be010eb82ce1fffac0ea283de7'/>
<id>urn:sha1:50075bfbdcd6a7be010eb82ce1fffac0ea283de7</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/495
</content>
</entry>
<entry>
<title>First bug for old articles first</title>
<updated>2014-08-07T09:29:19+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-08-07T09:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=65d6796e9244bbc94f5d04cf47723a533b6a5351'/>
<id>urn:sha1:65d6796e9244bbc94f5d04cf47723a533b6a5351</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/495
</content>
</entry>
<entry>
<title>Fix bugs in import/export</title>
<updated>2014-07-23T21:56:16+00:00</updated>
<author>
<name>Marien Fressinaud</name>
<email>dev@marienfressinaud.fr</email>
</author>
<published>2014-07-23T21:56:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=d5d3f6dcfa21e7defb26f3d470289e957bdb3dde'/>
<id>urn:sha1:d5d3f6dcfa21e7defb26f3d470289e957bdb3dde</id>
<content type='text'>
- EntryDAO.php: add a missing "FreshRSS_EntryDAO::"
- Fix htmlspecialchars in opml export
</content>
</entry>
<entry>
<title>SQL: Bug with order ASC</title>
<updated>2014-07-17T09:56:15+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-17T09:56:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=3403af30501cc0df75290372bc111430e0f8e70a'/>
<id>urn:sha1:3403af30501cc0df75290372bc111430e0f8e70a</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/538
</content>
</entry>
<entry>
<title>SQL: MySQL speed optimisation</title>
<updated>2014-07-10T13:49:51+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-10T13:49:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=6c83264f83221dcaa41d58e0b35b9925cde130e4'/>
<id>urn:sha1:6c83264f83221dcaa41d58e0b35b9925cde130e4</id>
<content type='text'>
Would be nice to test with other versions of MySQL too.

Comparison before/after:

mysql&gt; EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority &gt; 0 AND
(e1.id &gt;= 1381615200000000 OR e1.is_read=0 OR e1.is_favorite=1 OR
(f.keep_history &lt;&gt; 0)) ORDER BY e1.id DESC LIMIT 31) e2 ON e2.id=e.id
ORDER BY e.id DESC;

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
| id | select_type | table      | type   | possible_keys
| key      | key_len | ref           | rows | Extra
|

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
|  1 | PRIMARY     | &lt;derived2&gt; | ALL    | NULL
| NULL     | NULL    | NULL          |   31 | Using temporary; Using
filesort              |
|  1 | PRIMARY     | e          | eq_ref | PRIMARY
| PRIMARY  | 8       | e2.id         |    1 |
|
|  2 | DERIVED     | f          | range  | PRIMARY,priority,keep_history
| priority | 1       | NULL          |  137 | Using where; Using
temporary; Using filesort |
|  2 | DERIVED     | e1         | ref    |
PRIMARY,id_feed,is_favorite,is_read | id_feed  | 2       | freshrss.f.id
|  452 | Using where                                  |

+----+-------------+------------+--------+-------------------------------------+----------+---------+---------------+------+----------------------------------------------+
4 rows in set (3.50 sec)

mysql&gt; EXPLAIN SELECT e.id, e.guid, e.title, e.author,
UNCOMPRESS(content_bin) AS content, e.link, e.date, e.is_read,
e.is_favorite, e.id_feed, e.tags FROM `freshrss_alex_entry` e INNER JOIN
(SELECT e1.id FROM `freshrss_alex_entry` e1 INNER JOIN
`freshrss_alex_feed` f ON e1.id_feed=f.id WHERE f.priority &gt; 0 AND e1.id
&lt;=9000000000000000 AND (e1.id &gt;= 1381615200000000 OR e1.is_read=0 OR
e1.is_favorite=1 OR (f.keep_history &lt;&gt; 0)) ORDER BY e1.id DESC LIMIT 31)
e2 ON e2.id=e.id ORDER BY e.id DESC;

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
| id | select_type | table      | type   | possible_keys
| key     | key_len | ref                 | rows  | Extra
|

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
|  1 | PRIMARY     | &lt;derived2&gt; | ALL    | NULL
| NULL    | NULL    | NULL                |    31 | Using temporary;
Using filesort |
|  1 | PRIMARY     | e          | eq_ref | PRIMARY
| PRIMARY | 8       | e2.id               |     1 |
|
|  2 | DERIVED     | e1         | range  |
PRIMARY,id_feed,is_favorite,is_read | PRIMARY | 8       | NULL
| 70084 | Using where                     |
|  2 | DERIVED     | f          | eq_ref | PRIMARY,priority,keep_history
| PRIMARY | 2       | freshrss.e1.id_feed |     1 | Using where
|

+----+-------------+------------+--------+-------------------------------------+---------+---------+---------------------+-------+---------------------------------+
4 rows in set (0.01 sec)
</content>
</entry>
<entry>
<title>SQL: removed superfluous transactions to avoid some dead locks</title>
<updated>2014-07-08T12:14:02+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-08T12:14:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=0f842c1aea74792d9b6f7e41e374c5aa0ec745fb'/>
<id>urn:sha1:0f842c1aea74792d9b6f7e41e374c5aa0ec745fb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>SQL: improved performance for adding new articles</title>
<updated>2014-07-07T16:25:48+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-07T16:25:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=439a0e2991231db51232646736a4bf78cfb2bffd'/>
<id>urn:sha1:439a0e2991231db51232646736a4bf78cfb2bffd</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add support for SQLite</title>
<updated>2014-07-04T23:52:41+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-04T23:52:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=805c91da98c2f582e279f3c853fba9e43f572419'/>
<id>urn:sha1:805c91da98c2f582e279f3c853fba9e43f572419</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/100
Warning: MySQL has been changed too, so bugs may have been introduced
</content>
</entry>
<entry>
<title>Preparation for SQLite</title>
<updated>2014-07-03T19:26:30+00:00</updated>
<author>
<name>Alexandre Alapetite</name>
<email>alexandre@alapetite.fr</email>
</author>
<published>2014-07-03T19:26:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rdnlsmith.com/fresh-rss-custom/commit/?id=d6f414108667f32fe2b480adeb7ec9c218db2f4a'/>
<id>urn:sha1:d6f414108667f32fe2b480adeb7ec9c218db2f4a</id>
<content type='text'>
https://github.com/marienfressinaud/FreshRSS/issues/100
</content>
</entry>
</feed>
