git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] cvsserver: Use DBI->table_info instead of DBI->tables

From
Frank Lichtenheld <frank@lichtenheld.de>
Date
Mar 31, 2007, 13:57 UTC
Message-ID
<1175349467524-git-send-email-frank@lichtenheld.de>
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
Previous: Frank LichtenheldNext: Frank Lichtenheld
Message 10 of 23 in “cvsserver: Make configuration way more flexible”
  1. cvsserver: Make configuration way more flexibleFrank Lichtenheld, Mar 19, 2007
  2. 1/5 cvsserver: Introduce new state variable 'method'Frank Lichtenheld, Mar 19, 2007
  3. 2/5 cvsserver: Handle three part keys in git config correctlyFrank Lichtenheld, Mar 19, 2007
  4. 3/5 cvsserver: Allow to override the configuration per access methodFrank Lichtenheld, Mar 19, 2007
  5. 4/5 cvsserver: Make the database backend configurableFrank Lichtenheld, Mar 19, 2007
  6. Martin LanghoffMar 19, 2007
  7. Frank LichtenheldMar 23, 2007
  8. Frank LichtenheldMar 23, 2007
  9. 5/5 cvsserver: Abort if connect to database failsFrank Lichtenheld, Mar 19, 2007
  10. cvsserver: Use DBI->table_info instead of DBI->tablesFrank Lichtenheld, Mar 31, 2007
  11. Frank LichtenheldMar 31, 2007
  12. 0/3 cvsserver: small corrections and bring documentation up to speedFrank Lichtenheld, Apr 7, 2007
  13. 1/3 cvsserver: small corrections to asciidoc documentationFrank Lichtenheld, Apr 7, 2007
  14. 2/3 cvsserver: Corrections to the database backend configurationFrank Lichtenheld, Apr 7, 2007
  15. 3/3 cvsserver: Add asciidoc documentation for new database backend configurationFrank Lichtenheld, Apr 7, 2007
  16. Junio C HamanoApr 8, 2007
  17. Frank LichtenheldApr 11, 2007
  18. cvsserver: Add asciidoc documentation for new database backend configurationFrank Lichtenheld, Apr 12, 2007
  19. Jakub NarebskiApr 13, 2007
  20. config.txt: Add gitcvs.db* variablesFrank Lichtenheld, Apr 13, 2007
  21. cvsserver: Document the GIT branches -> CVS modules mapping more prominentlyFrank Lichtenheld, Apr 12, 2007
  22. Junio C HamanoApr 12, 2007
  23. Frank LichtenheldApr 12, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.