3

While i am uploading the objects via Changesets in production it showing an error is

This change set is not currently available. Recently uploaded change sets may take up to 30 minutes to be available for deployment. Please wait 30 minutes and try deploying your change set again.

  • How long ago did you deploy the changeset? – Doug B Apr 24 '14 at 11:06
  • From 4-5 hrs back onwards i am deploying.. – Sathya Apr 24 '14 at 11:10
  • 3
    We once had a change set take about 27 hours to appear (there was a comment on trust.salesforce.com eventually warning of slow replication architecture performance). You just have to wait it out I'm afraid. (Don't keep resending it, as this doesn't help the situation!!) – Simon Lawrence Apr 24 '14 at 11:13
  • Its not an error actually. It may usually take some time to appear in Production. Just keep refreshing the page and it will appear once its available. – sunny Oct 13 '14 at 10:04
  • consider Gearset - an inexpensive tool that will make you never want to use changesets again – cropredy Oct 25 '17 at 2:47
3

This is not an error , you need to wait. It sometimes takes time for change sets to appear in Production.

| improve this answer | |
3

This is normal for change sets (larger change sets can take longer to upload). However you can look into the following alternatives if you don't like using change sets which can be very slow:

Copado Deployer (AppExchange App) - https://appexchange.salesforce.com/listingDetail?listingId=a0N3000000B3dgGEAR

This is a tool that can be used for free to perform deployments of metadata, data, users (with related information), perform Git backups and automated Apex tests and much more which you cannot do with change sets.

Eclipse SDK - Free but time consuming, with very poor error handling.

ANT - Free but time consuming to setup and select the metadata you want.

| improve this answer | |
2

I know this isn't an answer but I made some code that checks a changeset to see if it's ready. I frustratingly wrote it in the time it took waiting for large changesets, so it's rudimentary and could definitely be improved.

Simply copy the URL from the browser of the Unavailable Changeset and it alerts you when it's ready as well as opens it in a new window. Enjoy!

<apex:page controller="ChangesetCheckerController">

<head>
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
</head>
<html>
<h3> Enter Change Set URL below</h3>
<div id="paraContainer" style="display:none">
    <p id="para">
        Checking on the changeset. Please wait...
    </p>
</div>
<form>
    <input id="urlInput" />
    <input id="submitbtn" type="button" value="Check Now" />
</form>
<script type="text/javascript">
    $("#submitbtn").click(function() {
        $("#paraContainer").css("display", "inline");
        checkChg();
    });

    function checkChg() 
    {
        var newURL = $("#urlInput").val();
        try 
        {
            Visualforce.remoting.Manager.invokeAction
            (
                '{!$RemoteAction.ChangesetCheckerController.checkChg}',
                newURL,
                function(result, event) 
                {
                    var foundin = '';
                    if (event.status)
                    {
                        console.log('success');
                        console.log(result);
                        $("#para").html(result);
                        foundin = $('p:contains("Change Set Unavailable")');
                        if (result == '') 
                        {
                            check();
                        }
                        else if (foundin.length == 0) 
                        {
                            foundin = $('p:contains("PackageUnavailableException")');
                            if (foundin.length == 0) 
                            {
                                 $("#para").empty();
                                alert('Change Set Ready');
                                window.open(newURL, "_blank");
                            } 
                            else 
                            {
                               check();
                            }
                        }
                    } 
                    else if (event.type === 'exception') 
                    {
                        console.log(event.message + " " + event.where);
                    } 
                    else 
                    {
                        console.log(event.message);
                    }
                }, 
                {
                    escape: true
                }
            );
        } 
        catch (err) 
        {
           check();
        }
    }
    function check()
    {
        $("#para").text("Will check in 2 seconds again.. waiting..");
        setTimeout(function() { 
            $("#para").text("Checking on the changeset. Please wait...");
            checkChg();
        }, 2000);
    }
</script>

</html>

public class ChangesetCheckerController
{
@RemoteAction
public static String checkChg(String url)   
{
    String html = '';
    try
    {
        PageReference page = new PageReference(url);
        Blob b = page.getContent();
        html = String.valueof(b);
        system.debug(html);
    }
    catch(Exception e)
    {
    }
    return html;
    }
}
| improve this answer | |
2

There are a few relevant Ideas. One way to maybe make salesforce fix this issue is to vote for them.

  1. Change Sets STILL take up to 30 minutes to be available

    Change Sets STILL take up to 30 minutes to be available

    Even though this was supposed to be available in 2013 its 2017 and I still see messages that say my changeset will not be avaiavle for up to 30 minutes.

    This says it was done. But it wasnt. Or at least not that I have seen. https://success.salesforce.com/apex/ideaView?id=08730000000IyYKAA0

  2. The above Idea also references Make change set upload real time. The Idea detail says it was delivered in 2013, but perhaps they broke it again since.

    Make change set upload real time

    Change Set Unavailable
    This change set is not currently available. Recently uploaded change sets may take up to 30 minutes to be available for deployment. Please wait 30 minutes and try deploying your change set again.

    The above pretty much says it all. "30 minutes" is an outrageous time to wait to deploy code. Currently you can an email when the set has been pushed to the org, but this email that says "hey, it's ready" isn't really the reality of it. If you follow that email and go to try and deploy, you still need to wait a few minutes. This makes Eclipse still faster at deploying code, by leaps and bounds, but Change Sets are better for grouping objects to deploy, so there's no real winner.

  3. There's another idea requesting that the mail is send only when it's actually ready: Deploy: Outbound change sets: Please send notification email when deployment IS

    Deploy: Outbound change sets: Please send notification email when deployment IS

    When using the outbound change set tool to send updates to our production org we recieve an email notification when the change set is uploaded. This is useless information since it fools you to think that you can deploy the objects.

    If you click on the "change sets awaiting deployments"-link you will get a "CHANGE SET UNAVAILABLE" message.

    It even says in your helptext that the uploaded material could be unavailble up to 30 minutes.

    >> Please send the notification email to be sent when it IS available for deploment. <<

    And... thank your for providing this functionality since this is a really nice way of moving objects/code from the sandbox to any other organization. =)

    Change Set Unavailable

| improve this answer | |
  • While this link may answer the question, it is better to include the essential parts of the answer here and provide the link for reference. Link-only answers can become invalid if the linked page changes. - From Review – Gortonington Oct 20 '17 at 14:08
  • @Gortonington I'm not sure what you mean. Have you actually read my answer? There is a summary of each linked idea in the sentence linking to it, and repeating entire ideas verbatim here is no use as far as I can see. – Legolas Oct 22 '17 at 14:46
  • 2
    I fully understand that it gives a synopsis - the purpose is to have answers that are not reliant on links, which is why there is a flag for 'link only answers'. If an idea is explained on a link, you should take the part that is essential for your answer and cite it. I agree it does not need to be 'verbatim', but you need to provide context outside of 'here' or 'this'. – Gortonington Oct 23 '17 at 12:36
  • 2
    These links are relevant, and I vote not to delete this answer. Legolas, I have reformatted this question to indicate how I would have written such an answer. If you include the relevant content here, then visiting the links is not necessary, which is the biggest problem with link only answers. Links can break over time. and we want the content on this site to be useful even were every link to go dead. – Adrian Larson Oct 24 '17 at 19:57
  • 2
    It's 2019 and this is still happening. – eyedar Feb 17 '19 at 7:28
1

Changesets take a while before they are available for deployment. Although the message says 30 minutes, I've known it take longer.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.