Browse Source

Merge branch 'dev' of http://git.int.zerotier.com/zerotier/ZeroTierOne into dev

pull/1/head
Adam Ierymenko 7 years ago
parent
commit
03e35b25b8
  1. 1368
      controller/PostgreSQL.cpp
  2. 11
      controller/PostgreSQL.hpp
  3. 2
      docker/Dockerfile
  4. 2
      make-linux.mk

1368
controller/PostgreSQL.cpp

File diff suppressed because it is too large Load Diff

11
controller/PostgreSQL.hpp

@ -23,12 +23,16 @@
#include "DB.hpp"
#include <pqxx/pqxx>
extern "C" {
typedef struct pg_conn PGconn;
}
namespace ZeroTier
{
class _MemberNotificationReceiver;
class _NetworkNotificationReceiver;
/**
* A controller database driver that talks to PostgreSQL
@ -56,8 +60,8 @@ protected:
};
private:
void initializeNetworks(PGconn *conn);
void initializeMembers(PGconn *conn);
void initializeNetworks(pqxx::connection &conn);
void initializeMembers(pqxx::connection &conn);
void heartbeat();
void membersDbWatcher();
void networksDbWatcher();
@ -81,6 +85,9 @@ private:
mutable std::mutex _readyLock;
std::atomic<int> _ready, _connected, _run;
mutable volatile bool _waitNoticePrinted;
friend class _MemberNotificationReceiver;
friend class _NetworkNotificationReceiver;
};
}

2
docker/Dockerfile

@ -4,7 +4,7 @@ MAINTAINER Adam Ierymekno <adam.ierymenko@zerotier.com>, Grant Limberg <grant.li
RUN yum update -y
RUN yum install -y https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm
RUN yum install -y postgresql10
RUN yum install -y postgresql10 libpqxx-devel
RUN yum -y install epel-release && yum -y update && yum clean all
RUN yum -y install clang jemalloc jemalloc-devel

2
make-linux.mk

@ -319,7 +319,7 @@ official: FORCE
make -j4 ZT_OFFICIAL=1 all
central-controller: FORCE
make -j4 LDLIBS="-L/usr/pgsql-10/lib/ -lpq" CXXFLAGS="-I/usr/pgsql-10/include -fPIC" DEFS="-DZT_CONTROLLER_USE_LIBPQ" ZT_OFFICIAL=1 ZT_USE_X64_ASM_ED25519=1 one
make -j4 LDLIBS="-L/usr/pgsql-10/lib/ -lpqxx -lpq" CXXFLAGS="-I/usr/pgsql-10/include -fPIC" DEFS="-DZT_CONTROLLER_USE_LIBPQ" ZT_OFFICIAL=1 ZT_USE_X64_ASM_ED25519=1 one
central-controller-docker: central-controller
docker build -t gcr.io/zerotier-central/ztcentral-controller:${TIMESTAMP} -f docker/Dockerfile .

Loading…
Cancel
Save