[résolu] pb longueur de chaîne avec dbi:PgPP

pb longueur de chaîne avec dbi:PgPP [résolu] - Perl - Programmation

Marsh Posté le 27-09-2005 à 19:44:59    

salut
 
petit pb avec une requête qui à un moment me renvoye une longue chaîne de caractères (8000)
visiblement les longues chaîne posent problême au driver PgPP il me dit :
"Can't call method "fetch" on an undefined value"
 
si j'ai de la chance quelqu'un a déjà eu le même problême et as trouvé une solution  :) parceque ca me bloque un peu  :pt1cable:  
 
merci


Message édité par bill_clinton le 18-10-2005 à 00:43:45
Reply

Marsh Posté le 27-09-2005 à 19:44:59   

Reply

Marsh Posté le 27-09-2005 à 20:12:21    

Sûr que c'est pas un problème dans ta requête ?
 
Parce que 8ko... ça me semble pas tres grand en taille, je pense avoir explosé ça plusieurs fois sans souci particulier. C'était avec le driver Sybase, mais je ne pense pas que ça change quelque chose ?

Reply

Marsh Posté le 27-09-2005 à 20:24:02    

nanan pas de soucis sur la requête, j'ai fait un test avec :
 
my $sqls = "select 1, 'AAAAAAA' from profilesanswers pa where answer_id = 36507";
 
bien sûr avec plus de A, j'en ai mis 8000 et ca bloque à partir 4353

Reply

Marsh Posté le 27-09-2005 à 21:49:44    

Peut-être une limite soit au niveau du driver, soit au niveau de la base alors. :/
 
Dans les deux cas je ne vois pas comment on peut résoudre le problème, à moins de fractionner la requête, soit en créant des vues intermédiaires, soit en générant une procédure stockée (si applicable à ta base, je ne la connais pas).

Reply

Marsh Posté le 28-09-2005 à 10:55:13    

ca doit être au niveau du driver je pense car j'ai testé la requête avec le requetteur de pg et ca fonctionne correctement
 
je viens de voir les limitations de PgPP et les champs blob ne sont pas implémentés
donc visiblement, les résultats de requêtes sont peut-être limités
 
je viens d'envoyer un mail à oyama@module.jp le développeur du module j'espère qu'il pourra trouver un solution ..

Reply

Marsh Posté le 28-09-2005 à 16:04:22    

à priori il ne te repondra pas: il y a un bug signalé et patché despui longtemsp sur son moduel MysqlPP (2ans) et il ne l'a toujours pas appliqué...

Reply

Marsh Posté le 28-09-2005 à 16:04:48    

tu devrais essayer d'installer le vrai drvier Pg (DBD::Pg)

Reply

Marsh Posté le 28-09-2005 à 17:10:41    

pas grave j'ai posté sur la buglist du cpan et un gars m'a filé un patch, si quelqu'un passe dans le coin et cherche une solution, elle est là :
 
http://rt.cpan.org/NoAuth/Bug.html?id=14791
 
sinon pour le DBD-Pg j'avais déjà essayé mais il me semble qu'il veut avoir postgres d'installé sur la même machine, dans mon cas je l'utilise à partir d'une machine distante. En tout cas son patch pour les long-string me convient parfaitement ;)

Reply

Marsh Posté le 28-09-2005 à 17:22:54    

Cool que tu aies pu passer outre le problème.  
 
Je retiens la solution, ça pourra me donner des pistes si un jour je rencontre un cas similaire. :jap:

Reply

Marsh Posté le 30-09-2005 à 12:10:18    

Tu m'etonnes j'ai bien eu du po sur ce coup là, j'ai eu le patch en 37 min chrono ;)
 
mais bon j'aime bien perl, je l'utilise peut-être pour 5% de mes dev mais en général dès qu'on a un bug sur un module ca prend pas longtemps pour avoir une réponse


Message édité par bill_clinton le 30-09-2005 à 12:15:56
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed