Обсуждение: BUG #2248: Fix for terminal server

Поиск
Список
Период
Сортировка

BUG #2248: Fix for terminal server

От
"Fix for terminal server"
Дата:
The following bug has been logged online:

Bug reference:      2248
Logged by:          Fix for terminal server
Email address:      anthony.communier@laposte.net
PostgreSQL version: 8.1.2
Operating system:   Win 32
Description:        Fix for terminal server
Details:

I am sorry, these is not a bug report but i don't know where to post the
following message :

In order to fix problem with shared memory on the Win32 Terminal Server all
kernel object must be prefixed with Global\

Kernel Object are used by the following functions :

CreateEvent
CreateSemaphore
OpenSemaphore
CreateFileMapping
OpenFileMapping

I am not sure for Named Pipe

Those functions are used in the source directory src\backend\port\win32

I can't test these fix because I have no terminal server at home, but it
works fine with win32 services i have developped at work. So the following
lines can help you to solve the problem quickly :

Fix for version 8.1.2 :


sema.c:l 142
sprintf(semname, "Global\\PG_SEMSET.%d.", semKey);

shmem.c:l 92
sprintf(szShareMem, "Global\\PostgreSQL.%d", memKey);

I think that's all.

These problem should be encountered with fast user switch on Win XP but i am
not sure. Fast user switch is implemented like Terminal Server as far as i
know.

Docs can be found there :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/termserv/te
rmserv/kernel_object_namespaces.asp


I hope it helps you.

Regards,

Anthony COMMUNIER

Re: BUG #2248: Fix for terminal server

От
"Magnus Hagander"
Дата:
> The following bug has been logged online:
>=20
> Bug reference:      2248
> Logged by:          Fix for terminal server
> Email address:      anthony.communier@laposte.net
> PostgreSQL version: 8.1.2
> Operating system:   Win 32
> Description:        Fix for terminal server
> Details:=20
>=20
> I am sorry, these is not a bug report but i don't know where=20
> to post the following message :
>=20
> In order to fix problem with shared memory on the Win32=20
> Terminal Server all kernel object must be prefixed with Global\
>=20
> Kernel Object are used by the following functions :
>=20
> CreateEvent
> CreateSemaphore
> OpenSemaphore
> CreateFileMapping
> OpenFileMapping
>=20
> I am not sure for Named Pipe
>=20
> Those functions are used in the source directory=20
> src\backend\port\win32
>=20
> I can't test these fix because I have no terminal server at=20
> home, but it works fine with win32 services i have developped=20
> at work. So the following lines can help you to solve the=20
> problem quickly :=20
>=20
> Fix for version 8.1.2 :
>=20
>=20
> sema.c:l 142
> sprintf(semname, "Global\\PG_SEMSET.%d.", semKey);
>=20
> shmem.c:l 92
> sprintf(szShareMem, "Global\\PostgreSQL.%d", memKey);
>=20
> I think that's all.
>=20
> These problem should be encountered with fast user switch on=20
> Win XP but i am not sure. Fast user switch is implemented=20
> like Terminal Server as far as i know.
>=20
> Docs can be found there :=20
>=20
> http://msdn.microsoft.com/library/default.asp?url=3D/library/en-
> us/termserv/te
> rmserv/kernel_object_namespaces.asp

Have you actually tried this, or are you just guessing?

Because during the dev of 8.0, we definitly tried that. And it didn't
help then. But perhaps something else has changed..

//Magnus