[ 
https://issues.apache.org/jira/browse/CLOUDSTACK-9074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15044991#comment-15044991
 ] 

ASF GitHub Bot commented on CLOUDSTACK-9074:
--------------------------------------------

Github user serg38 commented on the pull request:

    https://github.com/apache/cloudstack/pull/1094#issuecomment-162532791
  
    This index comes from schema-40to410.sql:
    
    CREATE TABLE `cloud`.`nicira_nvp_router_map` (
    
      `id` bigint unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
    
      `logicalrouter_uuid` varchar(255) NOT NULL UNIQUE COMMENT 'nicira uuid of 
logical router',
    
      `network_id` bigint unsigned NOT NULL UNIQUE COMMENT 'cloudstack id of 
the network',
    
      PRIMARY KEY (`id`),
    
      CONSTRAINT `fk_nicira_nvp_router_map__network_id` FOREIGN KEY 
(`network_id`) REFERENCES `networks`(`id`) ON DELETE CASCADE
    
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8; 
    
    
    
    
    
    
    
    There might be variation how UNIQUE attribute is enforced in different 
versions of MySQL.
    
    In 5.5 it generate unique index  `logicalrouter_uuid`
    
    To take it out the correct statement is
    
    ALTER TABLE `cloud`.`nicira_nvp_router_map` 
    DROP INDEX `logicalrouter_uuid` ;
    
    Can you check if schema-40to410.sql got applied in your environment? What 
version of MySQL do you use?
    
    The drop index logicalrouter_uuid should come from schema-470to471.sql (or 
later upgrade script)but not from schema-410to420-cleanup.sql.
    
    
    
    From:  Remi Bergsma <notificati...@github.com>
    Reply-To:  apache/cloudstack <re...@reply.github.com>
    Date:  Sunday, December 6, 2015 at 11:59 AM
    To:  apache/cloudstack <cloudst...@noreply.github.com>
    Cc:  Sergey Levitskiy <serg...@hotmail.com>
    Subject:  Re: [cloudstack] CLOUDSTACK-9074: Support shared networking in 
NiciraNVP Plugin (#1094)
    
    
    Guys, I cannot build a cloud from this branch any more. The build itself 
works, but the database deployment gives an SQL error: Can't DROP 
'logicalrouter_uuid'; check that column/key exists
    
    Details:
    [INFO] --- exec-maven-plugin:1.2.1:java (create-schema) @ cloud-developer 
---
    log4j:WARN No appenders could be found for logger 
(org.springframework.core.env.StandardEnvironment).
    log4j:WARN Please initialize the log4j system properly.
    log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for 
more info.
    ========> WARNING: Provided file does not exist: 
/data/git/cs1/cloudstack/developer/../utils/conf/db.properties.override
    ========> WARNING: Provided file does not exist: 
/data/git/cs1/cloudstack/developer/developer-prefill.sql.override
    ========> Initializing database=cloud with host=localhost port=3306 
username=cloud password=cloud
    ============> Running query: drop database if exists `cloud`
    ============> Running query: create database `cloud`
    ============> Running query: GRANT ALL ON cloud.* to 'cloud'@`localhost` 
identified by 'cloud'
    ============> Running query: GRANT ALL ON cloud.* to 'cloud'@`%` identified 
by 'cloud'
    ========> Initializing database=cloud_usage with host=localhost port=3306 
username=cloud password=cloud
    ============> Running query: drop database if exists `cloud_usage`
    ============> Running query: create database `cloud_usage`
    ============> Running query: GRANT ALL ON cloud_usage.* to 
'cloud'@`localhost` identified by 'cloud'
    ============> Running query: GRANT ALL ON cloud_usage.* to 'cloud'@`%` 
identified by 'cloud'
    ========> Processing SQL file at 
/data/git/cs1/cloudstack/developer/target/db/create-schema.sql
    ========> Processing SQL file at 
/data/git/cs1/cloudstack/developer/target/db/create-schema-premium.sql
    ========> Processing SQL file at 
/data/git/cs1/cloudstack/developer/target/db/templates.sql
    ========> Processing SQL file at 
/data/git/cs1/cloudstack/developer/developer-prefill.sql
    ========> Processing upgrade: com.cloud.upgrade.DatabaseUpgradeChecker
    [WARNING]
    java.lang.reflect.InvocationTargetException
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
            at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:606)
            at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
            at java.lang.Thread.run(Thread.java:745)
    Caused by: com.cloud.utils.exception.CloudRuntimeException: Unable to 
execute upgrade script: 
/data/git/cs1/cloudstack/developer/target/db/db/schema-410to420-cleanup.sql
            at 
com.cloud.upgrade.DatabaseUpgradeChecker.runScript(DatabaseUpgradeChecker.java:290)
            at 
com.cloud.upgrade.DatabaseUpgradeChecker.upgrade(DatabaseUpgradeChecker.java:425)
            at 
com.cloud.upgrade.DatabaseUpgradeChecker.check(DatabaseUpgradeChecker.java:474)
            at com.cloud.upgrade.DatabaseCreator.main(DatabaseCreator.java:217)
            ... 6 more
    Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Can't 
DROP 'logicalrouter_uuid'; check that column/key exists
            at com.cloud.utils.db.ScriptRunner.runScript(ScriptRunner.java:185)
            at com.cloud.utils.db.ScriptRunner.runScript(ScriptRunner.java:87)
            at 
com.cloud.upgrade.DatabaseUpgradeChecker.runScript(DatabaseUpgradeChecker.java:281)
            ... 9 more
    [INFO] 
------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] 
------------------------------------------------------------------------
    [INFO] Total time: 19.639s (Wall Clock)
    [INFO] Finished at: Sun Dec 06 09:07:53 GMT 2015
    [INFO] Final Memory: 43M/259M
    [INFO] 
------------------------------------------------------------------------
    [ERROR] Failed to execute goal 
org.codehaus.mojo:exec-maven-plugin:1.2.1:java (create-schema) on project 
cloud-developer: An exception occured while executing the Java class. null: 
InvocationTargetException: Unable to execute upgrade script: 
/data/git/cs1/cloudstack/developer/target/db/db/schema-410to420-cleanup.sql: 
Can't DROP 'logicalrouter_uuid'; check that column/key exists -> [Help 1]
    [ERROR]
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e 
switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR]
    [ERROR] For more information about the errors and possible solutions, 
please read the following articles:
    [ERROR] [Help 1] 
http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
    Not sure if it is related. Tried cleaning everything (VMs, git repo, 
storage) but same result.
    
    —
    Reply to this email directly or view it on GitHub.
    
      
    



> Support shared networking in NiciraNVP Plugin
> ---------------------------------------------
>
>                 Key: CLOUDSTACK-9074
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9074
>             Project: CloudStack
>          Issue Type: Improvement
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>    Affects Versions: 4.7.0
>            Reporter: Nicolas Vazquez
>             Fix For: 4.7.0
>
>
> h3. Introduction
> Currently NiciraNVP plugin supports only Isolated networking. In this mode of 
> operations networks are assigned to individual Cloudstack accounts and on NSX 
> side are completely isolated on the L3 level. Many use cases especially in 
> corporate environment call for shared networking mode support. In some 
> circumstances there also may be a need to translate shared NSX network over 
> to a physical VLAN via L2 NSX gateway.
> Features that will be introduced to support Cloudstack shared networks in two 
> modes of NiciraNVP plugin:
> * Shared networks mapped to a physical VLAN with L2 NSX gateway
> * Shared networks within the same L3 NSX domain. Multiple L3 NSX domains will 
> be supported.
> h3. Features
> h4. 1) Shared networking model support
> # Support native Cloudstack shared network in NiciraNVP plugin.
> # Current code that implements isolated networking mode support will stay 
> intact.
> # Designate network service offering by configuring VirtualNetworking 
> provider with NiciraNVP.
> # Static/Source NAT is not used and ignored if defined in the network 
> offering.
> # Nicira_vvp_router_map table will support non-unique logical routers to 
> implement L3 NSX routing domains where multiple Cloudstack networks are 
> attached to the same logical router.
> # Shared network with NSX based Virtual networking will go through the 
> following states:
> ## Allocated
> ## Implementing
> ## Implemented
> ## Destroy
> h4. 2) Support NSX L2 gateways for L2 based VLANs mapped to a physical network
> # Optional L2gatewayserviceuuid parameter for NiciraNVP controller
> # VLAN ID of a Shared network represents VLAN to pass through L2 gateway 
> similar to native Cloudstack shared networking
> # NSX workflow for network allocation
> ## Check if l2gatewayservice defined
> ## Create record in networks table
> ### NiciraNvpGuestNetworkGuru as Guru_name
> ### Lswitch as broadcast_doamin
> ### Vlan://vlan_id as broadcast_uri
> ## Create record in VLAN table
> # NSX workflow for network implementation
> ## Check if l2gatewayservice defined and valid
> ## Create logical switch
> ## Map logical switch to L2gateway service assigning shared network VLAN ID
> # NSX workflow for NIC management and/or hypervisor support
> ## No changes from current implementation
> h4. 3) Support NSX L3 multiple routing domains
> # VLAN ID of a Shared network represents an UUID of a NSX virtual router of a 
> particular routing domain. We will support UUID style notation for VLAN ID. 
> l3gatewayservice option is not used in shared networking
> # It is assumed that if connectivity to the physical networking is required 
> then logical router is configured and connected to the physical network in 
> advance. NiciraNVP plugin will not perform any task beyond basic connectivity 
> to the logical router
> # Support NSX L3 multiple routing domains
> # NSX workflow for network allocation
> ## Create record in networks table
> ### NiciraNvpGuestNetworkGuru as Guru_name
> ### Lswitch as broadcast_domain
> ### NULL as broadcast_uri
> ## Create record in VLAN table
> ## Create record in nicira_nvp_router_map table
> # NSX workflow for network implementation
> ## Check if logical router exists on NSX side which UUID matches the one 
> defined during shared network creation. This mode is activated if VLAN ID 
> supplied in UUID style notation
> ## Create logical switch
> ## Attach logical switch to the logical router
> ## Assign shared network default gateway to the inside port of the logical 
> router
> # NSX workflow for NIC management and/or hypervisor support
> ## No changes from current implementation
> h4. 4) API Changes
> # Existing API addNiciraNvpDevices will be updated
> ## Adding 1 new optional parameter – l2gatewayserviceuuid
> ## Adding 1 new response tag – l2gatewayserviceuuid
> # Existing API listNiciraNvpDevices will be updated
> ## Adding 1 new response tag – l2gatewayserviceuuid
> # Existing API listNics will be updated
> ## Adding 2 new optional response tag – nsxlogicalswitch, nsxlogicalswitchport



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to