Revision: 396
Author: bslatkin
Date: Mon Nov 15 13:38:44 2010
Log: hub: small tweaks to subscription reconfirm MR input
http://code.google.com/p/pubsubhubbub/source/detail?r=396
Modified:
/trunk/hub/mapreduce.yaml
/trunk/hub/offline_jobs.py
/trunk/hub/offline_jobs_test.py
=======================================
--- /trunk/hub/mapreduce.yaml Wed Sep 22 15:25:49 2010
+++ /trunk/hub/mapreduce.yaml Mon Nov 15 13:38:44 2010
@@ -26,7 +26,7 @@
params_validator: offline_jobs.CleanupOldEventToDeliver.validate_params
- name: Reconfirm expiring subscriptions
mapper:
- input_reader: mapreduce.input_readers.DatastoreInputReader
+ input_reader: offline_jobs.HashKeyDatastoreInputReader
handler: offline_jobs.SubscriptionReconfirmMapper.run
params:
- name: entity_kind
=======================================
--- /trunk/hub/offline_jobs.py Fri Nov 5 17:47:09 2010
+++ /trunk/hub/offline_jobs.py Mon Nov 15 13:38:44 2010
@@ -29,6 +29,7 @@
from mapreduce import context
from mapreduce import input_readers
from mapreduce import operation as op
+from mapreduce import util
from mapreduce.lib import key_range
@@ -75,6 +76,9 @@
@classmethod
def _split_input_from_namespace(
cls, app, namespace, entity_kind_name, shard_count):
+ entity_kind = util.for_name(entity_kind_name)
+ entity_kind_name = entity_kind.kind()
+
hex_key_start = db.Key.from_path(
entity_kind_name, 0)
hex_key_end = db.Key.from_path(
=======================================
--- /trunk/hub/offline_jobs_test.py Fri Nov 5 17:47:09 2010
+++ /trunk/hub/offline_jobs_test.py Mon Nov 15 13:38:44 2010
@@ -43,7 +43,7 @@
"""Sets up the test harness."""
testutil.setup_for_testing()
self.app = 'my-app-id'
- self.entity_kind = 'my-entity-kind'
+ self.entity_kind = 'main.Subscription'
self.namespace = 'my-namespace'
def testOneShard(self):
@@ -55,11 +55,11 @@
expected = [
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_0000000000000000000000000000000000000000',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_ffffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='ASC',
@@ -79,11 +79,11 @@
expected = [
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_0000000000000000000000000000000000000000',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_7fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='DESC',
@@ -93,11 +93,11 @@
_app='my-app-id'),
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_7fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_ffffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='ASC',
@@ -117,11 +117,11 @@
expected = [
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_0000000000000000000000000000000000000000',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_3fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='DESC',
@@ -131,11 +131,11 @@
_app='my-app-id'),
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_3fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_7fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='ASC',
@@ -145,11 +145,11 @@
_app='my-app-id'),
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_7fffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_bfffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='DESC',
@@ -159,11 +159,11 @@
_app='my-app-id'),
key_range.KeyRange(
key_start=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_bfffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
key_end=db.Key.from_path(
- u'my-entity-kind',
+ 'Subscription',
u'hash_ffffffffffffffffffffffffffffffffffffffff',
_app=u'my-app-id'),
direction='ASC',