diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/variations/steps/bulk.js b/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/variations/steps/bulk.js
index 42b5a81fd43459fe37bd86440a9792cba9383220..78e8c5b5b3721c9670afc81bf3f018d5f89abd9a 100644
--- a/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/variations/steps/bulk.js
+++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/variations/steps/bulk.js
@@ -304,6 +304,7 @@ define([
 
                     uploadInput.fileupload({
                         dataType: 'json',
+                        dropZone: gallery,
                         process: [{
                             action: 'load',
                             fileTypes: /^image\/(gif|jpeg|png)$/
diff --git a/app/code/Magento/Downloadable/Model/Product/Type.php b/app/code/Magento/Downloadable/Model/Product/Type.php
index 20daff9dbca0bf01625c28a817d4911d4282d1ef..fb65e3f152cc416fecc9d7155d1ca4d57f13356e 100644
--- a/app/code/Magento/Downloadable/Model/Product/Type.php
+++ b/app/code/Magento/Downloadable/Model/Product/Type.php
@@ -178,7 +178,7 @@ class Type extends \Magento\Catalog\Model\Product\Type\Virtual
      */
     public function hasOptions($product)
     {
-        return $product->getLinksPurchasedSeparately() || parent::hasOptions($product);
+        return parent::hasOptions($product) || $this->hasLinks($product);
     }
 
     /**
diff --git a/app/code/Magento/Search/view/frontend/templates/form.mini.phtml b/app/code/Magento/Search/view/frontend/templates/form.mini.phtml
index 597e07cd37d6ee3e3e7ce5b822592cac3f14a353..3fdd5e7e876ce5f7d67d6d09b6b17ba6f38c7441 100644
--- a/app/code/Magento/Search/view/frontend/templates/form.mini.phtml
+++ b/app/code/Magento/Search/view/frontend/templates/form.mini.phtml
@@ -23,7 +23,7 @@ $helper = $this->helper('Magento\Search\Helper\Data');
                     <input id="search"
                            data-mage-init='{"quickSearch":{
                                 "formSelector":"#search_mini_form",
-                                "url":"<?php /* @escapeNotVerified */ echo $block->getUrl('search/ajax/suggest'); ?>",
+                                "url":"<?php /* @escapeNotVerified */ echo $block->getUrl('search/ajax/suggest', ['_secure' => $block->getRequest()->isSecure()]); ?>",
                                 "destinationSelector":"#search_autocomplete"}
                            }'
                            type="text"
diff --git a/app/code/Magento/Theme/Block/Html/Topmenu.php b/app/code/Magento/Theme/Block/Html/Topmenu.php
index 8b86ee29a86d29e78786291c29dcc2ba733ec3d3..0a7c43c26692d107768f5853abec099401dbcc4f 100644
--- a/app/code/Magento/Theme/Block/Html/Topmenu.php
+++ b/app/code/Magento/Theme/Block/Html/Topmenu.php
@@ -49,7 +49,6 @@ class Topmenu extends Template implements IdentityInterface
         TreeFactory $treeFactory,
         array $data = []
     ) {
-        $this->setCacheLifetime(30 * 60);
         parent::__construct($context, $data);
         $this->_menu = $nodeFactory->create(
             [
@@ -60,6 +59,16 @@ class Topmenu extends Template implements IdentityInterface
         );
     }
 
+    /**
+     * Get block cache life time
+     *
+     * @return int
+     */
+    protected function getCacheLifetime()
+    {
+        return parent::getCacheLifetime() ?: 3600;
+    }
+
     /**
      * Get top menu html
      *
diff --git a/dev/tests/integration/testsuite/Magento/GroupedProduct/Model/ResourceModel/Product/Type/Grouped/AssociatedProductsCollectionTest.php b/dev/tests/integration/testsuite/Magento/GroupedProduct/Model/ResourceModel/Product/Type/Grouped/AssociatedProductsCollectionTest.php
index a46b4dfb0d3e806c22bc99c4458fc481dd0c339f..9c6173edc74023dbc7849fe4f4584d15aec9ef86 100644
--- a/dev/tests/integration/testsuite/Magento/GroupedProduct/Model/ResourceModel/Product/Type/Grouped/AssociatedProductsCollectionTest.php
+++ b/dev/tests/integration/testsuite/Magento/GroupedProduct/Model/ResourceModel/Product/Type/Grouped/AssociatedProductsCollectionTest.php
@@ -30,8 +30,9 @@ class AssociatedProductsCollectionTest extends \PHPUnit_Framework_TestCase
         $resultData = $collection->getColumnValues('sku');
         $this->assertNotEmpty($resultData);
 
-        foreach (['simple-1', 'virtual-product'] as $skuExpected) {
-            $this->assertTrue(in_array($skuExpected, $resultData));
-        }
+        $expected = ['virtual-product', 'simple-1'];
+        sort($expected);
+        sort($resultData);
+        $this->assertEquals($expected, $resultData);
     }
 }