External PHP application to search full text in sqlite databases

43 views
Skip to first unread message

Mike

unread,
Jul 24, 2012, 12:23:57 PM7/24/12
to trac-...@googlegroups.com
I am planning to write a web application that allows users to search for a phrase within Wiki pages, ticket comments, project names, etc, basically reproducing the functionality in Redmine:


I don't know Python, so it may be easier for me to do it in PHP. Assuming it's PHP, I did a small test using PHP-PDO, and looping over all projects I searched for a phrase in the Wiki pages using something like this:

SELECT name,version,author FROM (SELECT name, max(version) AS version, author, text FROM wiki GROUP BY name) WHERE text LIKE '%$searchTerm%'

It takes too long, so I need another solution, such as:
  1. Adding an index to the existing Trac databases - possible? does this mess them up? Can Trac still use them?
  2. Doing hourly/daily dumps to MySQL with indexes on the MySQL database
  3. Not sure what else...

Are the Trac databases indexed, or set up to do this faster than I'm already doing it?

Thanks a lot!

Message has been deleted

RjOllos

unread,
Jul 24, 2012, 3:17:49 PM7/24/12
to trac-...@googlegroups.com
When working from another language or an external application, my first approach would be to use the XmlRpcPlugin (1), since the query may already be optimal.

search.performSearch(string query, array filters=None)

(1) http://trac-hacks.org/wiki/XmlRpcPlugin
Reply all
Reply to author
Forward
0 new messages