Exemple #1
0
class PooledPostgreSQL(PostgreSQL):
    def setUp(self):
        os.system(
            "createdb peeweedbevolve_test && psql peeweedbevolve_test -c 'create extension IF NOT EXISTS hstore;' > /dev/null 2> /dev/null"
        )
        self.db = PooledPostgresqlExtDatabase('peeweedbevolve_test')
        self.db.connect()
        peeweedbevolve.clear()

    def tearDown(self):
        self.db.manual_close()
        os.system('dropdb peeweedbevolve_test')
Exemple #2
0
class PostgreSQLProvider():
    def __init__(self, logger=None):
        self.database = PooledPostgresqlExtDatabase(
            database=os.environ.get('DB_NAME'),
            user=os.environ.get('DB_USER'),
            password=os.environ.get('DB_PASSWORD'),
            host=os.environ.get('DB_HOST'),
            port=os.environ.get('DB_PORT'),
            max_connections=os.environ.get('DB_POOL_MAX_CONNECTIONS'),
            stale_timeout=os.environ.get('DB_POOL_TIMEOUT'),
        )
        self.open_connection()
        self.logger = logger

    def __del__(self):
        self.close_connection()

    def open_connection(self):
        self.database.connect(reuse_if_open=True)
        print('Connected to PostgreSQL database')

    def close_connection(self):
        self.database.close()
        print('Connection to PostgreSQL database closed')
Exemple #3
0
                                       server_side_cursors=True,
                                       max_connections=2000,
                                       stale_timeout=300)  # 5 min

logger = logging.getLogger('snap.models')
logger.setLevel(logging.ERROR)


class Jobs(peewee.Model):
    title = peewee.CharField()
    category = peewee.CharField()
    status = peewee.CharField()
    location = peewee.CharField()

    class Meta:
        database = database
        primary_key = False
        schema = 'schema_snap'


if __name__ == "__main__":

    # Connect to our database.
    database.connect()
    # Create schemas
    try:
        database.create_tables([Jobs], safe=True)
    except peewee.OperationalError as e:
        logger.warn('Creating db scheme. Failed to create table Jobs'
                    ' or it already exist.')