git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Frank Lichtenheld <frank@lichtenheld.de>
To: git@vger.kernel.org
Cc: Frank Lichtenheld <frank@lichtenheld.de>
Subject: [PATCH] cvsserver: Use DBI->table_info instead of DBI->tables
Date: Sat, 31 Mar 2007 15:57:47 +0200	[thread overview]
Message-ID: <1175349467524-git-send-email-frank@lichtenheld.de> (raw)
In-Reply-To: <11743197614111-git-send-email-frank@lichtenheld.de>

DBI->table_info is portable across different DBD backends,
DBI->tables is not.

Limit the output to objects of type TABLE.
---
 git-cvsserver.perl |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

 Obviously to be applied on top of my previous
 patch series.
 
 With this patch I was able to use DBD::Pg as backend.
 It is not very comfortable because of the "one db for
 each module" problem, but at least it works.

diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index 941a91b..5532ae7 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -2171,10 +2171,8 @@ sub new
     die "Error connecting to database\n" unless defined $self->{dbh};
 
     $self->{tables} = {};
-    foreach my $table ( $self->{dbh}->tables )
+    foreach my $table ( keys %{$self->{dbh}->table_info(undef,undef,undef,'TABLE')->fetchall_hashref('TABLE_NAME')} )
     {
-        $table =~ s/^"//;
-        $table =~ s/"$//;
         $self->{tables}{$table} = 1;
     }
 
-- 
1.5.0.3

  parent reply	other threads:[~2007-03-31 13:58 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-19 15:55 [PATCH/RFC] cvsserver: Make configuration way more flexible Frank Lichtenheld
2007-03-19 15:55 ` [PATCH 1/5] cvsserver: Introduce new state variable 'method' Frank Lichtenheld
2007-03-19 15:55 ` [PATCH 2/5] cvsserver: Handle three part keys in git config correctly Frank Lichtenheld
2007-03-19 15:55 ` [PATCH 3/5] cvsserver: Allow to override the configuration per access method Frank Lichtenheld
2007-03-19 15:56 ` [PATCH 4/5] cvsserver: Make the database backend configurable Frank Lichtenheld
2007-03-19 19:47   ` Martin Langhoff
2007-03-23 15:17     ` Frank Lichtenheld
2007-03-23 18:39       ` Frank Lichtenheld
2007-03-19 15:56 ` [PATCH 5/5] cvsserver: Abort if connect to database fails Frank Lichtenheld
2007-03-31 13:57 ` Frank Lichtenheld [this message]
2007-03-31 14:09   ` [PATCH] cvsserver: Use DBI->table_info instead of DBI->tables Frank Lichtenheld
2007-04-07 14:52 ` [PATCH 0/3] cvsserver: small corrections and bring documentation up to speed Frank Lichtenheld
2007-04-07 14:58   ` [PATCH 1/3] cvsserver: small corrections to asciidoc documentation Frank Lichtenheld
2007-04-07 14:58     ` [PATCH 2/3] cvsserver: Corrections to the database backend configuration Frank Lichtenheld
2007-04-07 14:58       ` [PATCH 3/3] cvsserver: Add asciidoc documentation for new " Frank Lichtenheld
2007-04-08  8:44         ` Junio C Hamano
2007-04-11 14:34           ` Frank Lichtenheld
2007-04-12 14:43           ` [PATCH (amend)] " Frank Lichtenheld
2007-04-13  0:13             ` Jakub Narebski
2007-04-13 16:13               ` [PATCH] config.txt: Add gitcvs.db* variables Frank Lichtenheld
2007-04-12 14:54           ` [PATCH] cvsserver: Document the GIT branches -> CVS modules mapping more prominently Frank Lichtenheld
2007-04-12 22:05             ` Junio C Hamano
2007-04-12 22:19               ` Frank Lichtenheld

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1175349467524-git-send-email-frank@lichtenheld.de \
    --to=frank@lichtenheld.de \
    --cc=git@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).