postgrespro/mmts

Build issues

Closed this issue · 2 comments

Hello

I have compiled the patched version ( (based on Postgres 13)) from https://github.com/postgrespro/postgres_cluster/tree/rel13_mm_2

and got the message "All of PostgreSQL successfully made. Ready to install."

Next, I see that the contrib/mmts folder is already in the repository. I go to the folder and try to run the command "make install". I get
the make error: * * * There is no rule for building the target "src/multimaster. o" required for "multimaster.so". Stop.

OK, I'm going the other way. Deleted the "contrib/mmts" folder and executed command chain:

cd contrib
git clone https://github.com/postgrespro/mmts/
cd mmts
make install

Then I got the error
src/multimaster. c:13:10: fatal error: access/table. h: There is no such file or directory
#include "access/table.h"

There really is no such file in the "patched version" (based on Postgres 13), but there is in PostgreSQL 13.

As an experiment, I try to throw up the missing files from the original PostgreSQL 13.
I get errors:

src/multimaster. c:1834:18: error: "BackgroundWorker" {aka "struct BackgroundWorker"} has no member named "bgw_type"; did you mean "bgw_name"?
src/multimaster.c:1845:2: error: unknown type name "TableScanDesc"; did you mean "HeapScanDesc"?

etc.

What did I do wrong to build mmts from source ? Should the mmts build currently be done with PostgreSQL 12/13 (not Postgres Pro)? What other patches should be used for this? Are the patches publicly available?

Hi,

Apparently you checked out the wrong branch.
https://github.com/postgrespro/postgres_cluster/tree/rel13_mm_2/contrib
doesn't contain 'mmts' directory. But the steps are correct, you either clone mmts into contrib/ or build it externally with PGXS.

My mistake, thank you