Hi all, I'm a novice. Can anyone show me, If there is a way to run Multiple
apps on gae with linux?


On Sat, Jul 23, 2011 at 7:11 PM,
<[email protected]>wrote:

>   Today's Topic Summary
>
> Group: http://groups.google.com/group/google-appengine/topics
>
>    - SDK Upgrade 1.5.2: --datastore_path 
> ignored?<#13158691f992ddfb_group_thread_0>[9 Updates]
>    - 1.5.2 SDK Prerelease <#13158691f992ddfb_group_thread_1> [1 Update]
>    - Transactions and ancestor in a different 
> namespace<#13158691f992ddfb_group_thread_2>[1 Update]
>    - For deployment only does the sdk version 
> matter?<#13158691f992ddfb_group_thread_3>[1 Update]
>    - GAE starting unnecessary instances <#13158691f992ddfb_group_thread_4>[4 
> Updates]
>    - path/wildcards on GAE Boto 
> get_bucket()?<#13158691f992ddfb_group_thread_5>[1 Update]
>    - App Engine Weekly Community Update 
> #1<#13158691f992ddfb_group_thread_6>[3 Updates]
>
>   Topic: SDK Upgrade 1.5.2: --datastore_path 
> ignored?<http://groups.google.com/group/google-appengine/t/90918f593e1f860c>
>
>    c h <[email protected]> Jul 22 12:17PM -0700 ^<#13158691f992ddfb_digest_top>
>
>    hi all,
>
>    i *think* that it is honoring your datastore location (though the log
>    message is incorrect), but the change to rename your application to
>    dev~<your appname> in development has just rendered all of our test
>    data
>    useless.
>
>    after re-importing my test data it does look like it is stored where i
>    ask
>    it to be, but under the new application name.
>
>    if you are lucky enough to be using sqlite you can connect to the db
>    and
>    rename some tables to get it to work:
>
>    sqlite3 local_appname_dev_sqlite.datastore
>    sqlite> .tables
>    Apps
>    IdSeq
>    Namespaces
>    appname!!Entities
>    appname!!EntitiesByProperty
>    appname!namespace!Entities
>    appname!namespace!EntitiesByProperty
>    sqlite> alter table `appname!!Entities` rename to
>    `dev~appname!!Entities`;
>    sqlite> alter table `appname!!EntitiesByProperty` rename to
>    `dev~appname!!EntitiesByProperty`;
>    sqlite> alter table `appname!namespace!Entities` rename to
>    `dev~appname!namespace!Entities`;
>    sqlite> alter table `appname!namespace!EntitiesByProperty` rename to
>    `dev~appname!namespace!EntitiesByProperty`;
>
>
>    where you substitute 'appname' for your application's name, and
>    'namespace'
>    for your datanamespace.
>
>    cfh
>
>
>
>
>    Matthew Blain <[email protected]> Jul 22 12:39PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    That's a clever way to update the appid. I do not know if it works for
>    all cases (e.g. it may not work for all reference properties (stored
>    keys)) but is a neat trick.
>
>    Another way to deal with it is to use the --default_partition="" flag
>    rather than using an older version of the sdk.
>
>    --Matthew
>
>
>
>
>
>    Chris Copeland <[email protected]> Jul 22 04:57PM -0500 
> ^<#13158691f992ddfb_digest_top>
>
>    Thanks, Matthew.
>
>    I was able to update to 1.5.2 and use my existing datastore by adding
>    that
>    flag.
>
>    It would have been useful if the release notes had mentioned that this
>    would
>    be necessary.
>
>    -Chrsi
>
>
>
>
>
>    c h <[email protected]> Jul 22 06:38PM -0700 ^<#13158691f992ddfb_digest_top>
>
>    yup the sqlite updates don't quite seem to work.
>
>    i second that the release notes should be updated, the flag does seem
>    to
>    work for me
>
>    cfh
>
>
>
>
>    Joseph Letness <[email protected]> Jul 22 06:49PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    I tried the --default_partition="" flag but now validation.py is
>    throwing an exception:
>
>    Traceback (most recent call last):
>    File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
>    GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
>    google/appengine/tools/dev_appserver.py", line 4099, in _HandleRequest
>    default_partition)
>    File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
>    GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
>    google/appengine/api/validation.py", line 360, in __setattr__
>    value = self.GetValidator(key)(value, key)
>    File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
>    GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
>    google/appengine/api/validation.py", line 598, in __call__
>    return self.Validate(value, key)
>    File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/
>    GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/
>    google/appengine/api/validation.py", line 923, in Validate
>    '\'%s\'' % (value, key, self.re.pattern))
>    ValidationError: Value '""~tagassetspro' for application does not
>    match expression '^(?:[a-z\d\-]{1,100}\~)?(?:(?!\-)[a-z\d\-\.]
>    {1,100}:)?(?!-)[a-z\d\-]{1,100}$'
>
>    This has got to be a bug. It's not like using stored test data with
>    the dev server is some kind of oddball edge case ;-)
>
>    --Joe
>
>
>
>
>
>
>
>    Cat <[email protected]> Jul 23 12:25AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    One thing I know for sure now is that the following log message is
>    bogus, it appears even if dev_appserver.py successfully connects and
>    uses a store at a different location than the TMP directory.
>    INFO 2011-07-23 07:22:11,762 rdbms_sqlite.py:58] Connecting to
>    SQLite database '' with file '/var/folders/u5/u5xmrm5gHPGXhfjlyv98u+++
>    +TI/-Tmp-/dev_appserver.rdbms'
>
>
>
>
>    Cat <[email protected]> Jul 23 12:46AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    ================
>    SOLUTION
>    ================
>
>    1. USE --default_partition= BUT DO NOT INCLUDE THE QUOTES as mentioned
>    in Matthew's post.
>    2. IGNORE THE INCORRECT LOG MESSAGE ... rdbms_sqlite.py:58] Connecting
>    to SQLite database ...
>
>    LauncherFlags:
>    --datastore_path=/Users/cat/repositories/appengine/my.datastore --
>    default_partition=
>
>    Console Flags:
>    dev_appserver.py --datastore_path=/Users/cat/repositories/appengine/
>    my.datastore --default_partition= -p 8080 .
>
>    That's it.
>
>
>
>
>
>    Joseph Letness <[email protected]> Jul 23 10:03AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    That did the trick, Cat. Thanks!
>
>
>
>
>
>    WallyDD <[email protected]> Jul 23 10:35AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Many thanks Cat.
>
>    Just adding --default_partition= to the launch settings worked for me.
>
>    Using the Google App Engine Launcher;
>    Edit, Application settings.
>    In the box "Launch Settings" add --default_partition=
>
>
>
>
>   Topic: 1.5.2 SDK 
> Prerelease<http://groups.google.com/group/google-appengine/t/aac0abb8b3cd2d40>
>
>    Brandon Donnelson <[email protected]> Jul 23 07:54AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Suggestion: When you prerelease, could you stick that in the eclipse
>    repository too, for ease of download?
>
>    Brandon Donnelson
>    http://gwt-examples.googlecode.com
>
>
>
>   Topic: Transactions and ancestor in a different 
> namespace<http://groups.google.com/group/google-appengine/t/7afde609f5670152>
>
>    Hugo Visser <[email protected]> Jul 23 05:51AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Well it appears that the entire key path for an entity group is bound
>    to one namespace. I am using Objectify in my app which doesn't have
>    the namespace in the keys but when checking out the low level Java api
>    that became apparent.
>
>
>
>
>   Topic: For deployment only does the sdk version 
> matter?<http://groups.google.com/group/google-appengine/t/492ec7e0bbd78693>
>
>    Hugo Visser <[email protected]> Jul 23 05:49AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Thanks Ikai, keeping it somewhat up to date will be fine for CI
>    purposes.
>
>
>
>
>   Topic: GAE starting unnecessary 
> instances<http://groups.google.com/group/google-appengine/t/baf439a6e073f6da>
>
>    Galoch <[email protected]> Jul 22 11:57AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Hi Johan,
>
>    Thanks for the explanation. I have couple of questions on that.
>
>    1. "1 Hours ago while all your Always On instance were busy and you
>    had a burst of incoming requests"
>    While this may be true when my Always On instances were "busy" running
>    some stuff but what about when 2 Always On instances show only "1"
>    request served which is the Warmup request itself. Does this mean
>    Warmup requests are considered as traffic? If that is the case then
>    Always On instances seem rather useless since they will never ever get
>    called in this scenario.
>
>
>    2. As Tom mentioned, what qualifies "busy". When threadsafe option was
>    implemented in GAE these 3 Always On instances were able to do most of
>    the heavy lifting with occasional spinning of dynamic instances.
>    Nothing has changed on our side that should alter this behavior. With
>    all these changes happening within GAE I am trying to figure out what
>    changed and what we can do to contain this burst of traffic within 3
>    (or more ) Always On instances with less frequent spinning of Dynamic
>    instances.
>
>
>    3. "- 2 Minutes ago all your instances Always On + Dynamic were busy
>    again and the scheduler spawned a new Dynamic instance that handle 7
>    incoming requests. "
>    Again what constitutes "busy" as I do not see any request being served
>    by Always On instances 2 and 3 in last 1 hour. Note that number of
>    requests served by Always On 2/3 are unchanged since they were
>    created ...
>    Here's my reading in this scenario:
>    a. It kills Dynamic Instance 1 within 2 minutes of serving a request
>    b. When traffic comes in it looks only for Dynamic Instances if they
>    are busy and completely ignores Always On instances at this point
>    c. It recreates Dynamic Instance 1
>
>    In other words, what rule is applied in this case?
>
>    Also I fail to understand rule 4 as both Rob and Luca mentioned. That
>    completely undermines having Always On instances under threadsafe
>    mode.
>
>    4. I like Rob's suggestion of better load balancing techniques but
>    again with a caveat that an instance needs to be able to serve
>    multiple threads before reaching a set capacity (80% or so)
>
>    5. Luca's suggestion also makes sense but again with the same
>    caveat ... it should be able to process multiple threads before
>    queuing
>
>    6. I looked at the new sliders in the Admin console and with those the
>    situation is even worse. I set the Max Idle Instances to 3 (that's the
>    minimum I could choose) and Min Pending Latency to 15 secs ... Guess
>    what our CPU usage has gone up to 15 in 12 hrs because of constant
>    creation and killing of 3 dynamic instances. Bare minimum traffic and
>    few light weight crons.
>    But the good side is now I see requests coming in on the 3 Always On
>    instances. Is that enough load they are serving ... I don't know yet
>    but something to observe.
>
>
>    Two things I suggest would be really helpful for us:
>    A. The overall key here is to know the thread handling capacity of an
>    instance. Better yet if it can be configured similar to Backends but
>    dynamic in nature (and of course Backends pricing is outrageous ...
>    but that's another topic)
>    B. Able to add more Always On instances but again with a dependency
>    explained in point A.
>
>    Hope it makes sense.
>
>    Thanks,
>    galoch
>
>
>
>
>
>
>
>
>
>    Tom Phillips <[email protected]> Jul 22 12:46PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    The current behavior makes me suspect we are being prepared for Always-
>    on being replaced completely by the new scheduler knobs. Being able to
>    turn up the number of idle instances does make always-on somewhat
>    redundant, as long as the idle instances stick around for a while.
>
>    Also, if always-on instances WERE being properly utilized right now,
>    it would require artificial load to ascertain the effects of the new
>    scheduler on dynamic instances (assuming the three AO instances were
>    sufficient for your app previously). Many devs wouldn't learn about
>    the new scheduler attributes until after their app (suddenly) becomes
>    popular - not the best time for surprises. And Google wouldn't get as
>    much feedback on the features/behavior of the new scheduler.
>
>    Is Always-on going to be kept under the new model?
>
>    /Tom
>
>
>
>
>
>
>    Robert Kluin <[email protected]> Jul 22 10:11PM -0400 
> ^<#13158691f992ddfb_digest_top>
>
>    I've suspected the same thing. So far we've seen no pricing info for
>    always on and questions about it have went unanswered. Not to mention
>    that $2.10 / week for three always-on instances is a lot different
>    than $40 / week.
>
>
>    Robert
>
>
>
>
>
>
>
>    Francois Masurel <[email protected]> Jul 23 02:01AM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Geez, now even some Dynamic instances are not used too and stay idle
>    for
>    hours (check attachment).
>
>    With the new pricing model this will get really really expensive.
>
>    I hope there is definitely something going wrong.
>
>    Francois
>
>
>
>   Topic: path/wildcards on GAE Boto 
> get_bucket()?<http://groups.google.com/group/google-appengine/t/e37730b9a50adcce>
>
>    David Cheney <[email protected]> Jul 22 04:24PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Cross posting answer .. thanks to Mike @ groups.google.com/group/gs-
>    discussion
>
>    The REST API doesn't directly support wildcard request. You can ask
>    for a
>    prefix, (you can see documentation for this here
>    <http://code.google.com/apis/storage/docs/reference-
>    headers.html#prefix>)
>    but not (for example) gs://bucket/*.txt
>
>    gsutil has a library that does the wildcarding you want: please see
>    http://code.google.com/p/gsutil/source/browse/trunk/src/gslib/wildcar
>    ...
>
>    (Or if you just need to do some wildcarding from the command line, you
>    can
>    use gsutil rather than the library inside gsutil)
>
>    ==
>
>
>
>
>   Topic: App Engine Weekly Community Update 
> #1<http://groups.google.com/group/google-appengine/t/d940dbfb796544ef>
>
>    Rodrigo Moraes <[email protected]> Jul 22 12:35PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    Hi Jay,
>    This was also posted on Google Plus:
>
>    https://plus.google.com/111042085517496880918/posts/exjJoZwygq1
>
>    Until there're brand pages on g+, and then the weekly update could be
>    posted
>    on a 'App Engine' profile, you can follow Johan using the link above.
>
>    -- rodrigo
>
>
>
>
>    Barry Hunter <[email protected]> Jul 22 08:57PM +0100 
> ^<#13158691f992ddfb_digest_top>
>
>    Maybe a Google "Alert" for
>
>    site:groups.google.com/group/google-appengine/ intitle:"App Engine
>    Weekly Community Update"
>
>
>    http://www.google.com/alerts/
>
>
>
>
>
>    Geoffrey Spear <[email protected]> Jul 22 01:08PM -0700 
> ^<#13158691f992ddfb_digest_top>
>
>    > nickname++ people as a signal of the question of the current thread
>    > being answered, or we (community) can decide to shift those question
>    > to Stack Overflow and keep the group for more casual discussion.
>
>    Since you mention StackOverflow and linked to some interesting
>    questions in the update, I wonder if anyone with
>    http://data.stackexchange.com
>    skills could produce similar metrics from the google-app-engine tag on
>    SO.
>
>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/google-appengine?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to