You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ke...@apache.org on 2013/07/31 03:20:46 UTC
git commit: updated refs/heads/4.2 to 065ae7a
Updated Branches:
refs/heads/4.2 a9efec640 -> 065ae7a49
Correct DAO usage in VmwareDatacenterVO, relax assertion conditions to work with stack calling frame that is not wrapped with @DB injection
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/065ae7a4
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/065ae7a4
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/065ae7a4
Branch: refs/heads/4.2
Commit: 065ae7a497086cdc1a81e024dd61117c41e55cc0
Parents: a9efec6
Author: Kelven Yang <ke...@gmail.com>
Authored: Tue Jul 30 18:05:01 2013 -0700
Committer: Kelven Yang <ke...@gmail.com>
Committed: Tue Jul 30 18:05:38 2013 -0700
----------------------------------------------------------------------
.../src/com/cloud/upgrade/dao/VersionDaoImpl.java | 1 +
.../cloud/hypervisor/vmware/VmwareDatacenterVO.java | 16 ++++++++--------
.../src/com/cloud/servlet/CloudStartupServlet.java | 9 ++++++++-
utils/src/com/cloud/utils/db/Transaction.java | 8 +++++++-
4 files changed, 24 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/065ae7a4/engine/schema/src/com/cloud/upgrade/dao/VersionDaoImpl.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/upgrade/dao/VersionDaoImpl.java b/engine/schema/src/com/cloud/upgrade/dao/VersionDaoImpl.java
index 7c5c9cc..3b2ed7e 100644
--- a/engine/schema/src/com/cloud/upgrade/dao/VersionDaoImpl.java
+++ b/engine/schema/src/com/cloud/upgrade/dao/VersionDaoImpl.java
@@ -73,6 +73,7 @@ public class VersionDaoImpl extends GenericDaoBase<VersionVO, Long> implements V
}
@Override
+ @DB
public String getCurrentVersion() {
Connection conn = null;
try {
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/065ae7a4/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareDatacenterVO.java
----------------------------------------------------------------------
diff --git a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareDatacenterVO.java b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareDatacenterVO.java
index a13e59e..b615012 100644
--- a/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareDatacenterVO.java
+++ b/plugins/hypervisors/vmware/src/com/cloud/hypervisor/vmware/VmwareDatacenterVO.java
@@ -46,10 +46,10 @@ public class VmwareDatacenterVO implements VmwareDatacenter {
private String guid;
@Column(name = "name")
- private String name;
+ private String vmwareDatacenterName;
@Column(name = "vcenter_host")
- private String vCenterHost;
+ private String vcenterHost;
@Column(name = "uuid")
private String uuid;
@@ -73,7 +73,7 @@ public class VmwareDatacenterVO implements VmwareDatacenter {
@Override
public String getVmwareDatacenterName() {
- return name;
+ return vmwareDatacenterName;
}
@Override
@@ -93,7 +93,7 @@ public class VmwareDatacenterVO implements VmwareDatacenter {
@Override
public String getVcenterHost() {
- return vCenterHost;
+ return vcenterHost;
}
public void setUuid(String uuid) {
@@ -105,11 +105,11 @@ public class VmwareDatacenterVO implements VmwareDatacenter {
}
public void setVmwareDatacenterName(String name) {
- this.name = name;
+ this.vmwareDatacenterName = name;
}
public void setVcenterHost(String vCenterHost) {
- this.vCenterHost = vCenterHost;
+ this.vcenterHost = vCenterHost;
}
public void setUser(String user) {
@@ -141,9 +141,9 @@ public class VmwareDatacenterVO implements VmwareDatacenter {
public VmwareDatacenterVO(String guid, String name, String vCenterHost, String user, String password) {
this.uuid = UUID.randomUUID().toString();
- this.name = name;
+ this.vmwareDatacenterName = name;
this.guid = guid;
- this.vCenterHost = vCenterHost;
+ this.vcenterHost = vCenterHost;
this.user = user;
this.password = password;
}
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/065ae7a4/server/src/com/cloud/servlet/CloudStartupServlet.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/servlet/CloudStartupServlet.java b/server/src/com/cloud/servlet/CloudStartupServlet.java
index 2cabe15..8fbae92 100755
--- a/server/src/com/cloud/servlet/CloudStartupServlet.java
+++ b/server/src/com/cloud/servlet/CloudStartupServlet.java
@@ -29,6 +29,7 @@ import org.springframework.web.context.support.SpringBeanAutowiringSupport;
import com.cloud.utils.LogUtils;
import com.cloud.utils.SerialVersionUID;
import com.cloud.utils.component.ComponentContext;
+import com.cloud.utils.db.Transaction;
public class CloudStartupServlet extends HttpServlet {
public static final Logger s_logger = Logger.getLogger(CloudStartupServlet.class.getName());
@@ -47,7 +48,13 @@ public class CloudStartupServlet extends HttpServlet {
public void run() {
if(ComponentContext.getApplicationContext() != null) {
_timer.cancel();
- ComponentContext.initComponentsLifeCycle();
+
+ Transaction txn = Transaction.open(Transaction.CLOUD_DB);
+ try {
+ ComponentContext.initComponentsLifeCycle();
+ } finally {
+ txn.close();
+ }
}
}
}, 0, 1000);
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/065ae7a4/utils/src/com/cloud/utils/db/Transaction.java
----------------------------------------------------------------------
diff --git a/utils/src/com/cloud/utils/db/Transaction.java b/utils/src/com/cloud/utils/db/Transaction.java
index 37ea8cf..a5da4b3 100755
--- a/utils/src/com/cloud/utils/db/Transaction.java
+++ b/utils/src/com/cloud/utils/db/Transaction.java
@@ -299,13 +299,19 @@ public class Transaction {
if (se == null) {
return false;
}
+
+ StringBuffer sb = new StringBuffer();
for (; stack < stacks.length; stack++) {
String methodName = stacks[stack].getMethodName();
+ sb.append(" ").append(methodName);
if (methodName.equals(se.ref)){
return true;
}
}
- return false;
+
+ // relax stack structure for several places that @DB required injection is not in place
+ s_logger.warn("Non-standard stack context that Transaction context is manaully placed into the calling chain. Stack chain: " + sb);
+ return true;
}
protected static String buildName() {