I didn't say multi threaded.
ThreadLocal gives access to the cached object of the current thread.
I'm doing an assumption here that appengine/j is implemented with thread per
incoming request.
What I would like to know is if these threads are recycled (in which case
ThreadLocal is a good
What kind of data or information do you want to share through thread-locals
between threads/requests?
On Thu, Sep 16, 2010 at 08:04, Maxim Veksler ma...@vekslers.org wrote:
I didn't say multi threaded.
ThreadLocal gives access to the cached object of the current thread.
I'm doing an
Good Morning!
I've got a directory structure like following:
war
war/images
war/images/0
war/images/1
...
war/images/10
Now, I would like file-not-found errors within the image directory being
redirected on an image which e.g. says picture not found or something.
I figured out, there are
Ah, forgot ...
Perhaps I should mention my current solution ...
Currently, I've got a java servlet which loads images from the harddisc
and in case of a file-not-found-exception, it loads my special image.
My application is like google maps where there have to be loaded many
small tiles and
Look at ZipStreamOutput class from:
http://code.google.com/p/audao/source/browse/#svn/trunk/modules/embed/src/java/com/spoledge/audao/generator
The usage in GAE or generally in servlets is as simple as following:
private void responseAsZipStream( HttpServletResponse response )
throws IOException
I would like to cache a not thread safe object, I'm hoping to improve
performance by caching it instead of instantiating new instance per request.
Thanks,
Maxim.
On Thu, Sep 16, 2010 at 8:12 AM, Guillaume Laforge glafo...@gmail.comwrote:
What kind of data or information do you want to share
Try this :
Query q = pm.newQuery(People.class);
q.setFilter(contactmethods.contains(pContactMethod));
q.declareParameters(com.google.appengine.api.datastore.Key
pContactMethod);
ListPeople allPeople = (ListPeople)q.execute(lContactMethodKey);
Bye.
On 15/09/10 20:28, Shaun shaunc...@gmail.com
See
http://code.google.com/intl/fr-FR/appengine/docs/java/configyaml/indexconfig
.html
Bye
On 14/09/10 20:43, Barada Sahu bar...@gmail.com wrote:
Hi,
I need to delete the indexes for my java app as the column name has
changed. I am now unable to perform any entity deletions because of
the
Indeed, it works, with ZipInputStream.
Here is a piece of code I use in my zipped file upload servlet :
[...]
CheckedInputStream csumi = new
CheckedInputStream(req.getInputStream(), new CRC32());
ZipInputStream zin = new ZipInputStream(new
BufferedInputStream(csumi));
Is it always necessary to define an entity group in order to use
transactions for multiple entities?
Yes, for two reasons:
1. An entity's entity group is always defined at creation-time. It is
An exact example is SELECT __key__ FROM SearchIndex WHERE searchables
= ^_hidden:::false_^ AND searchables = sex AND searchables = repeat
AND searchables = mate AND searchables = feed AND searchables = sugar
AND searchables = rating:1.
Executing this query I get the exception when the entities in
Each app instance runs in its own JVM. So it should be safe to cache
data in ThreadLocal.
On 16 sep, 09:08, Maxim Veksler ma...@vekslers.org wrote:
I would like to cache a not thread safe object, I'm hoping to improve
performance by caching it instead of instantiating new instance per request.
Hi,
This is Anil Manas I have recently joined Infinite Computing Systems
Inc for their Recruitment division.
We only work with direct clients.
Kindly add me in your vendor list and send me your hot list regularly
u can reach me on
Email Id : ama...@infinite-usa.com Or contact me on 319 892
You can store data in ThreadLocal as a cache, but it will be extremely
volatile, especially if we spin up/spin down instances. It's fine to use
this to cache data that you can easily regenerate. Just be aware that if you
hit memory limits, we will cull and restart that instance.
On Thu, Sep 16,
The issue here is zig zag merge join. It's a bit more complex subject than I
can easily explain in email, but to sum things up, what's happening is that
we take multiple indexes and zig-zag between them to generate your result
set. When this takes too long, that causes that exception to be thrown.
Thank you Ikai.
It's perfectly clear the JVM's spin up / down (and to the sides at some
strange corner cases :)
Is it possible to share the amount of threads a typical JVM running on up
appengine is configured to launch?
That would help me plan better, because if I have a class that eats 0.5MB
No, there's no control over this. It's a bit of an overoptimization right
now, wouldn't you say? I'd put it into production first before seeing how
much I'd need it.
On Thu, Sep 16, 2010 at 9:36 AM, Maxim Veksler ma...@vekslers.org wrote:
Thank you Ikai.
It's perfectly clear the JVM's spin up
Agreed.
Thanks for the help.
Maxim.
On Thu, Sep 16, 2010 at 4:38 PM, Ikai Lan (Google)
ikai.l+gro...@google.comikai.l%2bgro...@google.com
wrote:
No, there's no control over this. It's a bit of an overoptimization right
now, wouldn't you say? I'd put it into production first before seeing
Hey Guys,
Just a quick 2.5cent idea.
The current situation for applications running on the app engine is that a
request that causes instance spin up (be it first request, or the unlucky
one in high load) is usually cancelled because of timeout (30s). I'm
observing this situation even for virgin
I was just thinking about this issue during an interview this morning.
I like your initServlet idea and think that it could also be used during
takedown to cleanup any external resources (like batched sequence counters).
An alternative for the scaling from 1 server to many startup problem is to
A similar idea is being considered.
As far as reserved instances go, if you are at the point where you need more
instances, it would only be a small portion of your requests that hit
loading requests. The reason loading requests nowadays are a pain is because
they are a vast majority of requests
It just doesn't finish and keeps checking at 60-second intervals.
On the console at http://appengine.google.com I see my application
with Current Version set to: None Deployed But when I click through
the application to the Versions tab, I see: Version 1 (deployed
0:04:30 ago) except it is NOT
Dear All,
I am facing a strange issue using the KeyFactory.createKey() method : keys
generated by this method are stored as unowned relationships, but are
actually not recognized by the datastore viewer (the key-URL does not work).
Hopefully you could help me on this.
A few words about my source
no timeout for my app in the last 2.5 hours. looks good, will keep
watching.
On Sep 16, 1:11 pm, Ikai Lan (Google) ikai.l+gro...@google.com
wrote:
Thanks for the feedback. I'll pass it along. Can you guys update this thread
over the next day or so? It'd be extremely helpful if we also know a
Oopsstill happening sometimes...when it happen, all requests in
the same minute timeout on db put. They are in different entity
group.
On Sep 16, 2:34 pm, Raymond C. windz...@gmail.com wrote:
no timeout for my app in the last 2.5 hours. looks good, will keep
watching.
On Sep 16, 1:11 pm,
Today also appengine.noreply was marked as spam.
I can confirm the @google.com address was marked as spam too.
I simply set up a couple of filters to accept these addresses in my
inbox now. As long as we can assume these addresses are used for
notifications, it's a zero cost solution so I can be
In the last half hour:
- 78% error rate
- Average request latency 15000ms
- Dashboard difficult to view without 500 errors, Appstats
inaccessible...
This is getting rediculous now...
--
You received this message because you are subscribed to the Google Groups
Google App Engine group.
To post
The number of instances that App Engine makes available to your
application depends on if you keep your average request time under
1000ms for user-facing requests.
Ikai Lan (I believe) said that taskqueue and cron job requests do not
count against this boundary. Ikai also said that this boundary
Hi Jason,
The same appservers are used to serve user-facing and offline traffic. The
volume of user-facing traffic (that is below the latency threshold) you
serve determines how many appservers we provision for your application,
which in turn affects the capacity available for running offline
For me, it looks like:
appengine.notificati...@google.com is NOT marked as spam
appengine.nore...@gmail IS marked as spam
The spam messages also have the following inline message in bold white
on red background. I mention it because this message only seems to
appear on a very small number of
Hmmm, that poses a different issue for us.
Our application does _substantially_ more long-running, taskqueue-
based requests relative to user-facing requests. Indeed, our primary
user interaction is via the reports that we compile and email to them.
This just sounds like a generally bad
which in turn affects the capacity available for running offline
tasks - so, if you have a low volume site, you won't get that many
instances for your tasks? likewise, if you have some user facing
requests that go longer then 1000ms (by design or otherwise), the
instances available for your tasks
I completely agree Cameron.
I know that Google will be working hard to correct any problems.
However, unless I see communication to this effect, I'm am not sure
that Google is _aware_ there is a problem - more so if the App Engine
status page is not indicating a problem.
This forces me to sort
On Sep 15, 7:20 pm, Bart Thate bth...@gmail.com wrote:
Hello all ;]
On Thu, Sep 16, 2010 at 1:04 AM, Robert Kluin robert.kl...@gmail.comwrote:
Not to mention that AppEngine only speaks HTTP.
AppEngine can also do xmpp.
Not as a server, though; your users who are chatting need to use
This really annoys me, how can the system status page say everything
is working fine when the whole system has been so unreliable today? I
thought the issues had been solved last night when my apps returned to
a sort of normality but for the last few hours the quality of service
is poor. My app is
Same problem here. System stats shows Datastore spike again.
On Sep 15, 6:50 am, Fredrik Bonander carl.fredrik.bonan...@gmail.com
wrote:
I've had problems with reaching the dashboard since yesterday with 2
different applications.
Is this related to the problems with the datastore?
Were you able to get this working? I am having the same problem.
On Jul 28, 8:59 am, Rafael Sierra rafaeljs...@gmail.com wrote:
Hi, whatever are the arguments used in appcfg.py I always got this error:
[DEBUG ] Traceback (most recent call last):
File
Hi,
This is Anil Manas I have recently joined Infinite Computing Systems
Inc for their Recruitment division.
We only work with direct clients.
Kindly add me in your vendor list and send me your hot list regularly
u can reach me on
Email Id : ama...@infinite-usa.com Or contact me on 319 892
Hi all
My application is curently limited due to a short-term quota limit on
Total Stored Data.
I'm limited to 1 gb and the Quota detail tell me i'm using 1 Gb, so
far so good.
But when i'm going to the datastore statistic , my datastore only use
164 MBits.
are my indexes really eating 800+
I created a custom Eclipse Information Center (similar to
http://help.eclipse.org/helios/index.jsp) using the Eclipse Plug-in
Project framework and would like to host the solution on Google Apps.
Is this possible? If so, what is the procedure. Thanks.
--
You received this message because you are
When receiving e-mail (http://code.google.com/appengine/docs/java/mail/
receiving.html), is there a way to access the envelope (SMTP-level)
data for the message? In particular, the envelope sender (SMTP FROM
parameter)?
Under some circumstances, my application needs to bounce messages back
to
it would be good if app engine getting started instructions:
http://code.google.com/appengine/docs/python/gettingstarted/templates.html
showed what the pages should look like
for some reason I am getting two text boxes and a log out button.
that does not seem right.
-- should the
Our last communication via the downtime notify list stated that we are
cautiously optimistic. We're looking into the reported issues.
On Wed, Sep 15, 2010 at 5:03 PM, kg kang...@gmail.com wrote:
Are latency issues still ongoing? Any ETA on when this might be
resolved?
09-15
Constructive posts are always helpful, especially if numbers are provided,
so we welcome you posted when there are performance issues. Aggregate
statistics are a 95% case in terms of getting us useful information - we may
be missing localized phenomenons.
There are reports of issues right now.
On Sep 15, 8:34 am, Chris christ.pe...@gmail.com wrote:
Hi all
My application is curently limited due to a short-term quota limit on
Total Stored Data.
I'm limited to 1 gb and the Quota detail tell me i'm using 1 Gb, so
far so good.
But when i'm going to the datastore statistic , my
On Sep 15, 4:44 pm, Perry perrygrossman2...@gmail.com wrote:
it would be good if app engine getting started
instructions:http://code.google.com/appengine/docs/python/gettingstarted/templates...
showed what the pages should look like
for some reason I am getting two text boxes and a log
Anyone see any documentation on this?
--
You received this message because you are subscribed to the Google Groups
Google App Engine group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to
Everything looks okay from the dashboards I'm looking at, though it looks
like there was an anomaly around ~5 hours ago that lasted about 10 minutes.
Is anyone still experiencing significantly higher datastore latencies?
On Wed, Sep 15, 2010 at 4:04 PM, pkarp pka...@gmail.com wrote:
Same
It seems that when one renders images from the datastore pages that fetch these
images dont use the cache version in the browser? Am i right or am i wrong.
I have some code that i use on static content - provided nicely by nick
johnson. Should i use the same method in my image render code?
Ikai - can we assume by your answer that the task queue is in fact
impacted by user facing requests? the task queue is setup to handle 40
requests/second, how could you ever get this performance if the
instance count is dictated by user requests?
if this is the case, then the only way to get
Ikai,
I wouldn't say that I've seen periods of task backups, but in the logs
I do see a lot of 10-second timeouts when tasks are being attempted
to be executed.
By 10-second timeout, I mean this guy:
Request was aborted after waiting too long to attempt to service your
request. This may happen
On Sep 15, 2:33 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
Hi,
We don't throttle apps.
What does 'throttle_code' mean?
http://groups.google.com/group/google-appengine/browse_thread/thread/fd648f4b59281b0b/e7f664260536c721?lnk=raot#e7f664260536c721
--
You received this
Hi Stephen,
On Thu, Sep 16, 2010 at 4:31 PM, Stephen sdea...@gmail.com wrote:
On Sep 15, 2:33 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
Hi,
We don't throttle apps.
What does 'throttle_code' mean?
As I expanded immediately after the one sentence you clipped out of my
Star issue 2740.
http://code.google.com/p/googleappengine/issues/detail?id=2740
Robert
On Thu, Sep 16, 2010 at 10:09, Geoffrey Spear geoffsp...@gmail.com wrote:
On Sep 15, 8:34 am, Chris christ.pe...@gmail.com wrote:
Hi all
My application is curently limited due to a short-term
On Sep 16, 4:33 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
Hi Stephen,
On Thu, Sep 16, 2010 at 4:31 PM, Stephen sdea...@gmail.com wrote:
On Sep 15, 2:33 pm, Nick Johnson (Google) nick.john...@google.com
wrote:
Hi,
We don't throttle apps.
What does 'throttle_code'
We decide to schedule additional instances of your app based on its
user-facing latency.
This very material fact is not even mentioned in the article 'Best
practices for writing scalable applications'
http://code.google.com/appengine/articles/scaling/overview.html
johnP
On Sep 16, 9:03 am,
Nick - Thanks for your reply - i agree with that. In honest i started coding in
1978 and building code that runs fast is what i grew up on - in those days it
was cycles too, when we built games we had to made the code run in the time it
took the TV set to go from the bottom of the screen and
I am still experiencing poor performance with my python pubsubhubub
application:
bringit-pshb-test-1
High latency: nearly 3000 ms for requests
and many 500 errors. Datastore timeouts,TransactionFailedError
We are a high volume high demand application with billing.
On Sep 16, 9:56 am, Ikai Lan
Yep same question : what is pending_ms ?
I got these kind of logs today when displaying a really small gif
image :
ms=993 cpu_ms=36 api_cpu_ms=17 cpm_usd=0.001223 pending_ms=854
On 16 sep, 16:24, gholler georgehol...@gmail.com wrote:
Anyone see any documentation on this?
--
You received
Was already asked in july :
http://groups.google.com/group/google-appengine/browse_thread/thread/ad6bbc328dd3ba8c
On 16 sep, 20:45, Francois Masurel fm2...@mably.com wrote:
Yep same question : what is pending_ms ?
I got these kind of logs today when displaying a really small gif
image :
There are multiple posts reporting this issue, I was also able to find
a couple of reported issues that Google has closed as 'WONTFIX'. My
experience is that this is a real problem. I send 20-100 e-mails and
one or two will fail, here is a report that my admin user sees:
Mail to 4 Accounts:
Yes Ikai, everything is not ok. Every ten minutes, everything goes
red.
We are having serious issues with this.
We need to know if something is being planned to resolve this because
we need to talk to our customers too.
We need assurances that this will be sorted and when.
On Sep 16, 3:24 pm,
According to the app engine system stats page everything is running
fine but I'm seeing an issue that I can't figure out.
I have an app that relies heavily on task queues. Every minute or so
a payload comes in and is broken into 1 or many (depending on the size
of the payload) schedule tasks and
Since 16.10 pm none of my cron jobs is working anymore.
I tried to trigger cron jobs by uploading a new cron.xml with minor
changes (different timing) and nothing else. Now the application is
completly broken.
I get errors like
Uncaught exception from servlet
java.lang.NoClassDefFoundError:
UPDATE:
After deploying to a new version several time these
NoClassDefFoundError disappeared.
I made this the default version to serve and the application is now
working.
Even in the new version the cronjobs did not work for some time but
are now working again.
I am wondering what caused this
Hi Chris, I've noticed a similar problem with an erroneous amount of
Total Stored Data reflected in the Quota Details.
I have about 2 or 3Gb of data in the Blobstore, yet Total Stored Data
shows that I have 20Gb (which is still under quota for my billing
settings). I first noticed this
ok, it makes sense. Thanks.
On Sep 16, 12:44 am, Kenneth goo...@kmacleod.ie wrote:
The id is converted to the key before the remote call so it is the
same speed.
On Sep 15, 5:48 pm, zygimantas zygimantas.berziu...@gmail.com wrote:
Hello,
As we know, getting entity by the key is
I too, have had poor service all day. Many, many 500 server errors
when accessing my app and the dashboard. Anyone using my service the
last few days would think I am using a subpar, shoddy hosting
provider.
Why don't the App Engine team just roll back the changes they made
during maintenance?
Is get_by_key_name as fast as key? or is that slower. What is the best method
is
the difference marginal?
Regards
From: zygimantas zygimantas.berziu...@gmail.com
To: Google App Engine google-appengine@googlegroups.com
Sent: Thu, 16 September, 2010
Unfortunately for me, I launched the service couple of days ago, sent out
promotional email and customers are experiencing slow downs and errors.
Hope this issue is getting a very high priority attention at Google and a
permanent resolution is targeted for the very near future (hopefully,
hours).
As I understand, the fastest way is to get by Key because no
conversions are needed.
Model.get_by_id should be almost the same, because ID+Kind+Path will
be converted to Key before querying database. But this operation maybe
is too cheap comparing to database seek.
Model.get_by_key_name should be
I second this report.
I have an app that has a chained task that executes every 5 minutes. Each
time the task completes it enqueues the next task to be executed (the next
task is always scheduled for the next 5 minute mark).
From looking at the logs.. the task ran fine at 10:30 AM PST.. then
Can anyone tell me how to determine the average request time for user-
facing requests of a particular app?
I understand we have a Milliseconds/Request chart on the admin
console but there's no differentiation between user facing requests
and offline tasks.
Is this something that the app must
As mentioned in my other post we are still seeing erratic behaviour,
even on requests that do not involve database puts. Query and get by
id, taking 10secs+.
I would appreciate it, if someone can confirm that something is being
done about this.
Or communicate why something isn't being done.
Hi Ikai - the behavior we are seeing suggests the offline tasks are
subject to the same 1000msec rule as external requests.
Queuing up a number of tasks reliably results in the Request was
aborted after waiting too long to attempt to service your request
error - which is actually fine, BUT, the
Have you reported this here:
http://code.google.com/p/googleappengine/issues/entry?template=Production%20issue
?
Please make sure you provide your app id.
Also, star this: http://code.google.com/p/googleappengine/issues/detail?id=3725
J
On Sep 17, 1:03 am, mscwd01 mscw...@gmail.com wrote:
Can someone tell me how i pass the max parameter into the query below. Ive
tried
:
(SELECT __key__ FROM message_index WHERE receivers = :1 ORDER BY created DESC
LIMIT :2, stream,max)
but it throws an erorr: Non-number limit in LIMIT clause
It works fine as below - but i need to pass the max
HI
I am not seeing any problems at the moment, but I believe you when you
are saying you are having issues.
I have witnessed on numerous occasions where a deadzone in appengine
occurrs when only a few instances are affected
and so it is quite hard to get anyones attention, because the problem
is
Hi
Have you confirmed max is an int and not a string. My bet that is the
problem.
Alternately use
results = message_index.all(keys_only=True).filter('receivers =
',stream).order('-created').fetch(max)
But max will still need to be an int ;-)
T
On Sep 17, 10:03 am, Martin Webb
Tim. Yes that was my first guess - i thought max was coming in as None - but
that isnt the case? The code below fails??
BadQueryError: Parse Error: Non-number limit in LIMIT clause at symbol :2
def load_all(stream,max=10):
test=10
indexes = db.GqlQuery(SELECT __key__ FROM
80 matches
Mail list logo