Pages

10 September, 2020

Sitecore - [Dilithium] Data corruption in master

When using Unicorn to serialize the content and share it with team, there are times when you will end up having inconsistency with the data like having unversioned field data in versioned table in master DB. Because of this, you may get error like "Data Corruption" when you sync using Unicorn. 

[Dilithium] Data corruption in master://{fc5c3451-dfde-4778-9901-5d0b1da1e212}! Field 19a69332-a23e-4e70-8d16-b2640cb24cc8 (unversioned) had a value in the versioned fields table. The field value will be ignored.

When looking for a solution, I found Mikael has written a SQL script which will identify these inconsistencies and provide an option to remove the incorrect data. This will stop this data corruption error message. Thank you Mikael for the script. 

https://mikael.com/2019/11/clean-up-sitecore-database-and-avoid-corrupt-published-content/

https://gist.github.com/mikaelnet/a57faa9a7f9b35b9bba1118787b4266d

01 September, 2020

View the list of installed .NET version

To get the list of .NET version in a windows machine, you can run the below command. 


Get-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\*", "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*" | Where {$_.DisplayName -like '*.NET*' -and $_.DisplayVersion -like '4.*'} | Select-Object DisplayName, DisplayVersion

30 August, 2020

Access Host SQL Server from Virtual Machine

When using VMWare, you may be trying to access the SQL server in the host machine from the VM. Be default, SQL server remote connection is disabled and also the host machine firewall may be blocking the 1433 port which is normally used for SQL connection. In order to enable the firewall and the TCP port, you can follow the below steps mentioned in the SO. 

https://stackoverflow.com/a/24898663/3016347

28 November, 2019

Sitecore 9.3 released!

  • Sitecore 9.3 has the Solr 8.1.1 support (Sitecore compatibility table is yet to be updated).
  • SIF 2.2.0
  • Got a new editor - The Horizon editor
  • Choose how we clean up expired sessions.

Lot of stuff to read and try it out. 

(Adding a new blog page so that I can start my blogging again! 😊 )

31 August, 2017

Automatically create new version for Lock & Edit without workflow

Sitecore will create a new version on Lock and Edit if the item is tied to a workflow. For our case, version has to be created even without using workflow. As mentioned by Dylan here, we can override the default behavior of Sitecore. Here we overridden the “Checkout” command which is executed on Lock & Edit.

Added a setting called EnableAddVersionWithoutWorkflow as a flag to enable this feature. If it is true, it will add a version and lock the new version for the user.

Note: By default, only a non-admin user will see the lock and edit button for an item.

if (!item.Locking.IsLocked()) {
  Log.Audit(this, "Start editing: {0}", new string[] {
    AuditFormatter.FormatItem(item)
  });
  if (Context.User.IsAdministrator) {
    item.Locking.Lock();
  }
  //Add new version if the custom flag is true
  else if (bool.Parse(Settings.GetSetting("EnableAddVersionWithoutWorkflow", "false"))) {
    Error.AssertObject(item, "item");
    if (StandardValuesManager.IsStandardValuesHolder(item)) {
      this.Lock(item);
    }
    Item item2 = item.Versions.AddVersion();
    if (item2 != null) {
      item = this.Lock(item2);
    }
  }
  //Add new version if the custom flag is true
  else {
    item = Context.Workflow.StartEditing(item);
  }
  Context.ClientPage.SendMessage(this, string.Concat(new object[] {
    "item:startediting(id=",
    item.ID,
    ",version=",
    item.Version,
    ",language=",
    item.Language,
    ")"
  }));