Return-Path: Delivered-To: apmail-incubator-libcloud-archive@minotaur.apache.org Received: (qmail 44932 invoked from network); 25 May 2010 19:15:22 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 25 May 2010 19:15:22 -0000 Received: (qmail 82203 invoked by uid 500); 25 May 2010 19:15:22 -0000 Delivered-To: apmail-incubator-libcloud-archive@incubator.apache.org Received: (qmail 82168 invoked by uid 500); 25 May 2010 19:15:22 -0000 Mailing-List: contact libcloud-help@incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: libcloud@incubator.apache.org Delivered-To: mailing list libcloud@incubator.apache.org Received: (qmail 82160 invoked by uid 99); 25 May 2010 19:15:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 May 2010 19:15:22 +0000 X-ASF-Spam-Status: No, hits=-0.6 required=10.0 tests=AWL,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of paul@querna.org designates 209.85.221.173 as permitted sender) Received: from [209.85.221.173] (HELO mail-qy0-f173.google.com) (209.85.221.173) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 May 2010 19:15:17 +0000 Received: by qyk4 with SMTP id 4so7469759qyk.18 for ; Tue, 25 May 2010 12:14:55 -0700 (PDT) MIME-Version: 1.0 Received: by 10.224.65.29 with SMTP id g29mr4334620qai.262.1274814894899; Tue, 25 May 2010 12:14:54 -0700 (PDT) Received: by 10.229.181.12 with HTTP; Tue, 25 May 2010 12:14:54 -0700 (PDT) In-Reply-To: <20100525191024.GC2744@fsol> References: <20100507094623.GC2025@rbogorodskiy> <20100525183216.GB2744@fsol> <20100525191024.GC2744@fsol> Date: Tue, 25 May 2010 12:14:54 -0700 Message-ID: From: Paul Querna To: libcloud@incubator.apache.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Subject: Re: [libcloud] GoGrid driver regression? On Tue, May 25, 2010 at 12:10 PM, Roman Bogorodskiy wrote: > =C2=A0Alex Polvi wrote: > >> Roman, >> >> The problem is that the driver must return with an ID. Perhaps we need >> to block and run list_nodes until the node has an id? Lame, but it >> makes the interface consistent. > > I don't quite like idea with blocking. It takes quite a lot of time to > get id assigned. Here's a typical session of creating a new server on > GoGrid: > ... > > This output was generated by gg-tools (http://novel.evilcoder.org/gg/) > that I wrote back then. First column is id, empty column means that id > wasn't assigned yet. > > Please note the timestamps in the shell prompt -- it takes about 3 minute= s > to get id assigned! Imagine if somebody's creating a node in some web's > framework view and expects to return quickly. If the method will block > for 3 or so minutes it won't be any good, IMO. Eeek. I think we will need to block. We do this in the softlayer driver too, it is definitely less than ideal -- but the consistent API we are trying to provide right now makes the promise that the node id (and uuid) returned from create_node is the same as what will be returned from a future list_nodes -- othwerise its even more difficult for code built on top of libcloud to coorelate these IDs in a cross provider way, so this is why I think it will need to block until it can get the right ID for the UUID. > Maybe we could just return -1 or some other special value for a just > created server?