J'utilise le CMS Orckestra Composite C1 avec LoadBalancing et j'ai rencontré un problème avec la publication planifiée.Composite C1 - Publication planifiée avec LoadBalancing throws 'Aucune donnée n'existe étant donné les valeurs de clé de données'
Le scénario donné
- Deux noeuds/serveurs, charge équilibrée.
- accès à charge équilibrée (par exemple "www.mysite.com")
- L'accès à chaque nœud individuellement à des fins de test (par exemple "www01.mysite.com")
I a créé un C1 type de données avec Scheduled Publishing ("has publishing" -flag est true). En ajoutant de nouveaux objets de données de ce type et en définissant une date dépubliée, l'enregistrement sera enregistré comme prévu. Cependant, lorsque la date et l'heure dépublier est atteint, le serveur parfois (pas toujours) jette l'exception suivante:
System.InvalidOperationException: No data exist given the data key values
at Composite.Verify.ThrowInvalidOperationException(String message)
at Composite.Data.DataFacade.GetDataByUniqueKey(Type interfaceType, Object dataKeyValue)
at Composite.C1Console.Scheduling.DataUnpublishSchedulerWorkflow.Execute()
at Composite.C1Console.Scheduling.BaseSchedulerWorkflow.finalizeCodeActivity_ExecuteCode(Object sender, EventArgs e)
at System.Workflow.ComponentModel.Activity.RaiseEvent(DependencyProperty dependencyEvent, Object sender, EventArgs e)
at System.Workflow.Activities.CodeActivity.Execute(ActivityExecutionContext executionContext)
at System.Workflow.ComponentModel.ActivityExecutorOperation.Run(IWorkflowCoreRuntime workflowCoreRuntime)
at System.Workflow.Runtime.Scheduler.Run()
Si vous creusez dans la source de Composite C1, vous remarquerez que C1 essaie de faire quelque chose avec la tâche de planification et ne parvient pas à le faire. Vérifiez ce fichier source:
En conséquence de ce processus défaillant, les C1 données qui doivent être inédits est invisible sur un nœud et visible sur l'autre, comme si elle ne serait pas ont été inédites (correctement).
Le même problème se produit lors de la publication d'enregistrements. J'ai cherché sur le web ouvert et n'était pas encore en mesure de trouver une réponse.