{"action":"created","issue":{"url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/82","labels_url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/82/labels{/name}","comments_url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/82/comments","events_url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/82/events","html_url":"https://github.com/silverstripe-labs/silverstripe-fulltextsearch/pull/82","id":96733682,"number":82,"title":"API QueuedJob support for Solr_Reindex","user":{"login":"tractorcow","id":936064,"avatar_url":"https://avatars.githubusercontent.com/u/936064?v=3","gravatar_id":"","url":"https://api.github.com/users/tractorcow","html_url":"https://github.com/tractorcow","followers_url":"https://api.github.com/users/tractorcow/followers","following_url":"https://api.github.com/users/tractorcow/following{/other_user}","gists_url":"https://api.github.com/users/tractorcow/gists{/gist_id}","starred_url":"https://api.github.com/users/tractorcow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tractorcow/subscriptions","organizations_url":"https://api.github.com/users/tractorcow/orgs","repos_url":"https://api.github.com/users/tractorcow/repos","events_url":"https://api.github.com/users/tractorcow/events{/privacy}","received_events_url":"https://api.github.com/users/tractorcow/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":8,"created_at":"2015-07-23T05:29:56Z","updated_at":"2015-07-24T02:44:42Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/pulls/82","html_url":"https://github.com/silverstripe-labs/silverstripe-fulltextsearch/pull/82","diff_url":"https://github.com/silverstripe-labs/silverstripe-fulltextsearch/pull/82.diff","patch_url":"https://github.com/silverstripe-labs/silverstripe-fulltextsearch/pull/82.patch"},"body":"This also has incremental deletion of records; Rather than deleting all records in solr up front, it'll simply delete all records that it KNOWS won't exist up front, and then deletes all other records incrementally in batches.\r\n\r\nEach batch is derived using the formula `ID % total_groups = this_group`. This means that batches don't need to store a list of IDs for each record, and copes with cases where ids may not be contiguous, as well as deleted IDs that may not have a local record anymore.\r\n\r\nRe-index is broken into a base implementation, with separate subclasses for each implementation (including immediate reindex for local, message queue and queuedjobs).\r\n\r\n `Solr_Reindex`, two queued jobs, a new logging API, and several tests have been added.\r\n\r\nPart of the logic for generating SOLR query syntax has been moved out of SolrIndex and into SearchQuery. This is so that SearchQuery may be used to generate syntax for deletion of records, which is necessary for the incremental deletion feature."},"comment":{"url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/comments/124297454","html_url":"https://github.com/silverstripe-labs/silverstripe-fulltextsearch/pull/82#issuecomment-124297454","issue_url":"https://api.github.com/repos/silverstripe-labs/silverstripe-fulltextsearch/issues/82","id":124297454,"user":{"login":"tractorcow","id":936064,"avatar_url":"https://avatars.githubusercontent.com/u/936064?v=3","gravatar_id":"","url":"https://api.github.com/users/tractorcow","html_url":"https://github.com/tractorcow","followers_url":"https://api.github.com/users/tractorcow/followers","following_url":"https://api.github.com/users/tractorcow/following{/other_user}","gists_url":"https://api.github.com/users/tractorcow/gists{/gist_id}","starred_url":"https://api.github.com/users/tractorcow/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tractorcow/subscriptions","organizations_url":"https://api.github.com/users/tractorcow/orgs","repos_url":"https://api.github.com/users/tractorcow/repos","events_url":"https://api.github.com/users/tractorcow/events{/privacy}","received_events_url":"https://api.github.com/users/tractorcow/received_events","type":"User","site_admin":false},"created_at":"2015-07-24T02:44:41Z","updated_at":"2015-07-24T02:44:41Z","body":"Hi @sminnee please have a look at the logging replacement at https://github.com/tractorcow/silverstripe-fulltextsearch/commit/d661696a473fb50ec322e033e0c770cdbce948c3\r\n\r\n"}}