Toon posts:

[PGSQL/libpq] Functie geeft soms foute waarde

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een applicatie gemaakt welke periodiek queries uitvoert in een postgres-database. De applicatie roept alleen maar functies binnen de database aan, zodat deze door de eindgebruikers aangepast kunnen worden.

Dit werkt allemaal, maar bij sommige functies komt er af en toe een foute waarde terug. Na controle bleek dat een functie die bijv. een int4 als waarde terug moet geven, heel soms 'f' of 't' teruggeeft.

In de applicatie maak ik gebruik van meerdere threads, welke onafhankelijk van elkaar de functies aanroepen. Zou het kunnen zijn dat de database overbelast wordt en daarom gekke dingen terugstuurt? Dit lijkt mij eerlijk gezegd niet logisch maar ik vraag me af hoe het anders komt dat ik onmogelijke waarden terugkrijg.

Dit gebeurt bij elke willekeurige functie op een willekeurige tijd. Als ik een breakpoint plaats bij de fout en de betreffende query via pgAdmin invoer, krijg ik wel gewoon een int4-waarde eruit. Een thread doet er gemiddeld ongeveer 8 seconden over om alle queries uit te voeren (+/- 200-300 queries in totaal), dus zo'n 25 tot 50 queries per seconde. Er lopen zo'n 1.5 tot 5 threads tegelijk. Is dit een mogelijke oorzaak?

[ Voor 4% gewijzigd door Verwijderd op 11-01-2004 20:28 ]