From: Thomas P. <th...@po...> - 2008-04-07 20:04:25
Attachments:
db_prepare_bool_pgsql.txt
|
Hi, with lastest SVN, I can't create a user because db_prepare_bool returns int value when postgresql is waiting for boolean values ( http://www.postgresql.org/docs/8.3/interactive/datatype-boolean.html ) Here is a patch which corrects this problem with pgsql 8.3.1. I will continue to test mantis with postgresql. Thanks. Index: core/database_api.php =================================================================== --- core/database_api.php (revision 5156) +++ core/database_api.php (working copy) @@ -582,7 +582,18 @@ # -------------------- # prepare a boolean before DB insertion function db_prepare_bool( $p_bool ) { - return (int)(bool)$p_bool; + $t_db_type = config_get_global( 'db_type' ); + + switch( $t_db_type ) { + case 'postgres': + case 'postgres64': + case 'postgres7': + case 'pgsql': + return ((bool)$p_bool) ? "TRUE" : "FALSE"; + + default: + return (int)(bool)$p_bool; + } } # -------------------- |
From: Gianluca S. <gi...@gm...> - 2008-04-10 23:11:04
|
On Mon, Apr 7, 2008 at 10:04 PM, Thomas Poindessous <th...@po...> wrote: > with lastest SVN, I can't create a user because db_prepare_bool > returns int value when postgresql is waiting for boolean values ( > http://www.postgresql.org/docs/8.3/interactive/datatype-boolean.html ) > > Here is a patch which corrects this problem with pgsql 8.3.1. I will > continue to test mantis with postgresql. I don't use pgsql so take this with a grain of salt... the page you linked states pgsql is able to use '1' for true and '0' for false values I think we are using exactly this approach and if the user creation does not work, there is probably some query around to be fixed... |
From: Gianluca S. <gi...@gm...> - 2008-04-10 23:13:18
|
On Fri, Apr 11, 2008 at 1:11 AM, Gianluca Sforna <gi...@gm...> wrote: > I think we are using exactly this approach and if the user creation > does not work, there is probably some query around to be fixed... > Possibly, this one.... diff --git a/core/user_api.php b/core/user_api.php index cad24d5..e108695 100644 --- a/core/user_api.php +++ b/core/user_api.php @@ -441,7 +441,7 @@ enabled, access_level, login_count, cookie_string, realname ) VALUES ( '$c_username', '$c_email', '$c_password', '" . db_now() . "', '" . db_now() . "', - $c_enabled, $c_access_level, 0, '$t_cookie_string', '$c_realname')"; + '$c_enabled', $c_access_level, 0, '$t_cookie_string', '$c_realname')"; db_query( $query ); # Create preferences for the user |