Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Postgres implementation. #282

Merged
merged 5 commits into from
Nov 5, 2020
Merged

Conversation

jholdstock
Copy link
Member

This commit adds a full postgres database implementation for dcrpool.

  • New config items to enable postgres and set database connection details.
  • Updated documentation to explain postgres usage.
  • Database backup features are disabled when using postgres.
  • All database tests are now run against both bolt and postgres database.

Closes #257

This commit adds a full postgres database implementation for dcrpool.
- New config items to enable postgres and set database connection details.
- Updated documentation to explain postgres usage.
- Database backup features are disabled when using postgres.
- All database tests are now run against both bolt and postgres database.
docs/postgres.md Show resolved Hide resolved
pool/postgres.go Outdated Show resolved Hide resolved
pool/postgres.go Show resolved Hide resolved
@dnldd
Copy link
Member

dnldd commented Nov 3, 2020

Caught the race below in testing, but I believe I already handled it in the upcoming single miner endpoint pr.

==================
WARNING: DATA RACE
Read at 0x00c00034d800 by goroutine 57:
  internal/race.Read()
      /usr/local/go/src/internal/race/race.go:37 +0x206
  sync.(*WaitGroup).Add()
      /usr/local/go/src/sync/waitgroup.go:71 +0x219
  github.com/decred/dcrpool/pool.(*Endpoint).connect()
      /home/dnldd/Work/dcrpool/pool/endpoint.go:187 +0x11c9

Previous write at 0x00c00034d800 by goroutine 55:
  internal/race.Write()
      /usr/local/go/src/internal/race/race.go:41 +0x125
  sync.(*WaitGroup).Wait()
      /usr/local/go/src/sync/waitgroup.go:128 +0x126
  github.com/decred/dcrpool/pool.(*Endpoint).run()
      /home/dnldd/Work/dcrpool/pool/endpoint.go:229 +0xec

Goroutine 57 (running) created at:
  github.com/decred/dcrpool/pool.(*Endpoint).run()
      /home/dnldd/Work/dcrpool/pool/endpoint.go:227 +0xa8

Goroutine 55 (finished) created at:
  github.com/decred/dcrpool/pool.testEndpoint()
      /home/dnldd/Work/dcrpool/pool/endpoint_test.go:86 +0xa57
  testing.tRunner()
      /usr/local/go/src/testing/testing.go:1108 +0x202
==================

@jholdstock
Copy link
Member Author

Yeah I have seen that race occassionally as well. Not related to this PR afaict.

Copy link
Member

@dnldd dnldd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

@jholdstock jholdstock merged commit 819a591 into decred:master Nov 5, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Postgres
2 participants