Opened 8 years ago

Closed 7 years ago

#5052 closed (wontfix)

Backend for DB2 v9 database

Reported by: Koen Biermans <koen.biermans@…> Owned by: nobody
Component: Database layer (models, ORM) Version: master
Severity: Keywords: DB2
Cc: mateusz@… Triage Stage: Design decision needed
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: yes
Easy pickings: UI/UX:

Description

This patch adds support for a IBM DB2 v9 database (including the free DB2 Express C version).

There are still a number of issues, see the base.py file for details.

Attachments (5)

db2_9.patch (41.3 KB) - added by Koen Biermans <koen.biermans@…> 8 years ago.
DB2 backend
db2_9.2.patch (41.3 KB) - added by Koen Biermans <koen.biermans@…> 8 years ago.
DB2 backend
db2_9_6110.diff (43.0 KB) - added by Koen Biermans <koen.biermans@…> 8 years ago.
patch against trunk r6110, still a lot issues left though
pydb2-db2backend.zip (159.2 KB) - added by batiste@… 8 years ago.
a DB2 backend compatible with 6399 revision and a modified version of PyDB2
db2_9_6600.diff (41.7 KB) - added by batiste@… 8 years ago.
A new version of the db2 9 backend. Some Oracle code has been reactivated.

Download all attachments as: .zip

Change History (11)

Changed 8 years ago by Koen Biermans <koen.biermans@…>

DB2 backend

comment:1 Changed 8 years ago by mir@…

  • Needs documentation unset
  • Needs tests unset
  • Patch needs improvement unset

I think you reversed the patch filenames, there should be a '+' in front of new lines, not a '-' ;-)

Changed 8 years ago by Koen Biermans <koen.biermans@…>

DB2 backend

comment:2 Changed 8 years ago by Koen Biermans <koen.biermans@…>

Bummer, should have checked, always seem to get the order of these things wrong.
Added a new version.

Thanks,

Koen

comment:3 Changed 8 years ago by mir@…

  • Patch needs improvement set
  • Triage Stage changed from Unreviewed to Design decision needed

I can't really triage this since I don't have much knowledge about db2. A few random remarks (and don't take my word as final authority)

  • runshell() needs to set up the environment so that db2 connects to the right database etc.
  • class Cursor: you probably shouldn't use iso-8859-1 as default charset. It looks so ... arbitrary. UTF-8 is kind of standard in Django.
  • class DB2QuerySet: It looks weird to me that you have to overwrite _get_sql_clause, and it would be bad for maintenance.

In order to get this patch into Django, youl'll probably need to find more people to support it. Post a note on django-users, in case you haven't already.

I set the triage state to "decision needed" because the integration of new backends always needs the approval of the core developers.

Changed 8 years ago by Koen Biermans <koen.biermans@…>

patch against trunk r6110, still a lot issues left though

Changed 8 years ago by batiste@…

a DB2 backend compatible with 6399 revision and a modified version of PyDB2

Changed 8 years ago by batiste@…

A new version of the db2 9 backend. Some Oracle code has been reactivated.

comment:4 Changed 8 years ago by Mateusz Loskot <mateusz@…>

  • Cc mateusz@… added

comment:6 Changed 7 years ago by mtredinnick

  • Resolution set to wontfix
  • Status changed from new to closed

New database backends should be maintained out of tree for a while first before being proposed for inclusion. We want to see that there's a healthy userbase and maintenance record before putting something into core. So please create an external project for this (e.g. at google-code). If changes are needed to core, most likely in the area of adding extra DatabaseOperation or DatabaseFeature entries, certainly create a patch or discuss the ideas on django-dev. We're happy to make it easy for people to have external database backends, but we've been bitten before with including external backends too fast and prefer to make it easy for us and the maintainers not to have to do so.

Note: See TracTickets for help on using tickets.
Back to Top