From: craig at 2ndquadrant.com (Craig Ringer) Date: Mon, 20 Jul 2015 10:10:02 +0800 Subject: [Pljava-dev] The pljava Project is dead (LONG but I hope interesting) In-Reply-To: References: <54DCEC2D.5050909@cgf.upv.es> <54DCF04D.9080805@manifest.co.uk> <54DD08B7.5070902@tada.se> <55AC048F.30401@anastigmatix.net> Message-ID: On 20 July 2015 at 08:42, Bear Giles wrote: > It's a big jump in scope but don't some databases have a native type for > java classes and a way to execute them? (It's not hard to imagine a UDT for > jar files as well.) It's not always possible to load jar files from the > operating system. Personally that fills me with horror, but each to their own. You should be able to do this with PL/Java already if you really want to. Just implement a custom classloader. Anyway, that's a totally separate topic to how to make Pl/Java easier to maintain, more attractive to use/work on, and more lively looking. Personally I think the underlying impedence mismatch between PostgreSQL shared-nothing-by-default multiprocessing architecture and Java's shared-everything-by-default multithreading model limits the appeal and utility of PL/Java as much as anything. Especially since the JVM doesn't like being fork()ed and is designed around a heavyweight startup long-running process approach. That said, Pl/Java could expose the new dynamic shared memory features in PostgreSQL to applications, which would permit apps to pass serialized objects around via shared memory, and that'd meet most inter-process communication needs. -- Craig Ringer http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services