On Wed, Mar 9, 2016 at 7:16 AM, Haribabu Kommi <kommi.harib...@gmail.com> wrote: > On Wed, Mar 9, 2016 at 10:06 PM, Amit Kapila <amit.kapil...@gmail.com> wrote: >> On Wed, Mar 9, 2016 at 11:46 AM, Haribabu Kommi <kommi.harib...@gmail.com> >> wrote: >>> >>> >>> I tried replacing the random() with PostmaterRandom() for a test and it >>> worked. >>> This is generating different random values, so the issue is not occurring. >>> >>> "Global/PostgreSQL.2115609797" >>> >>> I feel, we should add the the data directory path + the random number to >>> generate the name for dynamic shared memory, this can fix problem. >>> >> >> As mentioned above, I think if we can investigate why this error is >> generated, that will be helpful. Currently the code ensures that if the >> segment already exists, it should retry to create a segment with other name >> (refer dsm_impl_windows()), so the point of investigation is, why it is not >> going via that path? I am guessing due to some reason CreateFileMapping() >> is returning NULL in this case whereas ideally it should return the existing >> handle with an error ERROR_ALREADY_EXISTS. > > DEBUG: mapped win32 error code 5 to 13 > > Yes, the CreateFileMapping() is returning NULL with an error of > ERROR_ACCESS_DENIED. > I am not able to find the reason for this error. This error is occurring only > when the PostgreSQL is started as a service only.
Another question is: why are both postmasters returning the same random number? That's not very, uh, random. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers