GabrielBrascher opened a new issue #5071:
URL: https://github.com/apache/cloudstack/issues/5071


   <!--
   Verify first that your issue/request is not already reported on GitHub.
   Also test if the latest release and master branch are affected too.
   Always add information AFTER of these HTML comments, but no need to delete 
the comments.
   -->
   
   ##### ISSUE TYPE
   <!-- Pick one below and delete the rest -->
    * Bug Report
   
   ##### COMPONENT NAME
   <!--
   Categorize the issue, e.g. API, VR, VPN, UI, etc.
   -->
   ~~~
   API
   ~~~
   
   ##### CLOUDSTACK VERSION
   <!--
   New line separated list of affected versions, commit ID for issues on master 
branch.
   -->
   
   ~~~
   4.15.0.0
   ~~~
   
   ##### CONFIGURATION
   <!--
   Information about the configuration if relevant, e.g. basic network, 
advanced networking, etc.  N/A otherwise
   -->
   - Hypervisor: KVM;
   - Network: Advanced network;
   - Isolation method: VXLAN.
   
   ##### OS / ENVIRONMENT
   <!--
   Information about the environment if relevant, N/A otherwise
   -->
   N/A
   
   ##### SUMMARY
   <!-- Explain the problem/feature briefly -->
   We are facing some issues when creating new networks on the CloudStack 
`4.15.0.0` (and they extend to `4.15.1 RC1`, as well as `4.16-SNAPSHOT`); prior 
to upgrading the same network creation would work; as we had addressed issue 
#3040 via PR #4190.
   
   This issue seems to be caused due to a validation added in 
https://github.com/apache/cloudstack/pull/4040. The respective validation 
checks explicitly for VLAN; source code line can be found at at 
[NetworkDaoImpl.java#L783](https://github.com/apache/cloudstack/blob/937def533aa11b45974ffb82aac14a4da4fc7750/engine/schema/src/main/java/com/cloud/network/dao/NetworkDaoImpl.java#L783)
   ~~~
       public List<NetworkVO> listByPhysicalNetworkPvlan(long 
physicalNetworkId, String broadcastUri) {
           final URI searchUri = BroadcastDomainType.fromString(broadcastUri);
   ->      if (!searchUri.getScheme().equalsIgnoreCase("vlan")) {
               throw new CloudRuntimeException("VLAN requested but URI is not 
in the expected format: " + searchUri.toString());
           }
           ...
       }
   ~~~
   
   
   ##### STEPS TO REPRODUCE
   <!--
   For bugs, show exactly how to reproduce the problem, using a minimal 
test-case. Use Screenshots if accurate.
   
   For new features, show how the feature would be used.
   -->
   
   <!-- Paste example playbooks or commands between quotes below -->
   ~~~
   1. Set a Zone with a private network isolated via VXLAN
   2. Create Network passing VLAN ID (either as 'vlan=vxlan://VID' or simply 
'vlan=VID')
   ~~~
   
   <!-- You can also paste gist.github.com links for larger files -->
   
   ##### EXPECTED RESULTS
   <!-- What did you expect to happen when running the steps above? -->
   
   ~~~
   The network is created with broadcast URI of vxlan://VID
   ~~~
   
   ##### ACTUAL RESULTS
   <!-- What actually happened? -->
   
   <!-- Paste verbatim command output between quotes below -->
   ~~~
   Network fails to be created.
   
   LOG:
   2021-06-03 11:09:55,724 ERROR [c.c.a.ApiServer] 
(qtp1665620686-39719:ctx-bf7efb52 ctx-c73431d6 ctx-c4105005) (logid:2252fead) 
unhandled exception executing api command: [Ljava.lang.String;@6b3403ea
   com.cloud.utils.exception.CloudRuntimeException: VLAN requested but URI is 
not in the expected format: vxlan://525
           at 
com.cloud.network.dao.NetworkDaoImpl.listByPhysicalNetworkPvlan(NetworkDaoImpl.java:784)
           at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
           at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
           at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
           at java.base/java.lang.reflect.Method.invoke(Method.java:566)
           at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:198)
           at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163)
           at 
com.cloud.utils.db.TransactionContextInterceptor.invoke(TransactionContextInterceptor.java:34)
   ~~~
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to