vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| I am investigating the possibility of having stored procedures and functions written in .NET language flavors. I remember a long time ago there was a gborg project wanting to implement it, but that is long gone I guess. anyway.... I think there are two possibilities: a) Use of MS.NET core and implement it only for Windows. b) Use of Mono core and have the possibility to run it also on *nix systems. c) Or perhaps a hybrid of the above would be possible. Any implementation would require to invoke/call an external runtime (Mono or MS.CRL). I wonder what the performance would be. I would like to have your opinion about this idea. Regards, Gevik Babakhani ------------------------------------------------ PostgreSQL NL http://www.postgresql.nl TrueSoftware BV http://www.truesoftware.nl ------------------------------------------------ ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend |
| |||
| Hello I thought about it. It can be great project. Oracle has similar project. Performance will be same as PL/Java probably. There is slow only first call. Regards Pavel Stehule On 30/11/2007, Gevik Babakhani <pgdev@xs4all.nl> wrote: > > I am investigating the possibility of having stored procedures > and functions written in .NET language flavors. I remember a long time > ago there was a gborg project wanting to implement it, but that is long > gone I guess. anyway.... > > I think there are two possibilities: > > a) Use of MS.NET core and implement it only for Windows. > b) Use of Mono core and have the possibility to run it also on *nix systems. > c) Or perhaps a hybrid of the above would be possible. > > Any implementation would require to invoke/call an external runtime (Mono or > MS.CRL). > I wonder what the performance would be. > > I would like to have your opinion about this idea. > > Regards, > Gevik Babakhani > > ------------------------------------------------ > PostgreSQL NL http://www.postgresql.nl > TrueSoftware BV http://www.truesoftware.nl > ------------------------------------------------ > > > ---------------------------(end of broadcast)--------------------------- > TIP 6: explain analyze is your friend > ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate |
| |||
| On Nov 30, 2007 8:31 AM, Gevik Babakhani <pgdev@xs4all.nl> wrote: > I am investigating the possibility of having stored procedures > and functions written in .NET language flavors. I remember a long time > ago there was a gborg project wanting to implement it, but that is long > gone I guess. anyway.... Yeah, I have a copy of the old PL/.NET backed up somewhere. IIRC, it needs to be rewritten, but it would be possible to make it work for both Mono and .NET. -- Jonah H. Harris, Sr. Software Architect | phone: 732.331.1324 EnterpriseDB Corporation | fax: 732.331.1301 499 Thornall Street, 2nd Floor | jonah.harris@enterprisedb.com Edison, NJ 08837 | http://www.enterprisedb.com/ ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate |
| |||
| On Nov 30, 2007 9:20 AM, Jonah H. Harris <jonah.harris@gmail.com> wrote: > Yeah, I have a copy of the old PL/.NET backed up somewhere. IIRC, it > needs to be rewritten, but it would be possible to make it work for > both Mono and .NET. Actually, it was PL/Mono. I'll dig through my stuff and post it somewhere for you. -- Jonah H. Harris, Sr. Software Architect | phone: 732.331.1324 EnterpriseDB Corporation | fax: 732.331.1301 499 Thornall Street, 2nd Floor | jonah.harris@enterprisedb.com Edison, NJ 08837 | http://www.enterprisedb.com/ ---------------------------(end of broadcast)--------------------------- TIP 3: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq |
| |||
| It would we great. Thank you. Regards, Gevik Babakhani ------------------------------------------------ PostgreSQL NL http://www.postgresql.nl TrueSoftware BV http://www.truesoftware.nl ------------------------------------------------ > -----Original Message----- > From: pgsql-hackers-owner@postgresql.org > [mailto > Jonah H. Harris > Sent: Friday, November 30, 2007 4:10 PM > To: Gevik Babakhani > Cc: pgsql-hackers@postgresql.org > Subject: Re: [HACKERS] .NET or Mono functions in PG > > On Nov 30, 2007 9:20 AM, Jonah H. Harris > <jonah.harris@gmail.com> wrote: > > Yeah, I have a copy of the old PL/.NET backed up somewhere. > IIRC, it > > needs to be rewritten, but it would be possible to make it work for > > both Mono and .NET. > > Actually, it was PL/Mono. I'll dig through my stuff and post > it somewhere for you. > > -- > Jonah H. Harris, Sr. Software Architect | phone: 732.331.1324 > EnterpriseDB Corporation | fax: 732.331.1301 > 499 Thornall Street, 2nd Floor | > jonah.harris@enterprisedb.com > Edison, NJ 08837 | http://www.enterprisedb.com/ > > ---------------------------(end of > broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq > ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings |
| |||
| On Fri, Nov 30, 2007 at 02:31:44PM +0100, Gevik Babakhani wrote: > > I am investigating the possibility of having stored procedures > and functions written in .NET language flavors. I remember a long time > ago there was a gborg project wanting to implement it, but that is long > gone I guess. anyway.... > > I think there are two possibilities: > > a) Use of MS.NET core and implement it only for Windows. > b) Use of Mono core and have the possibility to run it also on *nix systems. > c) Or perhaps a hybrid of the above would be possible. > > Any implementation would require to invoke/call an external runtime (Mono or > MS.CRL). > I wonder what the performance would be. > > I would like to have your opinion about this idea. I did look at this at some earlier point as well. One big problem at that time was that once you embedded mono, yuo had all sorts of threads running in your backend ;-) Another way to do it is "the PL/J" way (I think). Which is starting up a separate process with the VM in it and then do RPC of some kind to it. Which has more overhead per call, but lower per backend etc. And a lot less "dangerous". I never got past the thinking stage though. But it would certanily be nice to have! //Magnus ---------------------------(end of broadcast)--------------------------- TIP 7: You can help support the PostgreSQL project by donating at http://www.postgresql.org/about/donate |
| |||
| > I did look at this at some earlier point as well. One big > problem at that time was that once you embedded mono, you had > all sorts of threads running in your backend ;-) yes, threads running around could become a show stopper for both Mono and MS.NET This is something I want to be sure of before I begin. > Another way to do it is "the PL/J" way (I think). Which is > starting up a separate process with the VM in it and then do > RPC of some kind to it. > Which has more overhead per call, but lower per backend etc. > And a lot less "dangerous". This is actually my plan B, hence it is less dangerous. I am thinking the "started process" can stay alive and act as a service of some kind to handle/answer calls form multiple backends and shutdown itself after a period of time being idle. Regards, Gevik Babakhani ------------------------------------------------ PostgreSQL NL http://www.postgresql.nl TrueSoftware BV http://www.truesoftware.nl ------------------------------------------------ ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend |
| |||
| On Fri, Nov 30, 2007 at 04:43:03PM +0100, Gevik Babakhani wrote: > > I did look at this at some earlier point as well. One big > > problem at that time was that once you embedded mono, you had > > all sorts of threads running in your backend ;-) > > yes, threads running around could become a show stopper for both Mono and > MS.NET > This is something I want to be sure of before I begin. Yaeh. > > Another way to do it is "the PL/J" way (I think). Which is > > starting up a separate process with the VM in it and then do > > RPC of some kind to it. > > Which has more overhead per call, but lower per backend etc. > > And a lot less "dangerous". > > This is actually my plan B, hence it is less dangerous. > I am thinking the "started process" can stay alive and act > as a service of some kind to handle/answer calls form multiple > backends and shutdown itself after a period of time being > idle. Yes, you should have just one such process with .Net managed threads running inside it. You just need to find a good RPC library to pass things back and forth between the backend running natively and this special process running in .net. //Magnus ---------------------------(end of broadcast)--------------------------- TIP 2: Don't 'kill -9' the postmaster |
| |||
| On Nov 30, 2007 10:09 AM, Jonah H. Harris <jonah.harris@gmail.com> wrote: > Actually, it was PL/Mono. I'll dig through my stuff and post it > somewhere for you. Just searched my backups and can't seem to find it CVS. Where is that now? -- Jonah H. Harris, Sr. Software Architect | phone: 732.331.1324 EnterpriseDB Corporation | fax: 732.331.1301 499 Thornall Street, 2nd Floor | jonah.harris@enterprisedb.com Edison, NJ 08837 | http://www.enterprisedb.com/ ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings |
| ||||
| Jonah H. Harris wrote: > On Nov 30, 2007 10:09 AM, Jonah H. Harris <jonah.harris@gmail.com> wrote: >> Actually, it was PL/Mono. I'll dig through my stuff and post it >> somewhere for you. > > Just searched my backups and can't seem to find it > CVS. Where is that now? Dead. But Marc has a tarball of the whole thing somewhere and can find it. //Magnus ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match |