Duplicated Service Name Error when Replacing CAR in WSO2 Micro-Integrator - wso2-micro-integrator

I have created a Proxy Service and place it as a CAR application into the WSO2 Micro-Integrator 1.2.0 in the path /home/wso2carbon/wso2mi-1.2.0/repository/deployment/server/carbonapps. I can query the new proxy service without any issues, but when I delete the CAR application and replace it with a new version of the CAR, I got an error in the Micro Integrator:
...
Caused by: org.apache.synapse.deployers.SynapseArtifactDeploymentException: ProxyService named : MyCustomProxyService already exists
at org.apache.synapse.deployers.AbstractSynapseArtifactDeployer.handleSynapseArtifactDeploymentError(AbstractSynapseArtifactDeployer.java:482)
at org.apache.synapse.deployers.ProxyServiceDeployer.deploySynapseArtifact(ProxyServiceDeployer.java:66)
... 20 more
I thought that by removing the CAR application, it would delete the Proxy Service, but clearly is not working like this.
If I delete the problematic CAR application and restart the WSO2 Micro-Integrator service, then, when I place the new CAR application (again), the error is no presented.
Is there a way to clean any installed Proxy Service (CAR Application), without restarting the WSO2MI server?

When you delete the carbon application all the deployed artifacts should be removed from the server and according to your issue description, it seems the hot deployment feature is not working. However, When I checked this locally in both fresh and updated WSO2:MI-1.2.0 pack, I am able to deploy the same changed car application without any server restart. So please download the LATEST RELEASE: 7.1.0 from the official site[1] and try it again.

Related

Error in creating indexes in Solr 8.1.1 running on an Azure App Service

We have created a new Sitecore environment with the Azure market place solution "Azure Experience Cloud" Sitecore version 9.3 XM scaled topology with Solr search.
Steps we followed for creating Solr App service:
Created a blank sitecore 9.3 solution from Azure market place and created a Web app for Solr.
Unzipped the Solr 8.1.1 package and copied all the contents to wwwroot folder of the Web app created for Solr.
Created a new Solr core by creating a new {index folder} folder and copied conf from the /site/wwwroot/server/solr/configsets/_default.
Created a core.properties file with numShards=2 & name={index folder}.
We get the below error:
org.apache.solr.common.SolrException:org.apache.solr.common.SolrException:
Index dir 'C:\home\site\wwwroot\server\solr{index
folder}\data\index/' of core '{index folder}' is already locked. The
most likely cause is another Solr server (or another solr core in this
server) also configured to use this directory; other possible causes
may be specific to lockType: native
How can we resolve the above problem?
This is a known issue with Solr running on an Azure App Service and usually gets resolved by restarting the App Service. Of course, it is not a proper solution, but can work short-term.
Moving forward I would recommend to create a virtual machine in Azure and setup Solr there or, alternatively, look at a SearchStax solution offering a fully managed Solr-as-a-Service.
Also please take a look at a relevant post on Sitecore Stack Exchange.

Migrating TFS to new Server

I am currently working to move TFS from its' current server to a new environment. My team has already completed the steps as seen in this Microsoft Documentation on moving TFS to a new Server.
We have already installed and migrated/restored our SQL Database in the new server and ensured all the prerequisites for TFS were installed. The TFS Admin Console is currently installed and we are trying to configure it by using the existing Tfs_Configure database. That all works without a problem, however, when we go to look at our existing Project Collections, the build service is still "linked", having the TFS Address set to the old server and not the one we migrated to.
I have detached the collections in the old environment and reattached them in the new environment, however, they still seem to be trying to build in the old server. I am reading that we needed to detach them prior to migrating any data over. Did we do something incorrectly, or rather, did we try to detach the collections too late into the process?
You need to unregister the build service that uses the <<oldcomputername>>. Register a build service with the <<newcomputername>>. And do the same for the agent and the controller.
On each build server, open the administration console and stop the
build service.
In the properties for the build service, update the communications
properties.
According to the above screenshot, you could see the build service is configured under project collection level.
Moreover, for vNext build agent you need to remove and re-configure an agent.
To remove the agent:
.\config remove
After you've removed the agent, you can configure it again.
You have to update your build services to point to the new server. For XAML build, you'll have to reconfigure the build controller. For the modern build system, you'll need to reconfigure your build agent(s).

Service Fabric deployment hanging on GetApplicationExistence

I have created a Service Fabric cluster in Azure from scratch, with security provided by an X509 certificate. There is one node type with five nodes, all of which appear healthy when I look in Service Fabric Explorer.
I have a solution in Visual Studio 2017 (v15.3.5) containing a Service Fabric project along with one other project which is a Stateless Service. When I attempt to deploy this, I select the cluster in the publish window, and hit go.
It then sits indefinately displaying "Started executing script 'GetApplicationExistence'" in the Build output window in VS. No amount of waiting will result in either success nor an error message. I can't find anything in the logs in Azure.
Does anyone have any idea what could be going wrong?
Check if your LocalCluster is healthy. There should not be any error/warning. I had warning System/DnsService was not up.
Reset the LocalCluster worked for me.
It turns out that there was something wrong with my development environment; the service fabric installation had got messed up somehow. When I tried with the exact same code from a different machine it all worked properly. I updated the Service Fabric elements of Visual Studio to the latest version and all started working again.

Websphere Application Server : Clustering

So I cannot wrap my head around clustering in Websphere. The first issue I'm having is starting the deployment manager. To start it I need a profile. To create the profile I found this command within IBM documentation:
manageprofiles.sh -create -templatePath profileTemplates/dmgr/ -isDefault
-profileName dmgr
But profileTemplates/dmgr/ does not exist, does it exist in a different place, or have i missed something while installing Websphere?
If you see only "default" and "management" directories under WAS_HOME/profileTemplates then most likely this is BASE edition. You can run versionInfo command from WAS_HOME/bin and for Network Deployment it should show some thing like
Name IBM WebSphere Application Server Network Deployment
Version 8.5.5.1
ID ND
The ID is showing ND. If your ID shows BASE /Express then there would be no option to create Deployment Manager profile. You would need to install ND code.
To download Trial version of WebSphere Application Server Network Deployment
http://www.ibm.com/developerworks/downloads/ws/wasnetwork/
To download Licensed version from Passport Advantage
http://www-01.ibm.com/support/docview.wss?uid=swg27038624
VS, opinions are my own and not those of my employer

Unable to start Message Engine in Websphere

I am facing a problem while starting the websphere message engine for one of the application deployed on websphere. This application is getting deployed automatically as a part of the installation of Websphere Lombardi 7.2 express edition. It's using websphere 7 internally to deploy it. When I try to start the message engine from the administrative console of websphere I am getting following error:
The messaging engine ProcessCenter01.twperfsvr-twperfsvr_bus cannot be started as there is no runtime initialized for it yet, retry the operation once it has initialized. For the runtime to successfully initialize the hosting server must be started, have its 'SIB service' already enabled, and dynamic configuration reload enabled. If this is a newly configured messaging engine and it is the first messaging engine to be hosted on this server, then it is most likely the 'SIB service' was not previously enabled and thus the server will need to be restarted. The messaging engine runtime might not be initializing because of an error while trying to start, examine the SystemOut.log of the hosting server to check for error messages indicating the problem.
After restarting the server, the same error shows. Can anyone help me to to find what gets loaded as a part of "initialization of runtime"? Are there any config files etc. that I need to check to solve this issue? I am suspecting some missing configuration causing error to load the runtime for this particular application.
I too faced this issue today had to delete all the files under the message store
check the directory-file path mentioned in
Application servers > server1 > Messaging engines > XXX.server1-primaryBus > File store
Just Enable the SIB Services For the particular Server.
Example:Server-->Application Server-->click on Server Name-->right hand side we can see SIB services-->Check box the Enable services.
This will solve your problem
Recently I have faced the same issue when I rebuilt the jvms in UAT envt. After searching on web I found that because of the old messages saved in the message store(flat files in my envt) the messaging engines was not getting initiated. After deleting the old messaging store and restarting the servers it got initialized.
I have struggled with this problem too.
In our situation the problem was that the file message store location was used that was already created for a different (or old) message-engine.
If you add a busmember to the service-bus and use a file store implementation, then you need to supply the path for the store and log folder. Make sure these locations don't exist yet, other wise you will run in the problem above. The message-engine for this member will use these folders.
If you have a script for creating the message-bus infrastructure, make sure that when you delete the bus or remove message-engines, that you remove the file store/log folders for these, before you re-run your script.
Another possibility is that you are using a external database as a data store, and the user that is used for the connection is not allowed to create a database. You might find a ffdc entry like this:
DB2 SQL Error: SQLCODE=-552, SQLSTATE=42502, SQLERRMC=DB2ADMIN;CREATE
SCHEMA, DRIVER=3.61.65
Then you have to go to your database administration tool and give DB2ADMIN the proper privileges. Then restart the server or cluster.
Finally this issue is been resolved. I did not create the schema in SQL Server with same name as that of the username I gave to connect SQL Server during the installation of WLE 7.2
Please find details about this at below link:
http://www.ibm.com/developerworks/forums/message.jspa?messageID=14795282

Resources