If you're adding a new index with a release, be careful as the index must be built before it can be used.
You can watch the index build progress in the Admin Console -> Data Store Index screen. When complete you can switch to your new deployment.
Or you'll get:-
com.google.appengine.api.datastore.DatastoreNeedIndexException: The index for this query is not ready to serve. See the Datastore Indexes page in the Admin Console.
This blog is used for testing my PubSubHubBub service. The posts are related to the project, but a short and updated a lot because I'm usually trying to test something.
Sunday, 19 December 2010
Thursday, 16 December 2010
Commands and Selections
I'm turning my commands outside in.
I say it this way as they were the wrong way around.
I was passing Selections into Commands, when it should really be the other way around.
The selection should apply the command to itself. In this way it can traverse its internal collection in its own way. E.g. if the selection has a cursor on a database instead of an in memory collection.
Why am I calling them Selection instead of Collections? Well it's because I don't want to expose a whole Collection interface. Think of a Selection as the model for a multi select list box. It has a collection of items, and a collection of which of which items are selected.
I think Commands should only operate on the selected items in the Selection. I'm breaking that rule at the moment!
I say it this way as they were the wrong way around.
I was passing Selections into Commands, when it should really be the other way around.
The selection should apply the command to itself. In this way it can traverse its internal collection in its own way. E.g. if the selection has a cursor on a database instead of an in memory collection.
Why am I calling them Selection instead of Collections? Well it's because I don't want to expose a whole Collection interface. Think of a Selection as the model for a multi select list box. It has a collection of items, and a collection of which of which items are selected.
I think Commands should only operate on the selected items in the Selection. I'm breaking that rule at the moment!
Saturday, 11 December 2010
Cache and Tickle
Started experimenting with Google MemCache.
The Task Queue maximum task size was limiting the amount of data I could post to a Queue.
So I moved to putting the data in the Data Store then sending a tickler to the Queue handler.
However this produced several data store errors with contention for the records I was updating.
I'm trying to solve this by transporting the data using MemCache.
It's not absolutely crucial that the data be there.
The Task Queue maximum task size was limiting the amount of data I could post to a Queue.
So I moved to putting the data in the Data Store then sending a tickler to the Queue handler.
However this produced several data store errors with contention for the records I was updating.
I'm trying to solve this by transporting the data using MemCache.
It's not absolutely crucial that the data be there.
Thursday, 2 December 2010
Feed Me Headlines Via PubSubHubBub
Feed Me is a new Android PubSubHubBub client.
I got 20 more registrations when I placed C2DM in the description.
The other reason could be that this places me in the new category again.
They appear to be mainly Chinese.
173 now!
177 !
I got 20 more registrations when I placed C2DM in the description.
The other reason could be that this places me in the new category again.
They appear to be mainly Chinese.
173 now!
177 !
Subscribe to:
Comments (Atom)