diff --git a/plugins/org.teiid.designer.dqp.ui/plugin.xml b/plugins/org.teiid.designer.dqp.ui/plugin.xml
index 7cb0c2a..76d4bc1 100644
--- a/plugins/org.teiid.designer.dqp.ui/plugin.xml
+++ b/plugins/org.teiid.designer.dqp.ui/plugin.xml
@@ -52,6 +52,12 @@
             categoryId="dqpUiPreferenceCategory"
             class="org.teiid.designer.runtime.ui.preferences.TeiidImporterTimeoutPreferenceContributor">
       </preference>
+      <!-- Teiid Server Start-up Timeout Preference -->
+      <preference
+            id="teiidServerStartupTimeoutPreferenceContributor"
+            categoryId="dqpUiPreferenceCategory"
+            class="org.teiid.designer.runtime.ui.preferences.TeiidServerStartupTimeoutPreferenceContributor">
+      </preference>
       <!-- Enable QueryPlans Preference -->
       <preference
             id="enableQueryPlanPreferenceContributor"
diff --git a/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/i18n.properties b/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/i18n.properties
index d02f1d6..813c8c8 100644
--- a/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/i18n.properties
+++ b/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/i18n.properties
@@ -621,6 +621,10 @@
 TeiidImporterTimeoutPreferenceContributor.name = Teiid Connection Importer Timeout (sec) - (use 0 for no timeout).
 TeiidImporterTimeoutPreferenceContributor.toolTip = Set the timeout (in sec) for the Teiid Connection Importer. (use 0 for no timeout)
 
+##### TeiidServerStartupTimeoutPreferenceContributor
+TeiidServerStartupTimeoutPreferenceContributor.name = Teiid Server Startup Timeout (sec) - (use 0 for no timeout).
+TeiidServerStartupTimeoutPreferenceContributor.toolTip = Set the timeout (in sec) for the Teiid Server Startup.
+
 ##### JBossRequestTimeoutPreferenceContributor
 JBossRequestTimeoutPreferenceContributor.name = JBoss Execution Request Timeout (sec)
 JBossRequestTimeoutPreferenceContributor.toolTip = Set the timeout (in sec) for execution requests to the JBoss server
diff --git a/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/preferences/TeiidServerStartupTimeoutPreferenceContributor.java b/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/preferences/TeiidServerStartupTimeoutPreferenceContributor.java
new file mode 100644
index 0000000..8428ffb
--- /dev/null
+++ b/plugins/org.teiid.designer.dqp.ui/src/org/teiid/designer/runtime/ui/preferences/TeiidServerStartupTimeoutPreferenceContributor.java
@@ -0,0 +1,155 @@
+/*
+ * JBoss, Home of Professional Open Source.
+ *
+ * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing.
+ *
+ * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors.
+ */
+package org.teiid.designer.runtime.ui.preferences;
+
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.jface.preference.PreferencePage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Spinner;
+import org.eclipse.ui.IWorkbench;
+import org.osgi.service.prefs.BackingStoreException;
+import org.teiid.core.designer.util.I18nUtil;
+import org.teiid.designer.runtime.DqpPlugin;
+import org.teiid.designer.runtime.PreferenceConstants;
+import org.teiid.designer.runtime.ui.DqpUiConstants;
+import org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor;
+
+public class TeiidServerStartupTimeoutPreferenceContributor  implements IGeneralPreferencePageContributor, DqpUiConstants {
+
+    private static final String PREFIX = I18nUtil.getPropertyPrefix(TeiidServerStartupTimeoutPreferenceContributor.class);
+
+    private Spinner timeoutSecTextField;
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#createPreferenceEditor(org.eclipse.swt.widgets.Composite)
+     * @since 5.0
+     */
+    @Override
+    public void createPreferenceEditor(Composite theParent) {
+        Composite pnl = new Composite(theParent, SWT.NONE);
+        pnl.setLayout(new GridLayout(2, false));
+        pnl.setLayoutData(new GridData());
+
+        this.timeoutSecTextField = new Spinner(pnl, SWT.BORDER);
+        this.timeoutSecTextField.setToolTipText(getToolTip());
+        this.timeoutSecTextField.setMaximum(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC_MAX);
+        this.timeoutSecTextField.setMinimum(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC_MIN);
+
+        Label label = new Label(pnl, SWT.NONE);
+        label.setText(getName());
+        label.setToolTipText(getToolTip());
+
+        // initialize state
+        refresh();
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#getName()
+     * @since 5.0
+     */
+    @Override
+    public String getName() {
+        return UTIL.getStringOrKey(PREFIX + "name"); //$NON-NLS-1$
+    }
+
+    /**
+     * Obtains the <code>IEclipsePreferences</code> where this preference is being persisted.
+     *
+     * @return the preferences
+     */
+    private IEclipsePreferences getPreferences() {
+        return DqpPlugin.getInstance().getPreferences();
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#getToolTip()
+     * @since 5.0
+     */
+    @Override
+    public String getToolTip() {
+        return UTIL.getStringOrKey(PREFIX + "toolTip"); //$NON-NLS-1$
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#performCancel()
+     * @since 5.0
+     */
+    @Override
+    public boolean performCancel() {
+        return true;
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#performDefaults()
+     * @since 5.0
+     */
+    @Override
+    public boolean performDefaults() {
+        this.timeoutSecTextField.setSelection(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC_DEFAULT);
+
+        // save
+        try {
+            getPreferences().flush();
+            return true;
+        } catch (BackingStoreException e) {
+            return false;
+        }
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#performOk()
+     * @since 5.0
+     */
+    @Override
+    public boolean performOk() {
+        IEclipsePreferences prefs = getPreferences();
+        int timeout = this.timeoutSecTextField.getSelection();
+        prefs.putInt(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC, timeout);
+
+        // save
+        try {
+            prefs.flush();
+            return true;
+        } catch (BackingStoreException e) {
+            return false;
+        }
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#refresh()
+     * @since 5.0
+     */
+    @Override
+    public void refresh() {
+        IEclipsePreferences prefs = getPreferences();
+        int timeoutSec = prefs.getInt(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC,
+                                      PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC_DEFAULT);
+        this.timeoutSecTextField.setSelection(timeoutSec);
+    }
+
+    /**
+     * {@inheritDoc}
+     *
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#setPreferencePage(org.eclipse.jface.preference.PreferencePage)
+     */
+    public void setPreferencePage(PreferencePage preferencePage) {
+    }
+
+    /**
+     * @see org.teiid.designer.ui.preferences.IGeneralPreferencePageContributor#setWorkbench(org.eclipse.ui.IWorkbench)
+     * @since 5.0
+     */
+    @Override
+    public void setWorkbench(IWorkbench theWorkbench) {
+    }
+
+}
diff --git a/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/PreferenceConstants.java b/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/PreferenceConstants.java
index c99c3d8..a589ab7 100644
--- a/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/PreferenceConstants.java
+++ b/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/PreferenceConstants.java
@@ -78,4 +78,24 @@
      * The default value for the {@link #JBOSS_REQUEST_EXECUTION_TIMEOUT} preference. Default value is {@value} .
      */
     int JBOSS_REQUEST_EXECUTION_TIMEOUT_SEC_DEFAULT = 10;
+    
+    /**
+     * The name of the preference indicating Teiid Importer timeout value (in Secs)
+     */
+    String TEIID_SERVER_STARTUP_TIMEOUT_SEC = PLUGIN_ID + ".preferences.TeiidServerStartupTimeoutSec"; //$NON-NLS-1$
+    
+    /**
+     * The default value for the {@link #TEIID_SERVER_STARTUP_TIMEOUT_SEC} preference. Default value is {@value} .
+     */
+    int TEIID_SERVER_STARTUP_TIMEOUT_SEC_DEFAULT = 120;
+    
+    /**
+     * The Min value for the {@link #TEIID_IMPORTER_TIMEOUT_SEC} preference.
+     */
+    int TEIID_SERVER_STARTUP_TIMEOUT_SEC_MIN = 0;
+
+    /**
+     * The Max value for the {@link #TEIID_IMPORTER_TIMEOUT_SEC} preference.
+     */
+    int TEIID_SERVER_STARTUP_TIMEOUT_SEC_MAX = 999;
 }
diff --git a/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/TeiidParentServerListener.java b/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/TeiidParentServerListener.java
index 90cbf7b..3168cde 100644
--- a/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/TeiidParentServerListener.java
+++ b/plugins/org.teiid.designer.dqp/src/org/teiid/designer/runtime/TeiidParentServerListener.java
@@ -203,6 +203,8 @@
              * @throws Exception
              */
             private void tryConnecting(final IServer parentServer) throws Exception {
+            	int waitTimeInMS = getTimeoutPrefSecs() * 1000;
+            	
                 ITeiidServer teiidServer = factory.adaptServer(parentServer, ServerOptions.ADD_TO_REGISTRY);
                 if (teiidServer != null) {
                     // Places the teiid server is a connecting state which
@@ -231,7 +233,7 @@
                         if( parentConnected ) {
                         	queryServer = factory.adaptServer(parentServer, ServerOptions.NO_CHECK_SERVER_REGISTRY);
                         }                  
-                        Thread.sleep(6000);
+                        Thread.sleep(waitTimeInMS);
                     } catch (Exception ex) {
                     	logThisException = ex;
                     }
@@ -280,6 +282,10 @@
         startTeiidServerThread.start();
     }
     
+    private int getTimeoutPrefSecs() {
+        return DqpPlugin.getInstance().getPreferences().getInt(PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC, PreferenceConstants.TEIID_SERVER_STARTUP_TIMEOUT_SEC_DEFAULT);
+    }
+    
     private boolean adaptServerOK(final IServer parentServer) throws Exception {
     	try {
 			factory.adaptServer(parentServer, ServerOptions.NO_CHECK_SERVER_REGISTRY);
