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

TODO #2

Closed
16 tasks done
hzoo opened this issue Jul 23, 2016 · 5 comments
Closed
16 tasks done

TODO #2

hzoo opened this issue Jul 23, 2016 · 5 comments

Comments

@hzoo
Copy link
Member

hzoo commented Jul 23, 2016

CONTRIBUTING: https://github.com/babel/phabricator-to-github/blob/master/CONTRIBUTING.md

Just an issue to track what we can/should do to migrate

Info

Old issue id range: 1 - 3086 (maniphest_task)
New issue range: > 6637
Number of new issues: ~871
Number of new comments: ~2940
Github ratelimit is 5000 requests/hour (https://developer.github.com/v3/#rate-limiting)


Open questions:

  • How to compare/merge issues? Someone needs to check if the github id is somewhere in the phabricator dump. Otherwise we need to retrieve all comments beforehand. Phabricator ids match the github ids.
  • What was the last phabricatorID for the import from github? IF we know that we can easily know which to merge and which to create (3086)
  • Do we want to migrate issues that do not exist yet in github but are already closed? YES
  • Do we need to migrate attachments? (There are 41 attachments that can be migrated by hand)
  • The issue import API is async, which means that issues could get imported in random order. We could wait till the import of one issue is finished and then send the next, but then the import might take several hours (I've seen delays of up to a minute between sending request and issue being imported.)

Tasks:


  • We don't want to spam watchers on github with notifications.
    • Maybe notify all watchers of babel at what time we will do the migration, so they could unwatch the project for that period.
    • Or maybe we can globally disable notifications?
    • Or contact github about that? Maybe also useful for the api rate limiting
  • make sure usernames transfer over correctly
    • some people don't sign up with github (can we link everything?)
    • is it possible to transfer subscribers?
@danez
Copy link
Member

danez commented Jul 24, 2016

I updated the comment a little bit and added more stuff.

In general I think it would be good to "calculate" all the necessary changes to be made to github in the first task, and then as quickly as possible (github api probably has throttling) execute the changes.

@rmacklin
Copy link

handle the edge case that someone really posts an issue during migration and log these issue numbers (should be easy by just looking if the returned issue number from the api is +1 the last issue number), otherwise they might get lost in the flood of issues.

Just wanted to mention that it's probably not worth logging these issues yourself because that data can be queried easily from the issues search. You could find them by searching with a query that uses a range filter on the created timestamp (using the start and end timestamps of the migration script) and excludes all issues filed by the bot user. For example:

is:issue created:2016-07-26T22:59:10-07:00..2016-07-26T23:04:10-07:00 -author:babel-bot

@danez
Copy link
Member

danez commented Jul 27, 2016

Thanks, that is even easier.

@hzoo
Copy link
Member Author

hzoo commented Jul 30, 2016

Ok I contacted github - we should try using the (unfinished) API described in https://gist.github.com/jonmagic/5282384165e0f86ef105 to get around some of the issues we mentioned above

@hzoo
Copy link
Member Author

hzoo commented Sep 1, 2016

for attachments we can link to the issue instead? I wonder how many of those there are anyway

we can move the parser issues manually too

@danez danez closed this as completed Sep 8, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants