[Lxr-dev] [ lxr-Feature Requests-1691378 ] Rearchitect the DB backends
Brought to you by:
ajlittoz
From: SourceForge.net <no...@so...> - 2009-04-13 16:39:19
|
Feature Requests item #1691378, was opened at 2007-03-30 16:37 Message generated for change (Comment added) made by adrianissott You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390120&aid=1691378&group_id=27350 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: General Group: None Status: Open Priority: 5 Private: No Submitted By: Paul D. Smith (psmith) Assigned to: Nobody/Anonymous (nobody) Summary: Rearchitect the DB backends Initial Comment: The LXR index DB backends all use DBI, which is perfect, but they don't take enough advantage of it and thus end up duplicating a significant amount of code with all the problems that generally brings. Perl's DBI is ALREADY a generic front-end for SQL databases of all different types, so having separate LXR::Index::* subclasses for each database is largely unnecessary: all databases can use the DBI interface almost exactly the same way. There are minor differences, though, so it's not true that we can get rid of the LXR::Index::* database specific classes entirely. I propose that we make LXR::Index a proper superclass for the DB-specific subclasses, and we push up as much functionality as possible into the superclass. The subclasses should be pretty small: they will deal only with DB-specific issues (for example, auto-incremented fields which work differently in PostgreSQL and MySQL). ---------------------------------------------------------------------- Comment By: AdrianIssott (adrianissott) Date: 2009-04-13 17:39 Message: I'd like to take this on as I'd also noticed a lot of redundancy in the LXR::Index modules. Malcolm can you assign it to me? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=390120&aid=1691378&group_id=27350 |