On my local site I've created a Document Type called "Test". I packaged it into a revision all by itself.
It transfers to Courier on our dev server just fine. But "On the dev server" when I select to compare and install, it detects 0 items need to be created, 0 need updated, etc..
It won't install the Test document type.
So I tried a Direct Deploy, I get the same error that's existed for a long time, because you guys have failed to update direct deploy to remove the reference to "Umbraco.Courier.UI.Pages.status" on the status.aspx page "The status control no longer exists in the umbraco dll's, it got dropped somewhere between 6.0 and 6.2" and the obmission seems to have carried onto the new version for Umbraco 7.
I can fix that by removing the reference to status, however I shouldn't need to do that, or direct deploy.
The compare/contrast should work and recognize that the document type needs added.
Am I missing something somewhere, configuration wise?
My Document Type is showing up in the hidden drop down.
On my local machine, I have the dev site as a repository in courier.config. On the dev server I have my local machine as the repository.
In umbraco 6 this worked fine, I could build some document types etc on my local machine, package them in courier, and transfer them to the dev server. Then I could go to the revision I transfered and do a compare and install and it would pick up the new document types.
As for our templates/css/js etc. We host all of our JS/CSS on an in house CDN system, and I store all the views in subversion using the nuget Umbraco Package in our visual studio project. E.g. I MSDeploy our whole site to the dev server, and it uses web.config transformations. Which works fine.
Now I thought maybe MSdeploying the app data folder was causing a problem due to that being where the cache is stored. So I excluded that from the deploy and flused both cache's. Redeployed, reboot iis on both boxes etc etc.
Courier still doesn't see the Test document type in the revision, which is very frustrating (this not working is the only thing keeping our project from being upgraded to umbraco 7 "which we like a lot more overall... minus courier delays."
I'm beggining to suspect maybe it's a licensing issue, but the license manage on the profile doesn't let you see what you havethe domains set for, or change them.....
I tried dropping down to umbraco 7.1.9, still doesn't work, same problem. The revisions transfer fine (not via direct deploy), but when I install it, it detects no changes are needed, which is wrong.
I'm going to drop down to 7.0 and try again, but if that doesn't work, I think I'm done struggling with courier constantly, I'll look to another solution, like going back to usync.
Now I get an entirely new error using the latest nightly build on Umbraco 7.2.1,
System.ArgumentNullException: Value cannot be null. Parameter name: The string which needs to be encrypted can not be null. at Umbraco.Courier.Core.Helpers.Encryption.Encrypt(String originalString, String key) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.GetloginAndPass(Int32 userId, String& login, String& pass) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.CloseSession(String sessionKey) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose(Boolean disposing) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose() at Umbraco.Courier.Core.Repository.Dispose(Boolean disposing) at Umbraco.Courier.Core.BaseRevisionHandler.Dispose(Boolean disposing) at Umbraco.Courier.Core.BaseRevisionHandler.Dispose() at Umbraco.Courier.Core.Tasks.TransferTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 12/16/2014 12:24:02 PM
So, just to let others know, this issue was because I was using the courier section to package revisions, and was using compare and install to deploy them and compare and install isn't working in our setup.
However deploying content from the content tree works just fine.
Good to know it is working using the direct deploy method - in most cases that is the best approach. I think I may have mis-lead you however. With Courier v7 latest (currently 2.11.2) deployments via a defined revision should work - it is the exact same process as far as Courier is concerned. In general, with revision-based deployments, you'll be dealing with larger sets of data and so it is expected that the deployment can take longer to complete.
Anyhow, if you run into issues please let us know.
I've just encoutered the same problem. I have two Umbraco 7.2.1 sites - DEV and TEST - running HTTPS, and both have Courier 2.11.2.v7 installed. I can generate a revision on DEV just fine, and I can also transfer it to TEST. But when doing a Compare and Install on TEST, it says there are no changes. Then when actually installing it finishes real quick and nothing is installed. However, if I manually copy the generated revision folder (App_Data\courier\revisions\TestRevision) from DEV to TEST, it actually works (well sort of - the result of the compare still shows no changes, but when installing it actually do install things).
This caused me to take a look at what exactly courier is transferring to TEST. It turns out something goes very wrong in this transfer. The revision folder generated in DEV contains this:
resources (folder)
revision (folder)
settings (folder)
virtualresources (folder)
manifest (file)
TestRevision (file)
TestRevision.couriergraph
But when transferred to TEST i get some mangled folders like this (yes it actually looks like that!)
evision (folder)
resourcesumbraco (folder)
manifest (file)
TestRevision (file)
TestRevision.couriergraph
So a couple of folders are missing, revision folder is missing the "r", and resources folder is called resourcesumbraco.
Anyone experienced this? Seems like a bug in courier(?)
How are you actually doing the transfer? That is, indeed, and odd folder structure - and there's no way a deployed will succeed with that - so I'm curious how you got that. It's not something we've seen in any version of Courier and there are no v7 specific changes in that section.
If you deploy from the content item directly (using the menu) do it succeed? What do the revision folders on your DEV instance look like then?
Yeah, so to start with how I'm doing the transfer. I go to the back office in the DEV site. Here I create a doc type, e.g. TestDocType. Then I go to Courier by clicking the Courier icon in the left side menu, and then create a new revision, e.g. TestRevision. In the revision I only add TestDocType. Then I click Package Selected, and Courier creates the revision package. Then I click Transfer, select the target "Test", which points to the TEST site (which runs HTTPS), and finally I click the Transfer button.
When I go to the TEST site and look at what is in the App_Data\courier\revisions\TestRevision, I see the weird structure mentioned in my earlier post.
If I deploy the doc type directly it works, i.e. TestDocType is successfully deployed to the TEST site. In this case the revision folder in DEV looks like this:
In this direct deploy approach the revision folder is apparently not stored on the TEST site, so I'm unable to determine if the contents is transferred correctly. But since the doc type is deployed, the revision contents must in all likelihood be transferred correctly.
We're looking into it now. We can't repo with a standard 7.1/7/2 install so @Mads has shared his sites and we'll be testing with those. I'll advise here as well as the issue report.
OK. Dunno if it helps but 'pulling' a package from another location seems to get the right structure as far as I can see, but 'pushing' to another location seems to create the problem above.
Testing this on 2 local trial sites (I have a license but was trying to remove variables) - should this still work in trial mode?
Also in both cases once the revision has 'arrived' a compare does not highlight any changes even though I know there are difference between the incoming revision and the local site...e.g. I deleted all the content out of the target site but no new content is being highlighted from the incoming revision.
Is there an earlier version with known issues which works that I can use as this is killing me on a deadline I am trying to hit..
You can use the content menu deploy or manually copy the revision folder structure intact to the target. The license *may* be an issue if the target is not a *.local or localhost - best send a license support request in that case.
@Paul - I've created two simple Umbraco solutions with Courier installed on both, and creating a revision on A and transferring it to B shows the issue. I'll be happy to send it to you somehow. How do you prefer to receive it, and do you need the courier license file as well?
Just did a Winmerge folder comparison and When the revision is 'Pulled' it seems to be missin gthe settings and virtual resources folders. When it is pushed the folder names are all messed up as above....
Sorry and if I do manually put the revision folder into the target site (which I have renamed u3.local) the contents show in the revision, but a comparison shows no differences still.
@Murray - I noticed the same, it shows that there are no changes, even though I manually copy the revision folder to the target site. However, if I then just install anyway, it actually installs the revision.
@Mads you're right...sorry...so the compare bit has a problem not the deploy. All a bit too scary for me...too much opportunity for really messing thing up! I'll wait for things to stabilize....
Not sure if it was clear but if the revision > transfer > compare > deploy isn't working in your environment you can use the content menu deploy. In fact, that's what I'd recommend for the time being - until we can repro the very odd behavior with folders. Mads has provided a repro environment that we're setting up and will try to repro the behavior, then identify any issues as soon as we can.
The remote compare > deploy is not something I'd say has 100% accuracy unless you've been using Courier on the site(s) from the very beginning...even then, I'd do a deploy anyway if you know what you're deploying is, indeed, an update.
For sure there is an issue with Courier for v7 using the Transfer Revision feature. We're looking into it now. For the time being, if you use revisions, we recommedn you manually transfer the revision folder to the target instance.
The issue where courier incorrectly reports which items will be updated may be related as well and is also being investigated.
We've made some updates to the Transfer Engine and the Repository Web Service that address both the mangled folder names and the compare discrepancy. Courier Nightly Build 129 has these fixes included:
@Paul - I'm a little unsure how to install the hotfix. It doesn't appear to be a valid package installable from backoffice. Did you only do code changes, and if so, will it be enough to copy just the binaries on top of existing ones?
The package installer doesn't do upgrades - so you simply update the files from the hotfix archive to the same location in your site. You won't need any sql for this one.
We ended up just not using the transfer features at all. Instead we right click the Content node and deployr from that context menu, which seems to be how 90% of courier users use the tool. Likely why the transfer features got overlooked.
I installed the official package from the Umbraco package Repository.
With the hotfix (build 129) on top it works, but as you posted on Feb 11 this is only a nightly and not yet released. I was just wondering when to expect the fix in the official release?
Or is this hotfix already included in the latest release?
Ah, sorry. Very shortly (before the end of March). The next release has a number of fixes, including the one for the issue you mention, so just verifying those all are good. Does the hotfix-nightly-build resolve the issue for you?
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Blocks Folder | Id:BlocksFolder | Provider:Document types ---> System.IO.FileLoadException: Could not load file or assembly 'Castle.Core, Version=2.5.1.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) at NHibernate.ByteCode.Castle.ProxyFactory.GetProxy(Object id, ISessionImplementor session) at NHibernate.Tuple.Entity.AbstractEntityTuplizer.CreateProxy(Object id, ISessionImplementor session) at NHibernate.Event.Default.DefaultLoadEventListener.CreateProxyIfNecessary(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options, IPersistenceContext persistenceContext) at NHibernate.Event.Default.DefaultLoadEventListener.ProxyOrLoad(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options) at NHibernate.Event.Default.DefaultLoadEventListener.OnLoad(LoadEvent event, LoadType loadType) at NHibernate.Impl.SessionImpl.FireLoad(LoadEvent event, LoadType loadType) at NHibernate.Impl.SessionImpl.Load(String entityName, Object id) at NHibernate.Impl.SessionImpl.Load(Type entityClass, Object id) at NHibernate.Impl.SessionImpl.Load[T](Object id) at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.CmsNodeHelper.Create(String name, Guid uniqueId, Guid nodeObjectType, ISession session) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\CmsNodeHelper.cs:line 35 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.DocumentTypeHelper.Create(DocumentType doctype, ISession session) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\DocumentTypeHelper.cs:line 32 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DocumentyTypeItem.PersistItem(DocumentType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DocumentyType.cs:line 48 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DocumentTypeItemProvider.HandleExtract(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 14/03/2015 11:08:16
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Blocks Folder | Id:BlocksFolder | Provider:Document types ---> System.IO.FileLoadException: Could not load file or assembly 'Castle.Core, Version=2.5.1.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) at NHibernate.ByteCode.Castle.ProxyFactory.GetProxy(Object id, ISessionImplementor session) at NHibernate.Tuple.Entity.AbstractEntityTuplizer.CreateProxy(Object id, ISessionImplementor session) at NHibernate.Event.Default.DefaultLoadEventListener.CreateProxyIfNecessary(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options, IPersistenceContext persistenceContext) at NHibernate.Event.Default.DefaultLoadEventListener.ProxyOrLoad(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options) at NHibernate.Event.Default.DefaultLoadEventListener.OnLoad(LoadEvent event, LoadType loadType) at NHibernate.Impl.SessionImpl.FireLoad(LoadEvent event, LoadType loadType) at NHibernate.Impl.SessionImpl.Load(String entityName, Object id) at NHibernate.Impl.SessionImpl.Load(Type entityClass, Object id) at NHibernate.Impl.SessionImpl.Load[T](Object id) at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.CmsNodeHelper.Create(String name, Guid uniqueId, Guid nodeObjectType, ISession session) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\CmsNodeHelper.cs:line 35 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.DocumentTypeHelper.Create(DocumentType doctype, ISession session) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\DocumentTypeHelper.cs:line 32 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DocumentyTypeItem.PersistItem(DocumentType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DocumentyType.cs:line 48 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DocumentTypeItemProvider.HandleExtract(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 14/03/2015 11:04:54
Even with the content tree and right click when clicking the advanced option to see the dependencies and the children it shows the load error too.
The other type is ignoring the above error and just do a "package all". And after transfer when trying to deploy it we get this database error:
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Content Picker Edit | Id:4da20b25-7198-4bb9-93e0-9546fc2da705 | Provider:Datatypes ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultAutoFlushEventListener.OnAutoFlush(AutoFlushEvent event) at NHibernate.Impl.SessionImpl.AutoFlushIfRequired(ISet`1 querySpaces) at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) at NHibernate.Impl.CriteriaImpl.List(IList results) at NHibernate.Impl.CriteriaImpl.List[T]() at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DataTypeItem.PersistItem(DataType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DataTypeItem.cs:line 54 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DataTypeProvider.PersistDataType(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 3/18/2015 9:25:23 AM
The 404 is most concerning - does that page exist in your site and is it accessible? You'll want to confirm that first of all. If it's not there, then likely you don't have a complete install and should use the latest hotfix files to make sure you have all required files.
It really seems like you have a bad install. Perhaps best is to start over and follow the config of the site you have with a good install. Anytime you see errors in the console related to tree loading, it's a good sign something is not right. You could, of course, dig down on those errors, but since the issue appears to be specific to your one site...you may save time by starting fresh.
That is the thing. The Umbraco is already there and all I do is installing the package of Courier and the only thing I really need to determine is the location of the other site..... so I don't understand what could be wrong in a very simple install whereas I'm not even toughing the config file...
Has anyone seen this error when trying to compare/install a revision? [and also always even when the job gest done we see "0" number of items to be installed which is odd.... we know we have a lot to update....] We are using Courier 2.11.2.v7.
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Content Picker Edit | Id:4da20b25-7198-4bb9-93e0-9546fc2da705 | Provider:Datatypes ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultAutoFlushEventListener.OnAutoFlush(AutoFlushEvent event) at NHibernate.Impl.SessionImpl.AutoFlushIfRequired(ISet`1 querySpaces) at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) at NHibernate.Impl.CriteriaImpl.List(IList results) at NHibernate.Impl.CriteriaImpl.List[T]() at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DataTypeItem.PersistItem(DataType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DataTypeItem.cs:line 54 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DataTypeProvider.PersistDataType(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 3/27/2015 3:13:50 PM
There are packages that I can create and transfer and extract successully however even when I check the website files theya re still under related "revision" directory and not really extracted... And of course when viewing the pages they are not into effect enither...
Nothing in the log files and no complain.
Any idea what and how we can resolve this and have the files extraced properly? Any post_extraction activity?
Are you positive you are running the 2.11.2.v7 version? It seems like you are running into issues that have been addressed in that version already. Also, there will be an updated v7 release in the coming weeks - we have made some additional improvements to session management, updated the grid type rersolvers, added support for tags in v7, and addressed a few other issues. So stay tuned for that.
I uninstalled the old Courier and installed the new Courier on Umbraco 7.2.4.
The first thing is about "Task Manager". It doesn't show the status at the end of the tasks such as Revision creation or Transfer or Right click,...It is all BLANK.
Second, the errors are shown in the log file are:
Umbraco log file:
2015-04-21 14:47:04,902 [102] ERROR NHibernate.NonUniqueResultException - query did not return a unique result: 4
Courier log file:
transfer error:
2015-04-21 14:56:18,984 [106] ERROR Umbraco.Courier.Core.TaskManager - [Thread 105] An error occurred consuming task Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:EC_CalendarCatFilter | Id:ECCalendarCatFilter | Provider:Templates ---> System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event) at NHibernate.Impl.SessionImpl.Flush() at NHibernate.Transaction.AdoTransaction.Commit() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateSessionManagerBase.CommitTransaction() in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateSessionManagerBase.cs:line 182 --- End of inner exception stack trace --- at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Commit(String sessionKey) at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task)
creating package with Media error:
2015-04-21 14:47:04,902 [106] ERROR Umbraco.Courier.Core.TaskManager - [Thread 101] An error occurred consuming task Umbraco.Courier.Core.Exceptions.PackageException: Unable to load item with id '39dc87b7-b9db-461b-93df-f6ff05e5b23b' from provider 'Media' ---> Umbraco.Courier.Core.Exceptions.RetrieveException: Error retrieving item [39dc87b7-b9db-461b-93df-f6ff05e5b23b] from provider [d8e6ad87-e73a-11df-9492-0800200c9a66]. ---> NHibernate.NonUniqueResultException: query did not return a unique result: 4 at NHibernate.Impl.AbstractQueryImpl.UniqueElement(IList list) at NHibernate.Impl.AbstractQueryImpl.UniqueResult[T]() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider.GetNodeId(Guid uniqueId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateProvider.cs:line 133 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.ContentHelper.Get(Guid uniqueId, ISession session) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\ContentHelper.cs:line 43 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.MediaItem.RetrieveItem(ItemIdentifier itemId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\Media.cs:line 80 at Umbraco.Courier.Core.ItemCrud`1.RetrieveItem[T1](ItemIdentifier itemId) at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId) --- End of inner exception stack trace --- at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId) at Umbraco.Courier.ItemProviders.MediaItemProvider.HandlePack(ItemIdentifier id) at Umbraco.Courier.Core.ItemProvider.Package(ItemIdentifier id) at Umbraco.Courier.RepositoryProviders.Local.Package(ItemIdentifier itemId) at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageItem(ItemIdentifier itemId, ItemProvider provider, QueuedItemIdentifier itemInQueue) --- End of inner exception stack trace --- at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageItem(ItemIdentifier itemId, ItemProvider provider, QueuedItemIdentifier itemInQueue) at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageBatch() at Umbraco.Courier.Core.Packaging.RevisionPackaging.Package() at Umbraco.Courier.Core.Tasks.PackagingTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task)
Third: The Dictionary items seem to be Couriered but no change at the target server...and no status at the end...
It certainly appears as though you have a bad install. Best couse of action would be to compare the files in the hotfix package with those in your site and make sure you have the correct versions without any additional *courier* files.
I tried uninstalling/installing on a few different instances and can't repro what you have.
Sorry, really can't say what it might be based-on what you've provided here. I encourage you to compare the files as I previously mentioned as that seems to be the issue.
There are no DB tables required for courier v7 so you can ignore that part.
That's quite an old verison...Courier 2.5 on Umbraco v4. The look and feel has chnaged and we will get updated videos posted but the important thing to note is that the process of configuration and deployment has not changed.
Hi Paul; The "Umbraco.Courier.Core.dll" is not listed in the files when I want to uninstall the Courier package. Any specific reason for that?
I ask this because you said prior to installation of Courier to check and make sure non of the files in the Hotfix are there...And I see this one stays...
The best approach is to use the hotfix file and manually unzip then place the files in their respective locations rather than uninstalling courier. Uninstalling and re-installing is not recomended. If the uninstall leaves any files behind you'll need to manually remove those.
@Paul, One question. The hotfix has a folder called sql with several scripts. Am I supposed to run those too? Or are those not necessary since courier is already installed?
Looking closer to the log files, what does this error log want to say that it doesn't let the "Media" to be part of the revision?
2015-05-04 13:24:35,199 [11] ERROR Umbraco.Courier.Core.Diagnostics.Logging.RevisionLog - [Thread 22] [Error]; Item Id: 39dc87b7-b9db-461b-93df-f6ff05e5b23b; Caller: Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider; Process: PersistenceManager; Msg: Could not retrieve item: NHibernate.NonUniqueResultException: query did not return a unique result: 4 at NHibernate.Impl.AbstractQueryImpl.UniqueElement(IList list) at NHibernate.Impl.AbstractQueryImpl.UniqueResult[T]() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider.GetNodeId(Guid uniqueId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateProvider.cs:line 133 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.ContentHelper.Get(Guid uniqueId, ISession session) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\ContentHelper.cs:line 43 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.MediaItem.RetrieveItem(ItemIdentifier itemId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\Media.cs:line 80 at Umbraco.Courier.Core.ItemCrud`1.RetrieveItem[T1](ItemIdentifier itemId) at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId); System.Exception: Error logged
I came up against the 'Umbraco.Courier.UI.Pages.status' problem even with the latest build of Umbraco 7 and Courier. After a bit of tinkering I found the best solution was to just comment out the line of code in Umbraco/plugins/courier/pages/deployRevisions.aspx which loads the status page. This is no loss to U7 as there is still a status bar displayed during the extraction process. The line to comment out is in the following block;
function deployRevisions() {
var statusId = $('#StatusIdField').val();
//UmbClientMgr.openModalWindow('plugins/courier/pages/status.aspx?statusId='+statusId+'&message=Deploying <%=ActionRevisions.Count() %> revisions', 'Direct Deploy Status', true, 500, 450);
}
Unable to deploy any changes on Umbraco 7.2
On my local site I've created a Document Type called "Test". I packaged it into a revision all by itself.
It transfers to Courier on our dev server just fine. But "On the dev server" when I select to compare and install, it detects 0 items need to be created, 0 need updated, etc..
It won't install the Test document type.
So I tried a Direct Deploy, I get the same error that's existed for a long time, because you guys have failed to update direct deploy to remove the reference to "Umbraco.Courier.UI.Pages.status" on the status.aspx page "The status control no longer exists in the umbraco dll's, it got dropped somewhere between 6.0 and 6.2" and the obmission seems to have carried onto the new version for Umbraco 7.
I can fix that by removing the reference to status, however I shouldn't need to do that, or direct deploy.
The compare/contrast should work and recognize that the document type needs added.
Am I missing something somewhere, configuration wise?
My Document Type is showing up in the hidden drop down.
Actually the fix for the direct deploy error, is I found that code in an older version of umbrac "via reflector", and I copy pasted it to my own dll.
Then I changed the page to inherit from that instead....
Which is a temporary hack.
Ok, out of ideas.
My general setup is like this
http://machinename:9898 -- this is my local environment, and it's accessible on our network
http://dev.somesite.somesubdomin.com -- this is our dev server
On my local machine, I have the dev site as a repository in courier.config. On the dev server I have my local machine as the repository.
In umbraco 6 this worked fine, I could build some document types etc on my local machine, package them in courier, and transfer them to the dev server. Then I could go to the revision I transfered and do a compare and install and it would pick up the new document types.
As for our templates/css/js etc. We host all of our JS/CSS on an in house CDN system, and I store all the views in subversion using the nuget Umbraco Package in our visual studio project. E.g. I MSDeploy our whole site to the dev server, and it uses web.config transformations. Which works fine.
Now I thought maybe MSdeploying the app data folder was causing a problem due to that being where the cache is stored. So I excluded that from the deploy and flused both cache's. Redeployed, reboot iis on both boxes etc etc.
Courier still doesn't see the Test document type in the revision, which is very frustrating (this not working is the only thing keeping our project from being upgraded to umbraco 7 "which we like a lot more overall... minus courier delays."
I'm beggining to suspect maybe it's a licensing issue, but the license manage on the profile doesn't let you see what you havethe domains set for, or change them.....
I tried dropping down to umbraco 7.1.9, still doesn't work, same problem. The revisions transfer fine (not via direct deploy), but when I install it, it detects no changes are needed, which is wrong.
I'm going to drop down to 7.0 and try again, but if that doesn't work, I think I'm done struggling with courier constantly, I'll look to another solution, like going back to usync.
@Ryan
Are you using the version of Courier for v7? http://our.umbraco.org/projects/umbraco-pro/umbraco-courier-2
There is also a nightly build that looks like it'll be the one we release the Courier for v7.2+ with here (use the 115 build) http://nightly.umbraco.org/UmbracoCourier/Umbraco%207/
We're in the final test passes of the v7.2 version (above) so if you have any feedback we'd appreciate it here http://issues.umbraco.org/issues?issueFolder=51-4
-Paul
I'll post in issues, but also posting here.
Now I get an entirely new error using the latest nightly build on Umbraco 7.2.1,
System.ArgumentNullException: Value cannot be null. Parameter name: The string which needs to be encrypted can not be null. at Umbraco.Courier.Core.Helpers.Encryption.Encrypt(String originalString, String key) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.GetloginAndPass(Int32 userId, String& login, String& pass) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.CloseSession(String sessionKey) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose(Boolean disposing) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Dispose() at Umbraco.Courier.Core.Repository.Dispose(Boolean disposing) at Umbraco.Courier.Core.BaseRevisionHandler.Dispose(Boolean disposing) at Umbraco.Courier.Core.BaseRevisionHandler.Dispose() at Umbraco.Courier.Core.Tasks.TransferTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 12/16/2014 12:24:02 PM
@Ryan
How do you have your repository auth configured? If useLegacyEncoding=false you can run into this: http://issues.umbraco.org/issue/COU-104
So, just to let others know, this issue was because I was using the courier section to package revisions, and was using compare and install to deploy them and compare and install isn't working in our setup.
However deploying content from the content tree works just fine.
deleted..
@Ryan
Good to know it is working using the direct deploy method - in most cases that is the best approach. I think I may have mis-lead you however. With Courier v7 latest (currently 2.11.2) deployments via a defined revision should work - it is the exact same process as far as Courier is concerned. In general, with revision-based deployments, you'll be dealing with larger sets of data and so it is expected that the deployment can take longer to complete.
Anyhow, if you run into issues please let us know.
I've just encoutered the same problem. I have two Umbraco 7.2.1 sites - DEV and TEST - running HTTPS, and both have Courier 2.11.2.v7 installed. I can generate a revision on DEV just fine, and I can also transfer it to TEST. But when doing a Compare and Install on TEST, it says there are no changes. Then when actually installing it finishes real quick and nothing is installed. However, if I manually copy the generated revision folder (App_Data\courier\revisions\TestRevision) from DEV to TEST, it actually works (well sort of - the result of the compare still shows no changes, but when installing it actually do install things).
This caused me to take a look at what exactly courier is transferring to TEST. It turns out something goes very wrong in this transfer. The revision folder generated in DEV contains this:
@Mads
How are you actually doing the transfer? That is, indeed, and odd folder structure - and there's no way a deployed will succeed with that - so I'm curious how you got that. It's not something we've seen in any version of Courier and there are no v7 specific changes in that section.
If you deploy from the content item directly (using the menu) do it succeed? What do the revision folders on your DEV instance look like then?
-Paul
Yeah, so to start with how I'm doing the transfer. I go to the back office in the DEV site. Here I create a doc type, e.g. TestDocType. Then I go to Courier by clicking the Courier icon in the left side menu, and then create a new revision, e.g. TestRevision. In the revision I only add TestDocType. Then I click Package Selected, and Courier creates the revision package. Then I click Transfer, select the target "Test", which points to the TEST site (which runs HTTPS), and finally I click the Transfer button.
When I go to the TEST site and look at what is in the App_Data\courier\revisions\TestRevision, I see the weird structure mentioned in my earlier post.
If I deploy the doc type directly it works, i.e. TestDocType is successfully deployed to the TEST site. In this case the revision folder in DEV looks like this:
Yep I'm getting the same.
Umbraco 7.1.1
If I create a package and transfer it locally or remotely I end up with a folder structure like:
manifest.xml
foo.couriercompare
foo.couriergraph
When I created a folder location I got:
foo.couriercompare
foo.couriergraph
Is the folder structure meant to be the same as in App_Data/courier/revisions/foo ?
Looks like an error in the folder creation code to me...
@Murray
We're looking into it now. We can't repo with a standard 7.1/7/2 install so @Mads has shared his sites and we'll be testing with those. I'll advise here as well as the issue report.
OK. Dunno if it helps but 'pulling' a package from another location seems to get the right structure as far as I can see, but 'pushing' to another location seems to create the problem above.
Testing this on 2 local trial sites (I have a license but was trying to remove variables) - should this still work in trial mode?
Also in both cases once the revision has 'arrived' a compare does not highlight any changes even though I know there are difference between the incoming revision and the local site...e.g. I deleted all the content out of the target site but no new content is being highlighted from the incoming revision.
Is there an earlier version with known issues which works that I can use as this is killing me on a deadline I am trying to hit..
Thanks
Murray
@Murray
You can use the content menu deploy or manually copy the revision folder structure intact to the target. The license *may* be an issue if the target is not a *.local or localhost - best send a license support request in that case.
@Paul - I've created two simple Umbraco solutions with Courier installed on both, and creating a revision on A and transferring it to B shows the issue. I'll be happy to send it to you somehow. How do you prefer to receive it, and do you need the courier license file as well?
Just did a Winmerge folder comparison and When the revision is 'Pulled' it seems to be missin gthe settings and virtual resources folders. When it is pushed the folder names are all messed up as above....
Sorry and if I do manually put the revision folder into the target site (which I have renamed u3.local) the contents show in the revision, but a comparison shows no differences still.
@Murray - I noticed the same, it shows that there are no changes, even though I manually copy the revision folder to the target site. However, if I then just install anyway, it actually installs the revision.
@Mads you're right...sorry...so the compare bit has a problem not the deploy. All a bit too scary for me...too much opportunity for really messing thing up! I'll wait for things to stabilize....
@Paul
Do you have an update on this as currently the plugin is note really working as far as I can see.
@Murray
Not sure if it was clear but if the revision > transfer > compare > deploy isn't working in your environment you can use the content menu deploy. In fact, that's what I'd recommend for the time being - until we can repro the very odd behavior with folders. Mads has provided a repro environment that we're setting up and will try to repro the behavior, then identify any issues as soon as we can.
The remote compare > deploy is not something I'd say has 100% accuracy unless you've been using Courier on the site(s) from the very beginning...even then, I'd do a deploy anyway if you know what you're deploying is, indeed, an update.
For sure there is an issue with Courier for v7 using the Transfer Revision feature. We're looking into it now. For the time being, if you use revisions, we recommedn you manually transfer the revision folder to the target instance.
The issue where courier incorrectly reports which items will be updated may be related as well and is also being investigated.
@Mads and @Murray
We've made some updates to the Transfer Engine and the Repository Web Service that address both the mangled folder names and the compare discrepancy. Courier Nightly Build 129 has these fixes included:
http://nightly.umbraco.org/UmbracoCourier/Umbraco%207/Release/Umbraco.Courier.Hotfix.v2.11.129.zip
If you could let us know if this buils resolves the issues for you that's be terrific.
@Paul - I'm a little unsure how to install the hotfix. It doesn't appear to be a valid package installable from backoffice. Did you only do code changes, and if so, will it be enough to copy just the binaries on top of existing ones?
@Mads
The package installer doesn't do upgrades - so you simply update the files from the hotfix archive to the same location in your site. You won't need any sql for this one.
@Paul - I've installed and tested it, and it works now :) Thank you for fixing it so fast.
@Mads
Great! We've heard this from other testers too. So we'll be getting a release together for next week.
Does the download at https://our.umbraco.org/projects/umbraco-pro/umbraco-courier-2 include this hotfix (Umbraco.Courier.Hotfix.v2.11.129.zip) as using Courier_2.11.2.v7.zip and Courier_2.11.2.hotfix.v7.zip still has the same issue?
Please advise
@Chris
No, we haven't released it yet, so only the nightly (build 129) has it currently. Coming 'soon.'
Oh cool, nice to know this got a fix.
We ended up just not using the transfer features at all. Instead we right click the Content node and deployr from that context menu, which seems to be how 90% of courier users use the tool. Likely why the transfer features got overlooked.
@Paul
I have the exact same behavior as Murray and Mads reported (Push not working, Pulling working, Messed up folder structure, no changes detected).
Could you tell me when we could expect an official release with the fix?
@Stefan
Are you using the latest release? http://our.umbraco.org/projects/umbraco-pro/umbraco-courier-2 If so could you provide details (logs, repro steps, versions, etc...) as we can't repro and this has been reported as fixed for some time.
@Paul
I installed the official package from the Umbraco package Repository.
With the hotfix (build 129) on top it works, but as you posted on Feb 11 this is only a nightly and not yet released. I was just wondering when to expect the fix in the official release?
Or is this hotfix already included in the latest release?
@Stefan
Ah, sorry. Very shortly (before the end of March). The next release has a number of fixes, including the one for the issue you mention, so just verifying those all are good. Does the hotfix-nightly-build resolve the issue for you?
@Paul
Yes the hotfix from the nightly perfectly resolves the issue. Thanks for that and sorry for the confusion. ;-)
What's the best way to upgrade courier once the new release will be public? Uninstall and reinstall in the backend? Or just replace all the files?
So the hotfix seems to resolve most issues, and it actually finds stuff to install now, but i get errors about the wrong castle.core version.
You seem to be running a very old version of castle.core. I.m using 3.2.0.14 and have this binding redirect in place:
<dependentAssembly>
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.2.0.0" newVersion="3.2.0" />
</dependentAssembly>
But I still get tthe error below. Any thoughts?
Extraction
Extracting Mentor web blocksI fixed it by doing this:
<dependentAssembly>
<assemblyIdentity name="Castle.Core" publicKeyToken="407dd0808d44fbdc" culture="neutral" />
<codeBase version="2.5.1.0" href="bin\Courier\Castle.Core.dll" />
<codeBase version="3.2.0.0" href="bin\Castle.Core.dll" />
</dependentAssembly>
Horrible, but hey ho.
Hi there;
I'm using Courier_2.11.2.v7.zip on Umbraco 7.
Two types of errors we see.
One type is when trying to create the Revision, when adding the content it can't load the sub-folders and it gives us the error of "Load Error!".
In the F12 of the page it gives the message of https://hostname.domainname.com/umbraco/plugins/courier/webservices/treedata.ashx?id=d8e6ad83-e73a-11df-9492-0800200c9a66&_=1426625354228 404 (Not Found)
Even with the content tree and right click when clicking the advanced option to see the dependencies and the children it shows the load error too.
The other type is ignoring the above error and just do a "package all". And after transfer when trying to deploy it we get this database error:
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Content Picker Edit | Id:4da20b25-7198-4bb9-93e0-9546fc2da705 | Provider:Datatypes ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultAutoFlushEventListener.OnAutoFlush(AutoFlushEvent event) at NHibernate.Impl.SessionImpl.AutoFlushIfRequired(ISet`1 querySpaces) at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) at NHibernate.Impl.CriteriaImpl.List(IList results) at NHibernate.Impl.CriteriaImpl.List[T]() at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DataTypeItem.PersistItem(DataType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DataTypeItem.cs:line 54 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DataTypeProvider.PersistDataType(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 3/18/2015 9:25:23 AM
I appreciate your help.
Thanx;
@Shabnam
The 404 is most concerning - does that page exist in your site and is it accessible? You'll want to confirm that first of all. If it's not there, then likely you don't have a complete install and should use the latest hotfix files to make sure you have all required files.
If you mean to check if this exists "umbraco/plugins/courier/webservices/treedata.ashx" yes it does.... but there is no page associated with it....
Unless you can guide me on what to check if exists or not?
Could it be some config issue? The same package of Courier 2.11.2.v7 works on another server...
but what is the available hotfix after the 2.11.2.v7?
Oh... No news here means not a good news!!
Has anyone experienced anything like the errors I mentioned earlier such as "load error"....?
And still I'm not sure if there is any hotfix after Courier 2.11.2.v7....
Any help is so appreciated...
@shabnam
It really seems like you have a bad install. Perhaps best is to start over and follow the config of the site you have with a good install. Anytime you see errors in the console related to tree loading, it's a good sign something is not right. You could, of course, dig down on those errors, but since the issue appears to be specific to your one site...you may save time by starting fresh.
That is the thing. The Umbraco is already there and all I do is installing the package of Courier and the only thing I really need to determine is the location of the other site..... so I don't understand what could be wrong in a very simple install whereas I'm not even toughing the config file...
Deleted post. My issues turned out to be due to a faulty courier installation on one of the two environments.
Hi all;
Has anyone seen this error when trying to compare/install a revision? [and also always even when the job gest done we see "0" number of items to be installed which is odd.... we know we have a lot to update....] We are using Courier 2.11.2.v7.
Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:Content Picker Edit | Id:4da20b25-7198-4bb9-93e0-9546fc2da705 | Provider:Datatypes ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultAutoFlushEventListener.OnAutoFlush(AutoFlushEvent event) at NHibernate.Impl.SessionImpl.AutoFlushIfRequired(ISet`1 querySpaces) at NHibernate.Impl.SessionImpl.List(CriteriaImpl criteria, IList results) at NHibernate.Impl.CriteriaImpl.List(IList results) at NHibernate.Impl.CriteriaImpl.List[T]() at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.DataTypeItem.PersistItem(DataType item) in f:\TeamCity\buildAgent\work\dd6b32efd8e6a004\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\DataTypeItem.cs:line 54 at Umbraco.Courier.Core.ItemCrud`1.PersistItem[T1](T1 item) at Umbraco.Courier.ItemProviders.DataTypeProvider.PersistDataType(Item item) at Umbraco.Courier.Core.ItemProvider.Extract(Item item) at Umbraco.Courier.RepositoryProviders.Local.ExtractItem(Item item, Boolean overwrite) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractItem(GraphNode node, Boolean isDependency) at Umbraco.Courier.Core.Extraction.RevisionExtraction.ExtractReadyRevisionBatch() at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task) 3/27/2015 3:13:50 PM
Cheers;
Hi All;
There are packages that I can create and transfer and extract successully however even when I check the website files theya re still under related "revision" directory and not really extracted... And of course when viewing the pages they are not into effect enither...
Nothing in the log files and no complain.
Any idea what and how we can resolve this and have the files extraced properly? Any post_extraction activity?
Regards;
@Shabnam
Are you positive you are running the 2.11.2.v7 version? It seems like you are running into issues that have been addressed in that version already. Also, there will be an updated v7 release in the coming weeks - we have made some additional improvements to session management, updated the grid type rersolvers, added support for tags in v7, and addressed a few other issues. So stay tuned for that.
@Paul:
Yes. We are using the latest one 2.11.2.v7.
It used to fully work on umbraco 7.2.1. Coincidentally it behaved strangely on 7.2.0 (don't know why developers decided to down-grade Umbraco though).
Could it be causing these issues?!
Cheers;
Hi Paul;
Any news on the new Courier?
Regards;
Yes...we just now have Courier 2.50.0.v7 beta ready for your evaluation:
Hotfix: http://nightly.umbraco.org/UmbracoCourier/Umbraco%207/Release/Umbraco.Courier.Hotfix.v2.50.158.zip
Package: http://nightly.umbraco.org/UmbracoCourier/Umbraco%207/Release/Umbraco.Courier.Package.v2.50.158.zip
Let us know if you discover issues not addressed in the tracker: http://issues.umbraco.org/issues/COU
Hi Paul;
Thanx for the good news;
I uninstalled the old Courier and installed the new Courier on Umbraco 7.2.4.
The first thing is about "Task Manager". It doesn't show the status at the end of the tasks such as Revision creation or Transfer or Right click,...It is all BLANK.
Second, the errors are shown in the log file are:
Umbraco log file:
2015-04-21 14:47:04,902 [102] ERROR NHibernate.NonUniqueResultException - query did not return a unique result: 4
Courier log file:
transfer error:
2015-04-21 14:56:18,984 [106] ERROR Umbraco.Courier.Core.TaskManager - [Thread 105] An error occurred consuming task Umbraco.Courier.Core.Exceptions.ExtractionManagerException: There was a problem with extracting database information for the item: Name:EC_CalendarCatFilter | Id:ECCalendarCatFilter | Provider:Templates ---> System.Web.Services.Protocols.SoapException: System.Web.Services.Protocols.SoapException: Server was unable to process request. ---> NHibernate.AdoNet.TooManyRowsAffectedException: Batch update returned unexpected row count from update; actual row count: 2; expected: 1 at NHibernate.AdoNet.Expectations.VerifyOutcomeBatched(Int32 expectedRowCount, Int32 rowCount) at NHibernate.AdoNet.SqlClientBatchingBatcher.DoExecuteBatch(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatchWithTiming(IDbCommand ps) at NHibernate.AdoNet.AbstractBatcher.ExecuteBatch() at NHibernate.Engine.ActionQueue.ExecuteActions() at NHibernate.Event.Default.AbstractFlushingEventListener.PerformExecutions(IEventSource session) at NHibernate.Event.Default.DefaultFlushEventListener.OnFlush(FlushEvent event) at NHibernate.Impl.SessionImpl.Flush() at NHibernate.Transaction.AdoTransaction.Commit() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateSessionManagerBase.CommitTransaction() in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateSessionManagerBase.cs:line 182 --- End of inner exception stack trace --- at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall) at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters) at Umbraco.Courier.RepositoryProviders.CourierWebserviceRepositoryProvider.Commit(String sessionKey) at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() --- End of inner exception stack trace --- at Umbraco.Courier.Core.Extraction.RevisionExtraction.Extract() at Umbraco.Courier.Core.Tasks.ExtractionTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task)
creating package with Media error:
2015-04-21 14:47:04,902 [106] ERROR Umbraco.Courier.Core.TaskManager - [Thread 101] An error occurred consuming task Umbraco.Courier.Core.Exceptions.PackageException: Unable to load item with id '39dc87b7-b9db-461b-93df-f6ff05e5b23b' from provider 'Media' ---> Umbraco.Courier.Core.Exceptions.RetrieveException: Error retrieving item [39dc87b7-b9db-461b-93df-f6ff05e5b23b] from provider [d8e6ad87-e73a-11df-9492-0800200c9a66]. ---> NHibernate.NonUniqueResultException: query did not return a unique result: 4 at NHibernate.Impl.AbstractQueryImpl.UniqueElement(IList list) at NHibernate.Impl.AbstractQueryImpl.UniqueResult[T]() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider.GetNodeId(Guid uniqueId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateProvider.cs:line 133 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.ContentHelper.Get(Guid uniqueId, ISession session) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\ContentHelper.cs:line 43 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.MediaItem.RetrieveItem(ItemIdentifier itemId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\Media.cs:line 80 at Umbraco.Courier.Core.ItemCrud`1.RetrieveItem[T1](ItemIdentifier itemId) at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId) --- End of inner exception stack trace --- at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId) at Umbraco.Courier.ItemProviders.MediaItemProvider.HandlePack(ItemIdentifier id) at Umbraco.Courier.Core.ItemProvider.Package(ItemIdentifier id) at Umbraco.Courier.RepositoryProviders.Local.Package(ItemIdentifier itemId) at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageItem(ItemIdentifier itemId, ItemProvider provider, QueuedItemIdentifier itemInQueue) --- End of inner exception stack trace --- at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageItem(ItemIdentifier itemId, ItemProvider provider, QueuedItemIdentifier itemInQueue) at Umbraco.Courier.Core.Packaging.RevisionPackaging.PackageBatch() at Umbraco.Courier.Core.Packaging.RevisionPackaging.Package() at Umbraco.Courier.Core.Tasks.PackagingTask.Run() at Umbraco.Courier.Core.BackgroundTaskRunner`1.ConsumeTaskInternal(T task)
Third: The Dictionary items seem to be Couriered but no change at the target server...and no status at the end...
Any advise is really appreciated...
@shabnam
It certainly appears as though you have a bad install. Best couse of action would be to compare the files in the hotfix package with those in your site and make sure you have the correct versions without any additional *courier* files.
I tried uninstalling/installing on a few different instances and can't repro what you have.
@Paul...
They all seem correct...
Could it be a 'bad' "web.config" that needs to be tuned?!
We got our Umbraco hierarchy from the developers. we didn't install it from scratch.
And also can you lead me to the DB tables of Courier? The ones in the sql scripts I can't find them.
Thanx;
Sorry, really can't say what it might be based-on what you've provided here. I encourage you to compare the files as I previously mentioned as that seems to be the issue.
There are no DB tables required for courier v7 so you can ignore that part.
Hi there;
When I watch the Courier training TVs, I realize there is a BIG diffrence in the user interface shown there and ours.
Can you please let me know which versions of Umbraco and Courier is the presentor using?
The link to the training videos:
http://umbraco.com/help-and-support/customer-area/courier-2-support-and-download.aspx ;
Thank you.
That's quite an old verison...Courier 2.5 on Umbraco v4. The look and feel has chnaged and we will get updated videos posted but the important thing to note is that the process of configuration and deployment has not changed.
Hello Paul, how are you?
I'm having the same problems with revisions as mentioned originally on this post.
It packages fine but on the receiving end I get 0 changes.
It's a licensed version. What would be the best approach to solve this issue?
Umbraco: 7.2.1
Courier: 2.11
Thank you.
@Alejandro -
We did see that in some unstable nightly builds. Can you test an update to the latest RC release here http://nightly.umbraco.org/UmbracoCourier/Umbraco%207/Release/Umbraco.Courier.Hotfix.v2.50.1.RC.zip
We have verified the compare engine and hashs are correctly used there.
@Paul
I can touch the servers today.
But I'll try tomorrow and let you know.
Thanks a lot for the quick answer.
Hi Paul; The "Umbraco.Courier.Core.dll" is not listed in the files when I want to uninstall the Courier package. Any specific reason for that?
I ask this because you said prior to installation of Courier to check and make sure non of the files in the Hotfix are there...And I see this one stays...
Tx;
Hi @Paul,
I confirm what @Shabnam says about the dll being left behind.
I uninstalled and try installing the zip you provided using the install local package option.
It's throwing this exception, any ideas?:
The best approach is to use the hotfix file and manually unzip then place the files in their respective locations rather than uninstalling courier. Uninstalling and re-installing is not recomended. If the uninstall leaves any files behind you'll need to manually remove those.
Didn't know about that hehe.
I'm going to try replacing the files .
Thanks for the help.
@Paul, One question. The hotfix has a folder called sql with several scripts.
Am I supposed to run those too? Or are those not necessary since courier is already installed?
Thanks.
Right, you can skip the sql since it's just an update.
Hi Paul;
Looking closer to the log files, what does this error log want to say that it doesn't let the "Media" to be part of the revision?
2015-05-04 13:24:35,199 [11] ERROR Umbraco.Courier.Core.Diagnostics.Logging.RevisionLog - [Thread 22] [Error]; Item Id: 39dc87b7-b9db-461b-93df-f6ff05e5b23b; Caller: Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider; Process: PersistenceManager; Msg: Could not retrieve item: NHibernate.NonUniqueResultException: query did not return a unique result: 4 at NHibernate.Impl.AbstractQueryImpl.UniqueElement(IList list) at NHibernate.Impl.AbstractQueryImpl.UniqueResult[T]() at Umbraco.Courier.Persistence.V6.NHibernate.NHibernateProvider.GetNodeId(Guid uniqueId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\NHibernateProvider.cs:line 133 at Umbraco.Courier.Persistence.V6.NHibernate.Helpers.ContentHelper.Get(Guid uniqueId, ISession session) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Helpers\ContentHelper.cs:line 43 at Umbraco.Courier.Persistence.V6.NHibernate.Persisters.MediaItem.RetrieveItem(ItemIdentifier itemId) in f:\TeamCity\buildAgent\work\29c26828325d97fb\Core\Umbraco.Courier.Persistence.V6.NHibernate\Persisters\Media.cs:line 80 at Umbraco.Courier.Core.ItemCrud`1.RetrieveItem[T1](ItemIdentifier itemId) at Umbraco.Courier.Core.ItemCrudProvider.RetrieveItem[T](ItemIdentifier itemId); System.Exception: Error logged
Tx;
I came up against the 'Umbraco.Courier.UI.Pages.status' problem even with the latest build of Umbraco 7 and Courier. After a bit of tinkering I found the best solution was to just comment out the line of code in Umbraco/plugins/courier/pages/deployRevisions.aspx which loads the status page. This is no loss to U7 as there is still a status bar displayed during the extraction process. The line to comment out is in the following block;
is working on a reply...