Skip to content
This repository has been archived by the owner on Feb 8, 2018. It is now read-only.

Rewrite payday #2508

Closed
12 tasks done
Changaco opened this issue Jun 18, 2014 · 8 comments
Closed
12 tasks done

Rewrite payday #2508

Changaco opened this issue Jun 18, 2014 · 8 comments

Comments

@Changaco
Copy link
Contributor

Opening an issue as discussed in IRC.

Here are the main goals of the rewrite:

  • make it fast: having it run in under 10 minutes would be nice
  • make it safe: we've had failures in the past, we need to do better, it's money we're handling here
  • reduce the amounts of fees and escrow by not charging credit cards when we don't actually need to

And here's my checklist:

(Am I missing other issues that the payday rewrite should fix ?)

@chadwhitacre
Copy link
Contributor

do everything in a single transaction

Why? Not doing everything in a single db transaction was an intentional design decision to enable better parallelization and crash recovery.

@Changaco
Copy link
Contributor Author

But payday is not actually parallelized, and its crash recovery logic has failed in the past. I'm not even sure payday could actually be parallelized. However I think it is possible to make it fast enough so that restarting from the start after a crash isn't be a problem.

@Changaco
Copy link
Contributor Author

I have rebased the payday rewrite branches on master, and I think they're ready for final review now.

@chadwhitacre
Copy link
Contributor

Awesome, @Changaco, looking at them now. IRC

@chadwhitacre
Copy link
Contributor

@Changaco Does it make sense to address #2443 in the rewrite?

@chadwhitacre
Copy link
Contributor

@Changaco It looks like 97aacd0 is close to #2443, anyway.

@Changaco
Copy link
Contributor Author

@whit537

It looks like 97aacd0 is close to #2443, anyway.

It was not my intention to fix #2443 in that commit, but it's true that it creates a one-to-one link between Gittip's exchanges and Balanced's transactions by inserting exchange_id in the meta field of the transaction. Is that sufficient to close #2443 or do we need more?

@chadwhitacre
Copy link
Contributor

Hmm ... could be. I think we'll end up wanting to store some information locally to avoid expensive HTTP calls for things like #1681. No?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants