[Obm] PostgreSQL - version
PMA
pm at alamy.fr
Wed Aug 6 17:57:46 CEST 2008
Mehdi Rande a écrit :
>
> Qu'est ce que vous entendez exactement par insertion multi-lignes?
> des insert type INSERT INTO X (...) VALUES (....), (....) ?
> ou des INSERT INTO X (...) SELECT .... FROM Y WHERE .... ?
> Normalement il ne devrait pas y avoir du premier type, le deuxième par
> contre est assez souvent utilisé mais il est supporté par postgres 8.1.
Je parle effectivement de INSERT INTO X (...) VALUES (....), (....). Ce
n'est supporté qu'à partir de pgsql 8.2.
Les inserts simples ne me posent évidemment pas de soucis ;)
>
> Pourriez-vous me donner l'erreur exact? le script semble tourner
> correctement sur mes vm etch.
Je précise de nouveau que j'utilise OBM 2.1.10:
- Lancement du script /scripts/2.1/install_obmdb_2.1.sh
- Erreurs lors des appels à admin_data_index.php -a data_update -m group:
------------------------------------------------------------------------------
*** Public Groups : 9 to update
------------------------------------------------------------------------------
Group #1 (id=4) Admin :
Warning: pg_query(): Query failed: ERREUR: erreur de syntaxe sur ou
près de « , » at character 107 in
/var/www/obm/obminclude/phplib/db_pgsql.inc on line 85
</td></tr></table><b>Database error:</b> Invalid SQL: INSERT INTO
of_usergroup (
of_usergroup_group_id,
of_usergroup_user_id
) VALUES ('4', '6'), ('4', '7')<br>
<b>PostgreSQL Error</b>: 1 (ERREUR: erreur de syntaxe sur ou près de «
, » at character 107)<br>
Problem !
Group #2 (id=5) Commercial :
Warning: pg_query(): Query failed: ERREUR: erreur de syntaxe sur ou
près de « , » at character 107 in
/var/www/obm/obminclude/phplib/db_pgsql.inc on line 85
</td></tr></table><b>Database error:</b> Invalid SQL: INSERT INTO
of_usergroup (
of_usergroup_group_id,
of_usergroup_user_id
) VALUES ('5', '6'), ('5', '7')<br>
<b>PostgreSQL Error</b>: 1 (ERREUR: erreur de syntaxe sur ou près de «
, » at character 107)<br>
Problem !
Group #3 (id=6) Production :
Warning: pg_query(): Query failed: ERREUR: erreur de syntaxe sur ou
près de « , » at character 107 in
/var/www/obm/obminclude/phplib/db_pgsql.inc on line 85
</td></tr></table><b>Database error:</b> Invalid SQL: INSERT INTO
of_usergroup (
of_usergroup_group_id,
of_usergroup_user_id
) VALUES ('6', '6'), ('6', '7')<br>
<b>PostgreSQL Error</b>: 1 (ERREUR: erreur de syntaxe sur ou près de «
, » at character 107)<br>
Problem !
Group #4 (id=7) grpTest00 :
Warning: pg_query(): Query failed: ERREUR: erreur de syntaxe sur ou
près de « , » at character 107 in
/var/www/obm/obminclude/phplib/db_pgsql.inc on line 85
</td></tr></table><b>Database error:</b> Invalid SQL: INSERT INTO
of_usergroup (
of_usergroup_group_id,
of_usergroup_user_id
) VALUES ('7', '6'), ('7', '7')<br>
<b>PostgreSQL Error</b>: 1 (ERREUR: erreur de syntaxe sur ou près de «
, » at character 107)<br>
Problem !
Pour les groupes 5 à 9 pas de problème. J'ai inséré manuellement ces
enregistrements dans la-table-qui-va-bien. Mais je m'inquiétais de
l'utilisation de ces inserts multi-lignes dans le reste du code PHP.
(j'avoue que j'ai pas cherché)
>
> L'environnement Debian GNU/Linux 'etch' est également l'une de nos cible
> de prédilection, cependant il faut avouer que le support de postgresql
> dans la 2.1 laisse à désirer. Si certains modules marche correctement
> avec ce SGBD d'autre reste instables.
> Nous avons actuellement entamé un gros chantier pour le support complet
> de postgresql dans la version 2.2. Si vous ne désirez qu'utiliser les
> fonctionnalités de crm (contacts, sociétés, ...) et l'agenda, la version
> 2.1 fonctionne correctement sous postgresql cependant si vous désirez
> utilisé les fonctionnalités de groupware (mail, ldap...), le mieux pour
> un passage en production avec postgresql en SGBD est attendre la
> version 2.2.
>
C'est noté concernant la probable instabilité de certains modules.
J'ai également rencontré pas mal de soucis avec les scripts et libs perl
fournis dans la version 2.1. En vrac et non exhaustif:
* - mauvaise syntaxe 'connect' DBI/DBD avec postgresql dans OBM::dbUtils
* - utilisation de croak sans Carp dans OBM::Ldap::ldapEngine
* - requêtes erronées genre LEFT JOIN avec des double-quotes au lieu
de simple-quotes ou extrêmement orientées MySQL genre INSERT IGNORE, ...
Etant donné que j'étais très surpris de rencontrer autant de
désagréments, j'ai jeté un oeil dans le svn pour vérifier s'il existait
quelques correctifs et je me suis attardé sur la version 2.2 qui corrige
effectivement pas mal de trucs.
Une dernière question.
Actuellement la plate-forme tourne avec MySQL. Afin de correctement
tester le produit dans son entier (http/sgdbr/ldap/smtp/imap/...),
est-il préférable que je reste en 2.1 et Mysql afin d'éviter les
déconvenues ou bien passer 2.2 et rester avec Postgre ?
(à noter que le test est un véritable test, c'est à dire pas uniquement
technique, mais également avec des utilisateurs) ?
Merci, bonne fin de journée.
More information about the Obm
mailing list