पोस्टग्रेज में किसी भूमिका के लिए statement_timeout असाइन करना सेटिंग को बनाए रखने के लिए प्रतीत नहीं होता है।

उदाहरण:

-- Set the statement_timeout on a role
alter role api_user set statement_timeout = '500ms';

-- Start a transaction
begin;
    -- Assume the role
    set role api_user;

    -- Display statement_timeout setting
    show statement_timeout;
    -- |--------------------------|
    -- | statement_timeout (text) |
    -- |--------------------------|
    -- | 0                        |
    -- |--------------------------|

चूंकि statement_timeout api_user के लिए 500ms पर सेट किया गया था, मुझे आउटपुट के रूप में 500ms की उम्मीद थी। इसके बजाय, यह डिफ़ॉल्ट statement_timeout का 0, या असीमित दिखाता है।

मुझे यहां क्या समझ नहीं आ रहा है?

1
Oliver Rice 16 फरवरी 2021, 15:59

1 उत्तर

सबसे बढ़िया उत्तर

सत्र जारी है, लेकिन SET ROLE या SET SESSION AUTHORIZATION के साथ भूमिका निभाने से पैरामीटर सेट नहीं होता है। इसके लिए आपको डेटाबेस में भूमिका api_user के रूप में लॉग इन करना होगा।

1
Laurenz Albe 16 फरवरी 2021, 16:28