[openstack-dev] [quantum] bullking support?

Salvatore Orlando sorlando at nicira.com
Thu Feb 14 17:06:12 UTC 2013


Some comments inline

Regards,
Salvatore

On 14 February 2013 15:47, Paul Michali <pcm at cisco.com> wrote:
> Inline PCM:
>
> On Feb 14, 2013, at 4:45 AM, Gary Kotton wrote:
>
> On 02/13/2013 02:19 PM, Paul Michali wrote:
>
> Had a few quick questions on bulking support.
>
> Are there plugins that have bulking support already?
>
>
> The openvswitch and linuxbridge plugins support bulk network, port and
> subnet creations.
>
>
> PCM: Thanks, I'll take a look at the UTs for these to understand how they
> work.


Also other plugins support bulk operations. __native_bulk_support is
the flag you need to look at.
If a plugin does not support 'native' bulk, the API does emulate it
for you, meaning that you submit bulk requests and then the API
forwards them one by one to the plugin


>
>
>
> I am not aware of the CLI supporting this but you can do it via the client
> API. You just need to pass a list of the items that you wish to create. I
> recall that Salvator opened a bug indicating the API differs from the
> documentation.
>
>
> PCM: So to be sure that I understand… currently, there isn't a way for an
> end user to do bulk creation of networks/subnets/ports? To do this, an app
> would be needed to access the client API?

There's no CLI support for bulk operations, neither the client library does.
You will have to explicitly use the RESTful API.

Gary is a referring an issue in the documentation where the way in
which the body of a bulk requests is created is not correct.

>
> Also, is there a policy on handling errors with bulk operations? Is it all
> or none, or best effort? For example, if I want to create 3 networks, and
> there is an error when creating the second one in the batch, does the first
> get rolled back? Does the third one get skipped or is a create attempted?

It's always atomic. However, if the bulk behaviour is emulated by the
API, and the plugins fails at the i-th resource, the API has not way
to know if the plugin has created or not that resource in the backend.
It assumes it hasn't since what matter at the API layer are the data
in Quantum's database,

>
> Regards,
>
> PCM (Paul Michali)
>
>
>
>
>
> If so, is that facilitated by the plugin itself, or via using the base class
> QuantumDbPluginV2? IOW, do the bulking calls use the base class, which in
> turn uses the child class non-bulking functions to handle each item in the
> bulk?
>
> From a users' perspective, how does one perform a bulk operation (say,
> create network)?
> Does the CLI support bulk operations?
>
> Thanks!
>
>
> PCM (Paul Michali)
>
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>



More information about the OpenStack-dev mailing list