Microsoft Analysis Services - Delete server objects and Visual Studio 2022 fails to deploy any cubes - ssas

I am testing out MS AS for possible use as an OLAP cube on our project.
I've been using the Visual Studio 2022 plugin for about a week and it all seems straightforward.
Just now I deleted a deployed setup from AS server and now when I build to deploy a cube it fails with:
The 'Global Config' cube was not found in the 'TestBonds' database on the '' server.
This is with 'Deploy All' set which I'd have thought forces it.
Global Config is my datasource name. I've tried a new project, inheriting the datasource, but it gives the same error.

I worked it out although that error message could be more descriptive!
Essentially it will not deploy, which is a good thing I guess :), until you work through any errors in the build panel.
I had some circular references and other 'relationship issues' :).
I am still working out what is what as I come from a totally different OLAP building experience with Java and ActivePivot (which I think is based on the original MS AS anyway! :)).
So if you see weird errors and it will not deploy, work through any errors to get rid of them! I also changed the deploy settings to:
Processing Option: Full
Server Mode: Deploy All
to be on the safe side.

Related

Package Deployment Model, SSISDB performance slow running job through SQL Server Job Agent

I currently have a ETL system running on SQL Server 2014, it used to be using individual package deployment method. We recently changed it to use the new SSISDB project deployment method.
The issue is these same packages with no other changes take roughly twice as long as the old deployment method. I understand a lot of overhead may have been from the logging that is set to 'Basic' by default for project deployments. I changed that to none with some improvement, but still far slower than our old deployment model, or even running the packages locally in visual studio.
Based on my research this is because 'None' still logs quite a bit of information to SSISDB which is causing a huge overhead. Previously we only logged errors by email with the Package Deployment Model, but with the Project Deployment Model that is not the case, and as I understand I cannot log less information in Sql Server 2014 when using this deployment model, as custom logging was only introduced in 2016.
Has anyone else had this issue and come up with any solution? Preferably a solution that isn't "switch back to Package Deployment Model" or to upgrade to 2016 which will not be in the near future. Currently I have tried and index on internal.executables from the SSISDB database. referencing this article http://www.argento-it.co.uk/ssis/ssisdb-slow/
This did not improve the situation at all, with the run time remaining the same

Prepare a TFS environment for tests

Just to make it clear, my objective is to reproduce an environment similar to a TFS 2013 that someone backup from.
The backup (full) was made manually from SQL cause TFS is reproducing an error in the attempt of it and I'm trying to fix this error in a test environment.
Which way should I use SQL to backup it?
How should i restore and map TFS in the new server to understand it?
Note: The backup was created by an user that does not exist on the test machine;
NoteĀ²: I have the .bak's files (Tfs_configuration, Tfs_DefaultCollection and Tfs_Warehouse).
I can paste the error log of TFS if needed.
The whole process is well documented, it's easiest when you have a Full TFS backup from the Administration Console, that way you're sure to have all the databases in their right state.
The process to follow is quite extensive, make sure you follow each of the steps. If the environment you're restoring from didn't have the backup feature built-in (it was added in one of the update packs), then you can get it by installing the Team Foundation Server Power Tools on the Application Tier server.
To update the accounts use:
https://msdn.microsoft.com/en-us/library/ms404869(v=vs.120).aspx#UpdateNetworkService
It looks like you may have all the databases required, though it's possible there are more. To restore TFS to a new environment, you need all the databases that belong to the installation.

Test impact analysis in tfs 2012

I have setup a tfs 2012 server with the build controller and the build agent. I have a simple visual studio 2012 solution with a windows console application project and a test project on a client machine. Test impact analysis is enabled in the build definition.
Simply put, the impacted tests list that should appear on each build performed on the tfs server is never populated. I have tried to change the test runner from vs runner to mstest to no avail.
Please advise. Thanks.
EDIT: I installed VS 2012 on the server. This enabled code coverage, but still no impact analysis.
Fortunately I fixed the 'problem'.
For TIA to work, you need to successfully complete a test case in test manager, passing all test steps. Only then does the analysis file get generated. Also, I had problems with the video recording module of the test controller, which apparently also prevents the file from being generated sometimes, though this could just be a coincidence.
After successfully generating the file, subsequent builds will now have a baseline to compare against.
Have fun.

Visual Studio error when trying to open dbproj files

I have Visual Studio 2008 Database Edition, and everything worked great until the first time I tried to load a .dbproj file. These database project files work for the other developers I work with, but when I try to open it, I just get an error message "Object reference ot set to an instance of an object."
It's probably the same problem this guy is having, although he didn't do a good job of describing it and has no solution.
Every other kind of project file loads and builds and runs normally. dbproj files all generate this cryptic error. I just tried a fresh removal and reinstall of Visual Studio 2008 DE to no avail. Could this have something to do with my SQL 2005 installation? (This also works normally through SQL Server Management Studio.)
**
UPDATE
**
Probably even more importantly, this same error occurs when I try to make a new dbproj file. Every other type of project can be created no problem.
You need to tell Visual Studio the correct instance of SQL Server to use for validation.
Tools>Options>DatabaseTools
Change the settings in "Data Connections" and "Design-time Validation Database" to reflect the correct instance.
After many failed re-configurations and re-installations, a member of my team discovered the problem!
Under Tools > Options > Database Tools > Design-time Validation Database, there is an option to set your SQL Server Instance Name. Visual Studio automatically picks this when it's installed.
The key is that Visual Studio doesn't necessarily pick the right one. I happen to have 3 SQL server instances on my machine. SQLEXPRESS (a 2005 instance that Visual Studio installed alongside itself), SQLEXPRESS2005, a 2005 instance I installed, and SQLEXPRESS2008, which I also installed.
Visual Studio had configured itself to connect to the SQLEXPRESS2008 instance, even though it only supports SQL2005 dbproj files by default. By opening this dialogue, and updating the server instance name, the error no longer appeared and I was able to open dbproj files:

Visual Studio 2010 Database Project Installer / Install script

I have been using a database project in visual studio 2010 to create a database. Visual Studio makes this process really easy to deploy the database and deploy updates. The issue I have is how I can get visual studio to create a script that will build the database that I can use on a QA or production system.
I thought that building the project would create a SQL file that did this but this does not seem to be true. Can someone please advise on how I can do this or what simple step I am clearly missing.
As strange as it may sound, Visual Studio does not create a SQL file to deploy your database when you perform a Build.
Instead, this occurs at Deploy time. The reason behind this lies in the way that Visual Studio makes changes to the database that you're deploying to: in order to change your database, it must first compare the project model (as defined in the files contained within the .dbproj) with that of the existing database schema to determine what changes you have made since the database was last deployed.
You then have the choice of manually executing the SQL script produced using the SQLCMD command-line utility (or through SSMS in SQLCMD mode), or alternately you can configure your Visual Studio Database Project to execute the script if you specify the following Deploy Action in project settings:
Generate a deploy script (.sql) and deploy to the database
Note that you will need to provide a connection string in project settings so VS knows where to deploy to.
When you get to the stage where you want to deploy to a QA or PROD environment, you have a couple of options:
Deploy directly within Visual Studio. In addition to the standard Debug and Release configurations that you get when you first create your Database Project, you can also create your own configurations which you could use to deploy to your QA and PROD environments (i.e. potentially with a different connection string/target database name).
Deploy from a Build Server. Install Visual Studio on a separate machine and call MsBuild against your .dbproj/.sln file with the Build and Deploy targets specified along with the appropriate connection properties.
Doug Rathbone has written a great blog post on subject if you want to learn more:
http://www.diaryofaninja.com/blog/2011/06/23/compare-amp-update-database-schemas-right-within-your-ide--part-2-automation-with-teamcity