2010-06-29 19 views
5

मैं पोस्टग्रेएसक्यूएल के लिए लिखे गए उपयोगकर्ता परिभाषित कार्यों और उपयोगकर्ता परिभाषित एग्रीगेट्स के एक सेट के विकास को ले रहा हूं, और मुझे यह पता लगाने में कठिनाई हो रही है कि कोड लगातार गड़बड़ कर रहा है। क्या किसी को पता है कि सीडी + में लिखे गए यूडीएफ के साथ जीडीबी का उपयोग करना संभव है या नहीं? कुछ Google खोजों ने कुछ भी नहीं बदला। मैंने यूडीएफ को डीबग करने से पहले ईएलओजी का उपयोग किया है, लेकिन यह परियोजना काफी जटिल है कि मुझे कुछ और अधिक शक्तिशाली चाहिए।PostgreSQL उपयोगकर्ता परिभाषित कार्यों को डिबग करना

धन्यवाद, केविन

उत्तर

2

आप एक चल PostgreSQL के लिए gdb संलग्न करने के लिए सक्षम backend- उस में छोड़ दिया प्रतीकों डिबगिंग कि सुबोध बनाने के लिए है, हालांकि आप शायद अपने PostgreSQL का निर्माण सुनिश्चित करने के लिए चाहता हूँ होना चाहिए। यदि आप select pg_backend_pid() करते हैं तो आपको बैकएंड की प्रक्रिया आईडी मिल जाएगी जिसके साथ आप काम कर रहे हैं, और उसके बाद gdb संलग्न कर सकते हैं (--pid स्विच या attach कमांड का उपयोग करके)। यह दृष्टिकोण केवल तभी उपयोगी होता है जब आप psql का उपयोग कर समस्या को पुन: उत्पन्न कर सकते हैं, उदाहरण के लिए, हालांकि: नई बैकएंड प्रक्रियाएं स्वचालित रूप से एक जीडीबी होने के लिए संलग्न होती हैं ... कठिन है। उदाहरण के लिए, आप प्रमाणीकरण समाप्त होने के बाद postgresql प्रतीक्षा करने के लिए post_auth_delay जैसे विकल्प सेट कर सकते हैं, जिससे आपको प्रोसेसिंग जारी रखने से पहले डीबगर संलग्न करने का मौका मिलता है।

संबंधित मुद्दे