From: David E. W. <da...@ju...> - 2014-01-21 21:47:09
|
Postgres-XCers, I forked Devrim’s RPM spec file for Postgres 9.3 on EL-6 and started on building RPMs for XC. You can see my progress here: https://github.com/theory/postgres-xc-rpm It successfully builds these RPMs: * postgresxc11-docs-1.1.0 * postgresxc11-contrib-1.1.0 * postgresxc11-plperl-1.1.0 * postgresxc11-server-1.1.0 * postgresxc11-pltcl-1.1.0 * postgresxc11-debuginfo-1.1.0 * postgresxc11-devel-1.1.0 * postgresxc11-test-1.1.0 * postgresxc11-1.1.0 * postgresxc11-libs-1.1.0 * postgresxc11-plpython-1.1.0 Not bad, right? However, I have a few questions and suggestions about things I’ve found: * I suggest using the version in the decompressed directory prefix. The tarball is called “pgxc-v1.1.tar.gz”, but decompresses into a directory named “postgres-xc”. I think these should be the same. In other words, the the directory should be named “pgxc-v1.1”. Or, if you wanted things to be closer to what Postgres and other projects do, maybe call the tarball “postgres-xc-1.1.tar.gz” and the directory “postgres-xc-1.1”. Or maybe “postgresxc-1.1.tar.gz” and the directory “postgresxc-1.1”. Thoughts? * I’m using “postgresxc” for the RPM name. This keeps it more or less in line with the Postgres core, which uses “postgresql”. Make sense to you? Or is the hyphen strongly preferred? * I’m building with the directory path /usr/pgxc-1.1 instead of /usr/pgsql-1.1 (or /usr/pgsql-9.2). I think it would be reasonable for the default to use “pgxc” instead of “pgsql”, again, to keep the two things distinct. Thoughts? * In that vein, it would be useful to allow “pgxc” in the directory path. I refer to the “NOTE” just below the docs for --htmldir here: http://postgres-xc.sourceforge.net/docs/1_1/install-procedure.html It says: > First, the string "/postgresql" is automatically appended to datadir, sysconfdir, and docdir, unless the fully expanded directory name already contains the string "postgres" or "pgsql" I suggest appending “or pgxc” to that list. Here’s a patch for that: https://github.com/theory/postgres-xc-rpm/blob/master/SOURCES/rpm-pgxc.patch (Though that patch also replaces “/postgresql” with “/pgxc”, which you might not want. Maybe it should be “/postgrexc”?) * Have you considered building the docs before shipping? Most folks don’t have jade installed, so I think the Postgres core guys build the docs before taring up the release. For the RPM I'm just building them, so no biggie there, but I doubt I’d ever build them on my Mac. * Finally, does the pgxc community have an interest in hosting a Yum repository the way pgrpms does? Or should I just try to get it into pgrpms and see what happens? It might be more complicated than they want, since they build all the other stuff around each version of Postgres. So you can install postgres92 or postgres93, and if you want PostGIS, you install the corresponding postgis92 or postgis93. Not sure how that would be handled for XC. I mean, it would be postgis11, but eventually there might be overlap in the version, right? Will be starting an experiment with XC over the next few weeks, so I expect to have more questions, though probably fewer about packaging from here on in. :-) Thanks, David |