This message is probably off-topic for this list, as Django running on AppEngine is not really the same as Django standalone - it depends on django-nonrel to talk to the nonrelational datastore, so database behaviour is very different. You would probably be better off asking on a specific django-nonrel mailing list.
In ordinary Django, each call to LoggingManager would result in a single database hit, which would be executed when it reaches the first logging call, since in order to output the string representation of the QuerySet Django would need to actually evaluate it. The call to type(query_set[0]) would not cause another hit, because Django has already stored the values inside the QuerySet's internal cache.
Clearly django-nonrel is doing something different here, but I don't have enough experience with it to tell you what. I can say that in plain AppEngine, without Django, you can call `queryset.kind()` to get the queryset's model without any database access, but I don't know if that will work with django-nonrel.
--
DR.