Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
#51 Général » Connexion à PG 9.3 super lente » 29/09/2014 16:26:28
- Postgres.0
- Réponses : 6
Bonjour,
j'ai une application web qui tourne sur une base PG 9.3 ( Tomcat et Hibernate).
La base fait quelques 40 MB le shared buffers fait 2 GB.
Le souci est que des fois les utilisateurs qui essaient de se connecter à l'application peuvent attendre jusqu'à 5mn pour avoir une connexion.
Merci de votre aide, c'est très critique.
Durant ma recherche sur le web, j'ai lu que ça pouvait être lié au mulitipath interface, mais je ne sais pas comment faire un check.
Cordialement
#52 Re : Général » Deadlock sur tables introuvales » 29/09/2014 11:13:43
Merci, effectivement!
#53 Général » Deadlock sur tables introuvales » 24/09/2014 18:00:45
- Postgres.0
- Réponses : 2
Bonjour,
dans la log syslog, jai un deadlock sur des tables 18398 et 18444 que je n'arrive pas à trouver quand je fais la requête suivante:
SELECT * FROM pg_class WHERE relfilenode = 18444
Postgres 9.3 ne les connait pas
A votre avis d'ou peuvent t-elles venir ces tables?
CEST ERROR: deadlock detected
postgres[13045]: [7-2] 2014-09-23 05:33:41 CEST DETAIL: Process 13045 waits for AccessExclusiveLock on relation 18398 of database 18294; blocked by process 10224.
postgres[13045]: [7-3] #011Process 10224 waits for AccessShareLock on relation 18444 of database 18294; blocked by process 13045.
Merci
#54 Re : Général » pgbouncer » 24/09/2014 11:02:28
#55 Re : Général » pgbouncer » 23/09/2014 16:22:58
Comment le savoir sur debian?
#56 Re : Général » pgbouncer » 23/09/2014 11:58:13
Je n'ai pas de firewall ni de routeur.
Je viens de reproduire le problème en me connectant et déconnectant 3 fois successives avec psql.
#57 Re : Général » pgbouncer » 23/09/2014 10:02:02
Merci beaucoup, je vais explorer cette piste.
#58 Re : Général » pgbouncer » 22/09/2014 15:08:20
Juste avant, j'ai ce message d'erreur dans la log de pgbouncer:
WARNING sbuf_connect failed: Network is unreachable
closing because: connect failed
pgbouncer n'arrive pas à se connecter au serveur, mais pourquoi?
Si le nombre de connexions max est atteint, je dois avoir impérativement un message dans la log qui le signale.
#59 Re : Général » pgbouncer » 22/09/2014 15:02:51
Je n'ai rien de particulier au même moment côté postgres
Des fois côté postgres, j'ai un checkpoint au même moment que l'erreur dans pgbouncer.
#60 Général » pgbouncer » 22/09/2014 11:59:32
- Postgres.0
- Réponses : 10
Bonjour,
En prod, sur une debian avec PG 9.3, j'ai de temps en temps cette erreur:
Pooler Error: pgbouncer cannot connect to server
Cette arrive quand j'essaye de me connecter plusieurs fois successives avec psql.
Quelqu'un aurait-il une idée?
Merci
#61 Re : Général » effective_io_concurrency » 17/09/2014 11:21:04
Merci beaucoup!
#62 Re : Général » effective_io_concurrency » 17/09/2014 10:45:39
Merci beaucoup!
je profite de ce file pour poser une question sur la nature des disques à utiliser pour les différents répertoires de postgresql
je sais que les fichiers de données doivent être sur des disques rapides.
Quid des journaux de transactions ?
Quid des logs applicatifs ?
Quid des fichiers temporaires ?
Quid des sauvegardes?
J'ai mis les fichiers de données sur des disques rapides.
J'ai également mis les fichiers temporaires sur des disques rapides
Il me reste un disque rapide et un autre moins performant.
Je ne sais pas lequel de ces disques je dois utiliser pour le pg_xlog.
Merci de votre réponse
#63 Général » effective_io_concurrency » 15/09/2014 18:05:53
- Postgres.0
- Réponses : 4
Bonjour,
quelqu'un peut-il me dire combien je mets pour ce paramètre?
quand je fais :
df -h
Sys. fich. Taille Util. Dispo Uti% Monté sur
rootfs 42G 1,2G 39G 3% /
udev 10M 0 10M 0% /dev
tmpfs 4,8G 220K 4,8G 1% /run
/dev/disk/by-uuid/131ad96f-80bd-4ec7-b43f-3e171524d036 42G 1,2G 39G 3% /
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 9,9G 0 9,9G 0% /run/shm
/dev/vda1 4,6G 138M 4,3G 4% /tmp
/dev/sda 2,4T 235M 2,3T 1% /opt/postgresql
/dev/sdc 247G 188M 234G 1% /opt/postgresql/log
/dev/sdb 964G 200M 915G 1% /opt/postgresql/tmpQuelle est la commande linux qui permet d'avoir des informations qui peuvent aider à paramétrer cette variable?
Merci
#64 Re : Optimisation » Autovacuum endormi ? » 10/09/2014 17:44:27
Bonjour gleu,
comment pouvez vous savoir que la table fait 44GB.
Pouriez vous expliquer un peu plus votre estimation ( surtout la division )
#65 Re : Général » Positionnement des clés étrangères dans le cadre d'un partitionnement » 25/06/2014 14:46:06
Puisque le partitionnement n'est pas dynamique en Postgres, il est important d'avoir une clef étrangère sur la table mère.
Car si les données insérées doivent aller dans une partition qui n'a pas encore été crée, Postgres les envoie directement dans la table mère.
#66 Re : Général » Positionnement des clés étrangères dans le cadre d'un partitionnement » 25/06/2014 14:39:04
SI vous optez pour les triggers, dans ce cas vous n'avez aucun souci à utiliser le COPY dans la table mère.
Si vous optez pour les règles, il faut faire le COPY directement dans la partition.
#67 Re : Général » Positionnement des clés étrangères dans le cadre d'un partitionnement » 20/06/2014 14:28:38
Non pas du tout.
Vos données vont soit dans la table mère soit dans la table fille.
Je vous conseille de remplacer les triggers par les règles, si bien sûr vous n'êtes pas amené à faire des inserts massifs.
#68 Re : Général » L'ordre des indexes a-t-il une importance ? (cas multi index) » 28/04/2014 15:02:59
Bonjour,
dans postgres, l'index sera bien utilisé pour les cas:
SELECT * FROM ma_table WHERE c = 1;
SELECT * FROM ma_table WHERE b = 1 AND c = 1;Ce pendant, il sera moins efficace que si il y avait une condition a=1.
Par contre je ne suis pas sûr pour la troisième, à tester.
SELECT * FROM ma_table WHERE b = 1 OR c = 1;Pour le 3
tu as bien raison, il faut mettre la colonne qui a le plus petit nombre de valeurs en premier.
Pour le ANALYZE, comme a bien dit gleu, il faut exécuter un analyze périodique pour mettre à jour test stats, si ma mémoire est bonne c'est le même mécanisme chez oracle.
#69 Re : Général » impossible de tuer une requête » 28/03/2014 11:36:31
Bonjour,
quand tu relance ta requête, est-ce-que tu es sur que les données n'étaient pas dans le cache système?
#70 Re : Général » arrondi superieur » 28/03/2014 11:06:23
Je mets la solution que j'ai utilisé pour ceux que ça intéresserait!
CREATE OR REPLACE FUNCTION arrondir_sup_type_excel ( prix_htc numeric) RETURNS numeric AS
$$
DECLARE
v_prix numeric;
S_QUERY text;
v_digit text;
BEGIN
v_prix := trunc(prix_htc,3);
S_QUERY := 'SELECT SUBSTR('||quote_literal(v_prix) || ',char_length(' || quote_literal(v_prix) ||'),char_length('|| quote_literal(v_prix) ||'))';
EXECUTE S_QUERY INTO v_digit;
IF v_digit = '0' THEN
RETURN trunc(v_prix,2);
ELSE
RETURN trunc(v_prix,2) +0.01;
END IF;
END
$$
LANGUAGE 'plpgsql'
STABLE
;Comme j'ai affaire à des utilisateurs ils m'ont suggérés que dans excel arrondir_sup(1.00000009,2) = 1.10.
Alors que pour moi c'est bien 1.01.
Merci arthurr pour tes réponses.
#71 Re : Général » arrondi superieur » 20/03/2014 18:25:10
OK merci, je me suis vautré.
#72 Re : Général » arrondi superieur » 20/03/2014 17:49:43
SELECT arrondir_sup(1.00000009,2) ;
arrondir_sup
-----------------
1.01
alors que le résultat attendu est 1.10
#73 Re : Général » arrondi superieur » 20/03/2014 17:03:25
Merci arthur!
#74 Re : Général » arrondi superieur » 19/03/2014 11:44:38
Si quelqu'un a une piste pour compter le nombre de chiffre après une virgule je suis preneur.
Je suis également preneur de toute indication qui pourra m'aider à écrire la procédure stockée évoquée par arthur.
#75 Re : Général » arrondi superieur » 14/03/2014 16:39:08
Ok, merci!