{"action":"created","issue":{"url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/53","labels_url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/53/labels{/name}","comments_url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/53/comments","events_url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/53/events","html_url":"https://github.com/mbraceproject/MBrace.Azure/issues/53","id":63704706,"number":53,"title":"Discussion thread: Version tolerance ","user":{"login":"krontogiannis","id":2443933,"avatar_url":"https://avatars.githubusercontent.com/u/2443933?v=3","gravatar_id":"","url":"https://api.github.com/users/krontogiannis","html_url":"https://github.com/krontogiannis","followers_url":"https://api.github.com/users/krontogiannis/followers","following_url":"https://api.github.com/users/krontogiannis/following{/other_user}","gists_url":"https://api.github.com/users/krontogiannis/gists{/gist_id}","starred_url":"https://api.github.com/users/krontogiannis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/krontogiannis/subscriptions","organizations_url":"https://api.github.com/users/krontogiannis/orgs","repos_url":"https://api.github.com/users/krontogiannis/repos","events_url":"https://api.github.com/users/krontogiannis/events{/privacy}","received_events_url":"https://api.github.com/users/krontogiannis/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/labels/discussion","name":"discussion","color":"0052cc"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":27,"created_at":"2015-03-23T11:50:06Z","updated_at":"2015-07-25T00:01:06Z","closed_at":null,"body":"Edit : \r\n\r\nAs of `0.6.5` runtime state will be created in **new version specific containers**. This means older state (processes, logs, etc) will not be accessible.\r\n\r\nCleaning up the older state can be done using:\r\n```fsharp\r\nlet cluster = Runtime.GetHandle({ config with Version = \"0.6.4.0\" })\r\ncluster.Reset(reactivate = false) // also check the other optional arguments\r\n```\r\nWhen using this version override only a limited set of APIs can be used like `Reset/ShowWorkers/ShowProcesses/etc`\r\n\r\n---\r\n> Initial post (ignore this):\r\n> As of `0.6.5` workers/clients perform version checks, so running jobs from older runtimes will not be allowed.\r\n> \r\n> **Workaround 1**\r\n> Use different `Configuration.Id` value from the default (0). This value should be the same in both workers and clients.\r\n> \r\n> **Workaround 2**\r\n> 1. Stop workers.\r\n> 2. `let runtime = Runtime.GetHandle(config, ignoreVersionCompatibility = true)`\r\n> 3. `runtime.Reset()` Clear ALL state. Cleaning only Queues and tables should work fine too if you need to keep older CloudFiles etc in config.UserData folder, but use at your own risk.\r\n> 4. Start workers.\r\n"},"comment":{"url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/comments/124771610","html_url":"https://github.com/mbraceproject/MBrace.Azure/issues/53#issuecomment-124771610","issue_url":"https://api.github.com/repos/mbraceproject/MBrace.Azure/issues/53","id":124771610,"user":{"login":"dsyme","id":7204669,"avatar_url":"https://avatars.githubusercontent.com/u/7204669?v=3","gravatar_id":"","url":"https://api.github.com/users/dsyme","html_url":"https://github.com/dsyme","followers_url":"https://api.github.com/users/dsyme/followers","following_url":"https://api.github.com/users/dsyme/following{/other_user}","gists_url":"https://api.github.com/users/dsyme/gists{/gist_id}","starred_url":"https://api.github.com/users/dsyme/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dsyme/subscriptions","organizations_url":"https://api.github.com/users/dsyme/orgs","repos_url":"https://api.github.com/users/dsyme/repos","events_url":"https://api.github.com/users/dsyme/events{/privacy}","received_events_url":"https://api.github.com/users/dsyme/received_events","type":"User","site_admin":false},"created_at":"2015-07-25T00:01:06Z","updated_at":"2015-07-25T00:01:06Z","body":"@eiriktsarpalis Note that if you add\r\n\r\n    type Delay<'T>(f: unit -> CM<'T>) =\r\n      interface CM<'T> with member x.Call(cont) = f().Call(cont) \r\n\r\n...\r\n\r\n    member __.Delay(f : (unit -> CM<'T>)) : CM<'T> = new Delay<'T>(f) :> _\r\n\r\nthen you get \r\n\r\n  [|FSI_0017+Delay`1[System.Int32]; FSI_0019+workflow@90-4|]\r\n\r\nwhich is progress since the only actual closure is associated with the workflow delay itself\r\n"}}