jeffdarchuk / sitecoresidekick Goto Github PK
View Code? Open in Web Editor NEWFramework for angularjs based microservice architecture operations.
License: MIT License
Framework for angularjs based microservice architecture operations.
License: MIT License
In the latest 1.5.8 release I am getting the following errors in javascript console:
main.js:129 Uncaught TypeError: Cannot read property '0' of null
at main.js:129
Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.4.7/$injector/modulerr?...
at scsangular.js:7
at scsangular.js:149
at m (scsangular.js:11)
at h (scsangular.js:144)
at fb (scsangular.js:165)
at d (scsangular.js:58)
at zc (scsangular.js:60)
at Zd (scsangular.js:55)
at HTMLDocument.<anonymous> (scsangular.js:1276)
at j (jquery.min.js:2)
UI seems to be not functioning properly (it shows "Not Logged In" message)
Could it be related to this change? 990f461#diff-62128033a7c055c30e7914a4d55acaf5
Hi,
We've just installed the Content Migrator using the Nuget package, however when I try to open it within Sitecore I am seeing the following message: "Not logged in.
Log into Sitecore to use Sidekick."
I have logged in however the message persists. Any idea what could be causing this?
Thanks
Hi,
I started using Sitecore Sidekick for a project that uses Sitecore 8.2 update 4. I successfully implemented Sidekick, but I'm having difficulty using the Item Blaster as no items are actually created when pulling content.
Weird thing about this is, that pulling content from the production environment works locally, but it doesn't work on our Test or Acceptance (UAT) environment. The pull completes, according to Sidekick and the logging is accurate, but when I look back at the content editor, I can't find the desired item that was "created" according to Sidekick.
If I disable the Item Blaster by unchecking the checkbox, it works fine on all environments, but ofcourse it's slower than it should be.
Is there anyone who can help me? Is it related to resource allocation, or is my configuration setup wrong?
Alternatively we could uncheck the checkbox for the usage of the Item Blaster by default, but then I would like to ask how to do just that in the configuration?
Thanks in advance.
Hi, we have v1.5.2 of the Sitecore Sidekick NuGet package installed in all our environments, and have recently come across an issue with a TreelistEx field. (Please bear in mind that, although in our organization we’ve worked with Sitecore for a few years now, we don’t have a great knowledge of the inner workings of Sitecore and have no experience whatsoever with Unicorn, so this might well be an issue with Unicorn rather than Sidekick… or no issue at all. 😊)
Basically, we have an item with a TreelistEx field, which references five items in our PROD environment. Now, when we try to pull that item into any of our non-PROD environments, that field clearly gets updated in the target environment, but only the first one of those five referenced items ends up in the target environment —and, yes, all the referenced items do exist in all the environments.
If you then try to pull that item again, the Content Migrator seems to think the item in the target environment is the same as the one in PROD and nothing happens (we’ve tried this with several different combinations of the Content migration options and the Sitecore advanced options).
Is this a known issue, or is there something in our set-up that might cause this behaviour?
Many thanks.
How should modify zSCSAuditLog/zSCSContentMigrator/zSCSEditingContext config files to enable Sidekick only for "sitecore\Developer" role?
Variants like "sitecore\Developer", "sitecore\developer", "Developer", "developer" do not work!
Our current development sever has a url with a port different to the normal 80 or 443. The iframe url added when opening the Sidekick button on the Sitecore Desktop doesn't append the port number and therefore can't open the content migrator
Hello,
we installed Sitecore Sidekick Foundation and the Content Migrator via Nuget Package and did setup the configurations as indicated in the examples. Each client can select the other client in the drop down menu an error is shown indicating that the secret is different. The authenticationSecret is the same on both clients, because we use the same file. Also the secret does contain only numbers and characters.
Any idea what could be the reason or where we should investigate further?
Best regards
Martin
We are using:
SitecoreSidekickFoundation 1.3.2
SitecoreSidekickContentMigrator 1.3.2
Sitecore 8.2
The Dropdowns in the sitecore backend are getting cropped because Sidekick renders a additional div on that request that is not needed.
In the scscommand.js file are allready checks for that situation but they need to be reviewed. The Dropdowns are rendering a Iframe with a url like
http://sitename/sitecore/shell/default.aspx?xmlcontrol=Gallery.Archives&id=...&la=en&vs=1&db=master&sc_content=master&ShowEditor=1&Ribbon.RenderTabs=true
Based on IRL conversation just now:
moving system fields diff option into diff panel (disable option if all diffs in system fields)
diff supporting multiple versions in one language
option to snipe single field value from equivalent remote version in diff view
some sort of advanced checksum that enables diff icons to show (at least on a per item level) diffs without system fields applied
I can see some of the other apps e.g. Publish, Template Manager close the Start menu when you select it, but Sideckick doesn't.
Just a great usability fix, thanks.
With the release of Sitecore 9.1 I can't have unicorn and Sidekick installed anymore as Unicorn for 9.1 uses Rainbow version 2.0.4 but Sidekick wants version 2.0.0 so they fight each other to get the assembly they want deployed.
As we talked about on Slack, HTTP handlers are kinda ghetto here.
Use explicit controller namespaces to register a normal controller route instead:
http://stackoverflow.com/a/7560079
This will gain you:
Moving views to cshtml would be nice but also a pain in the rear to manage due to the dependencies thereof (and the lack of precompiled view support pre-8.2). Would suggest using templating techniques like these to improve readability (with literal + interpolated strings, calling methods to render body pieces that may repeat).
Hi,
Is there any way you could point me to the Sourcecode (Revision number) for Sitecore 7.2 version of Sidekick? Because current version seems to be supporting 8.2+ version with dependency injection and a lot of other enhanced SDKs of Sitecore 8.2+.
Hello,
I have a question if Sidekick was tested when the commerce is installed on Sitecore.
I installed the newest Sidekick version and have this error when trying to open Sidekick?
[ArgumentNullException: Value cannot be null.
Parameter name: element]
System.Attribute.GetCustomAttributes(MemberInfo element, Type type, Boolean inherit) +14690038
System.Attribute.GetCustomAttribute(MemberInfo element, Type attributeType, Boolean inherit) +14
Sitecore.Commerce.XA.Foundation.Common.ControllerFactory.StorefrontControllerFactory.GetControllerSessionBehavior(RequestContext requestContext, Type controllerType) +87
System.Web.Mvc.MvcRouteHandler.GetSessionStateBehavior(RequestContext requestContext) +195
System.Web.Mvc.MvcRouteHandler.GetHttpHandler(RequestContext requestContext) +45
System.Web.Routing.UrlRoutingModule.PostResolveRequestCache(HttpContextBase context) +216
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +223
System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step) +213
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +91
Regards,
Robert
I am getting the following error during content migration, when RemoveLocalNotInRemote
is enabled:
Sitecore.Exceptions.AccessDeniedException: User does not have the necessary rights to recycle the item (<ItemId>)
at Sitecore.Diagnostics.Assert.HasAccess(Boolean accessAllowed, String message)
at Sitecore.Data.Items.Item.Recycle()
at SitecoreSidekick.Services.SitecoreDataAccessService.RecycleItem(String id)
at ScsContentMigrator.Core.ContentItemInstaller.CleanUnwantedLocalItems()
Had a quick look into the code, seems like SitecoreDataAccessService.RecycleItem
is missing a SecurityDisabler
?
When RemoveLocalNotInRemote
is enabled, SideKick is gathering all descendant items for the root Ids (IContentItemInstaller.SetupTrackerForUnwantedLocalItems
).
In case there is a big amount of items to sync, this process takes a while and a call to /scs/cm/cmstartoperation.scsvc
does not return unless that is finished. On large item trees, this call will most likely timeout.
I think it would be better if this code would be running asynchronously as a part of the actual migration and the /scs/cm/cmstartoperation.scsvc
API call would immediately return, acknowledging that migration operation is registered and returning OperationId
.
What do you think? This is quite relevant when using Scripting via Powershell, A call to the /scs/cm/cmstartoperation.scsvc
quite often results into a timeout. After receiving timeout it is not clear if operation has started or not and what is the OperationId.
It'd be nice if Content Migrator had support for SPE (as a cmdlet).
It's pretty easy to do, and the cmdlet classes remain quiescent if SPE is not installed (you don't have to force everyone to install SPE to add SPE support).
Here's an example of one I did for Unicorn:
If I install Sidekick with the nuget package, it comes with dependecies like "Microsoft.AspNet.Mvc", which is the System.Web.Mvc.dll. Is this System.Web.Mvc.dll compatible with the System.Web.Mvc.dll from the sitecore installation, because it will get overridden?
In 1.5.10, if you pull a root item where you already have some of the tree but not all populated, and then hit Cancel, it recycles a lot of items that shouldn't be.
Here I waited while it skipped past 543 existing items, then pressed cancel and it immediately recycled a lot of items. I don't understand why certain items are being recycled but they definitely exist on the source server.
Also attached the error
{002aeb82-067c-455b-a1be-bfd35a0254b7}
System.Exception: Transaction (Process ID 108) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction. ---> System.Data.DataException: Error executing SQL command: INSERT INTO [ArchivedFields] ( [RowId], [ArchivalId], [VersionId],
[FieldId], [Value], [Created], [Updated])
SELECT [Id], @archivalId, @versionId, [FieldId], [Value], [Created], [Updated]
FROM [VersionedFields]
WHERE [ItemId] = @itemId and [Language] = @language AND [Version] = @version ---> System.Data.SqlClient.SqlException: Transaction (Process ID 108) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Sitecore.Data.DataProviders.Sql.DataProviderCommand.ExecuteNonQuery()
--- End of inner exception stack trace ---
--- End of inner exception stack trace ---
at Sitecore.Data.DataProviders.Sql.DataProviderCommand.ExecuteNonQuery()
at Sitecore.Data.DataProviders.Sql.SqlDataApi.<>c__DisplayClass33_0.<Execute>b__0()
at Sitecore.Data.DataProviders.NullRetryer.Execute[T](Func`1 action, Action recover)
at Sitecore.Data.Archiving.SqlArchive.ArchiveVersionedFields(ID itemId, ID archivalId, String language, Int32 version)
at Sitecore.Data.Archiving.SqlArchive.ArchiveVersionedFields(ID itemId, ID archivalId)
at Sitecore.Data.Archiving.SqlArchive.ArchiveData(Item item, ID archivalId)
at Sitecore.Data.Archiving.SqlArchive.<>c__DisplayClass41_0.<DoArchiveItems>b__0(Item item)
at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
at Sitecore.Data.Archiving.SqlArchive.DoArchiveItems(IEnumerable`1 items, ID archivalId)
at Sitecore.Data.Archiving.SqlArchive.DoArchiveItems(IEnumerable`1 items, ID archivalId)
at Sitecore.Data.DataProviders.NullRetryer.Execute[T](Func`1 action, Action recover)
at Sitecore.Data.Archiving.SqlArchive.ArchiveItem(Item item)
at SitecoreSidekick.Services.SitecoreDataAccessService.RecycleItem(String id)
at ScsContentMigrator.Core.ContentItemInstaller.CleanUnwantedLocalItems()
My understanding is this can work via Powershell, would this be able to be added to the UI - instead of "Pull From" you can select "Push To"?
My use case is for content items that I don't want to include in Unicorn such as one-off new items / new media items / one-off updates to existing items. I know that Unicorn has the NewItemsOnly feature but this would be far easier with my DevOps workflow.
I'm trying to sync in a site into a clean instance.
From: Sitecore 9.2 with SXA, SCS 1.5.9 Rainbow 2.1.2
To: Sitecore 10.0 with SXA, SCS 1.5.9 Rainbow 2.1.2
It does not seem to be consistent with items further down the tree.
For example it brought in /sitecore/media library/open-your-way/open-your-way-landing-page/Image Text Block/image-text-block-ColouringIn but not /sitecore/media library/open-your-way/open-your-way-landing-page/Image Text Block/image-text-block-sale-and-service which is on the same level. I have also seen where it didn't bring in any child items after level 6. I then have to rerun the sync to bring those in, up to 5 times to bring everything in.
All advanced options are unticked.
Hey,
I compared the test and production system and always I have some items, which cannot be synchronized. The parent items are also not marked, that the items below has some changes:
After some investigation I found out, that the values which are shown there, are from standardvalues. But the value is the same on both systems.
So I checked the code and it seems that locally the value is retrieved by field.Value (which is internally doing: this.GetValue(allowStandardValues: true, allowDefaultValues: true)).
And remotely I am not sure, because there are multiple Implementations, but it seems that the fieldvalue in the database is used.
This would explain why there is always a difference and after sync it wont go away, because both items are equal (in sql database)
I changed it locally in ContentMigrator/Data/CompareContentTreeNode.cs > AreFieldsEqual the .Value to GetValue(false,false) and the same in ContentMigrator/CMRainbow/DefaultLogger.cs.
The result looks better, but I am not sure about it.
Maybe you can confirm my suspicion.
best regards
Working on content migration and have received a request to not install items in the CE. The desired outcome is for only code and config deployed, then migration takes place through the PowerShell module provided.
For clarity, get rid of the dynamic
models being used :)
We chatted about this just now.
Would be nice if there is a way to save the selected items in the "content item to pull" area for reuse. It's not uncommon to want to pull on-demand the same parts of the tree. In the case of SXA, this gets really tedious.
I could imagine a presets section where in just one click you rerun the preset steps. All the options that were checked are reused.
Perhaps look something like this:
I would to see the possibility of adding a Sidekick button to the Launchpad because this is the default page editors see when they login Sitecore.
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> Rainbow.Storage.Sc.Deserialization.TemplateMissingFieldException: The field 209d3b2f-0daf-4a38-a1a6-3c9f1ee60689 (likely FixLanguageUrls) is not present in Sitecore on the Settings template.
at Rainbow.Storage.Sc.Deserialization.DefaultDeserializer.Deserialize(IItemData serializedItemData, IFieldValueManipulator fieldValueManipulator)
at Rainbow.Storage.Sc.SitecoreDataStore.Save(IItemData item, IFieldValueManipulator fieldValueManipulator)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at ScsContentMigrator.Services.DatastoreSaver.Save(IDataStore store, IItemData data)
at ScsContentMigrator.Core.ContentItemInstaller.ProcessItem(PullItemModel args, IItemData localData, IItemData remoteData)
In cases like this I would like the option to continue to install the item, but just warn about the missing field instead.
Hello, recently, we have faced an issue when tried to sync media library items via sidekick content migrator with the enabled "Item blaster" option - the result was that the item was without a preview icon in the media library. Once "Item blaster" was disabled the sync was done successfully, but only for the new items old still were without preview - during a quick check I have found that the preview URL is correct but for some reason, the preview image was not created/generated.
We have checked on syncing via Sitecore 9 to 9, Sitecore 10 from 9, the result is the same - no preview image if "Item blaster" option is enabled.
Splitting this issue out from #58
The mechanism which uses checksums calculated on both the source and target systems to compare seems to have issues in some scenarios. It is hard to set up a test case, but perhaps some debug logging code could be added to the mechanism so that we can see what the comparisons are and why it thinks there are no changes to child nodes / leaf nodes when there are.
Is it possible to filter items that needed to be synced in an automated scenario?
We only want to sync items that are marked to be allowed to be synced e.g. items of a specific template.
The Content Migrator on my local environment cannot see all of the items in our CM environment.
I've attached images of what our content tree looks like in our CM environment and what the tree looks like the Content Migrator. Red blocks are the items it cannot see and green are the items it can see.
Recently having issues with my Sitecore 9.1.1 instance. Content editor is throwing a whole bunch of Uncaught TypeError: Cannot read property 'innerHTML' of null. Relating to scscommand.js:44 and jsnlog.min.js:1.
I recently had some dll issues (unrelated) but have checked I have the expected files:
This is on my local single instance environment. I also recently installed a google invisible recaptcha package for sitecore which I have since removed as I thought it was responsible for these script errors until I realised it was sidekick related so I'm not sure if it's coincidence this happened at the same time or has somehow affected the sidekick files.
I don't use Unicorn at all.
hi, I got some problems that sidekick is not showing if the item is the same locally and remote.
I am using Sitecore 9.0.2 with SXA and for item sync I am using unicorn and for content sync I would use sidekick. The SXA nodes on my remote systems where created with unicorn.
In the below example the complete Data List inclusive Subitems is under Unicorn control, but the items below each Data Item are not under unicorn control. I've just synced the hole data Tree with sidekick don't know if this was right, but after that it shows me that nearly all items are different
and here the home Folder is under unicorn control but not the subitems. I've pulled the subitems from my remote system and after that they are not shown as equally "green"
let me know when you need more Informations. I've used the latest stable nuget package from sitekick.
After using Sitecore with three or four different users (each editing a number of items) the Content Editor throws an "Error 400 - Bad Request" which makes the whole Sitecore backend unusable.
As far as I can see this is caused by the Editor Context module, which saves a base64-encoded list of last viewed items which get saved into the "scseditorcontext[username]" cookie. This cookie can reach a size of over 2500 bytes. Having a few of those cookies you can reach the limit for the HTTP request headers which is typically 8K.
Seeing this a fair bit in the CM logs
9968 05:55:06 WARN unable to register action for SCS Editing Context
Exception: System.NullReferenceException
Message: Object reference not set to an instance of an object.
Source: Rainbow.Storage.Sc
at Rainbow.Storage.Sc.ItemData.get_DatabaseName()
at SitecoreSidekick.ContentTree.ContentTreeNode.Initialize(IItemData item, Boolean open)
at ScsEditingContext.TypeContentTreeNode..ctor(IItemData item)
at ScsEditingContext.Pipelines.HttpRequestBegin.RegisterEvent.<>c.b__2_0(IItemData x)
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.MoveNext() at System.Linq.Buffer
1..ctor(IEnumerable1 source) at System.Linq.OrderedEnumerable
1.d__1.MoveNext()
at System.Collections.Generic.List1..ctor(IEnumerable
1 collection)
at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
at ScsEditingContext.Pipelines.HttpRequestBegin.RegisterEvent.Process(HttpRequestArgs args)
Would be good to know what causes this and if there is a problem?
If there's no problem then can we change the log level or disable this warning somehow?
Not a big deal for most use cases, but based on our conversation just now we talked about optimizing the number of calls to GetContentSelectedRelated
(and the remote variant thereof) by changing it as a per-node boolean result to a single call that returns the ancestor ID(s) of the currently selected item into a shared scope.
This would improve scaling on low bandwidth connections as well as folks moving deep content items or those with a lot of sibling parents.
I have noticed that for some reason Delete local items not in remote server
functionality removes extra items. I have run content sync between 2 Sitecore instances with exactly the same content. After sync had been finished I noticed that in the first instance some item trees were missing. So I started digging into code and noticed the following piece in ContentItemInstaller
:
using (new SecurityDisabler())
using (new SyncOperationContext())
{
while (!Completed)
{
if (!itemsToInstall.TryTake(out var remoteData, int.MaxValue, cancellationToken))
{
break;
}
In case itemsToInstall.TryTake(out var remoteData, int.MaxValue, cancellationToken)
returns false
, the installer stops installing and eventually CleanUnwantedLocalItems
kicks in. This code can return false
when collection is empty.
I might be wrong, but how does the ContentItemInstaller
know that ContentItemPuller
has finished pulling? I cannot find any reference to ContentItemPuller.Completed
property. It seems to me that when itemsToInstall
becomes empty then ContentItemInstaller
will stop installing even though ContentItemPuller
might eventually put more items in the collection?
Is there a way to view Language code in the audio log UI?
I've installed it via Nuget
https://www.nuget.org/packages/SitecoreSidekickCore/1.2.0-alpha3
(plus all other SitecoreSidekick packages)
but I cannot run it
Uncaught TypeError: Cannot set property 'innerHTML' of null
at eval (eval at scSitecore.process (Sitecore.js:937), <anonymous>:1:67)
I think scs
is null. Why is it null
?
I am running Sitecore 7.2
Hi,
thank you for the module and for continuing to update it!
During the initialization the EnsureDesktopButton
method overrides some fields on the desktop button item and makes sure that the security field is set to ar|sitecore\\Sitecore Client Authoring|pd|+item:read|pe|+item:read|
.
It would be nice if these rights could be customized (and not reset with every start) so the button is not shown to every editor. Or is there another reason the item has to have exactly these rights that I am not aware of?
I could also change the code myself and create a pull request if you'd prefer that.
Thanks!
In our use of Sidekick I've found a JobViewerHandler that has been in place but won't build after the upgrade to 1.4.2:
public class JobViewerHandler : ScsHttpHandler
I see that there are three handlers here, including the ScsHttpHandler:
https://github.com/JeffDarchuk/SitecoreSidekick/tree/master/Source/SitecoreSidekick/Handlers
However the SCSHttpHandler isn't included in the classes to compile in the csproj file:
https://github.com/JeffDarchuk/SitecoreSidekick/blob/master/Source/SitecoreSidekick/SitecoreSidekick.csproj
Was this by design or just an oversight and needs the csproj file updated? If by design, is there any info on how to get it working in the new version?
Hi,
our log got spammed by the following error
32004 15:43:02 WARN Checksum generation failed. Exception: System.Data.SqlClient.SqlException Message: Conversion failed when converting from a character string to uniqueidentifier. Source: .Net SqlClient Data Provider at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action
1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlDataReader.TryHasMoreRows(Boolean& moreRows)
at System.Data.SqlClient.SqlDataReader.TryReadInternal(Boolean setTimeout, Boolean& more)
at System.Data.SqlClient.SqlDataReader.Read()
at ScsContentMigrator.Data.ChecksumGenerator.Generate(List1 ids, String database)
How to fix this?
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Data.SqlClient.SqlException: The parameterized query '(@p0 uniqueidentifier,@p1 nvarchar(6),@p2 uniqueidentifier,@p3 n' expects the parameter '@p980', which was not supplied.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Sitecore.Data.DataProviders.Sql.DataProviderTransaction.Flush()
at Sitecore.Data.DataProviders.Sql.DataProviderTransaction.Dispose()
at Sitecore.Links.SqlBatchLinksOperationWorker.<TryStartProcessingBatches>b__21_0()
at Sitecore.Data.DataProviders.NullRetryer.ExecuteNoResult(Action action, Action recover)
at Sitecore.Links.SqlBatchLinksOperationWorker.AddItemLink(SqlInsertLinksModel sqlInsertLinks)
at Sitecore.Data.SqlServer.SqlServerBatchLinkDatabase.UpdateLinks(Item item, ItemLink[] links)
at Sitecore.Data.Managers.ItemProvider.RemoveVersion(Item item, SecurityCheck securityCheck)
at Sitecore.Data.Items.ItemVersions.RemoveAll(Boolean includeAllLanguages)
at Rainbow.Storage.Sc.Deserialization.DefaultDeserializer.CreateTargetItem(IItemData serializedItemData, Item destinationParentItem)
at Rainbow.Storage.Sc.Deserialization.DefaultDeserializer.GetOrCreateTargetItem(IItemData serializedItemData, Boolean& newItemWasCreated)
at Rainbow.Storage.Sc.Deserialization.DefaultDeserializer.Deserialize(IItemData serializedItemData, IFieldValueManipulator fieldValueManipulator)
at Rainbow.Storage.Sc.SitecoreDataStore.Save(IItemData item, IFieldValueManipulator fieldValueManipulator)
--- End of inner exception stack trace ---
at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
at ScsContentMigrator.Services.DatastoreSaver.Save(IDataStore store, IItemData data)
at ScsContentMigrator.Core.ContentItemInstaller.ProcessItem(PullItemModel args, IItemData localData, IItemData remoteData)
Getting about 500 or so errors like this out of a 3k item pull.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.