I'm pulling my hair out here for that I can't understand what is going on
I have the following:
When I run ascmd.exe it giving xml file in order to build OLAP database, most of the time the process just gets stuck and the console window is open even after ten minutes with no further messages.
However if I check in the SQL Server Managment, I can see that the OLAP database is created. Then in other times (Same machine, Same scenario, Same snapshot) it succeeds.
What can cause this odd behaviour?
I've tried to search everywhere but did not find any similar issue
I've tried to replace the ascmd.exe tool with its latest(Version 10.0.87.5)
I don't know whats causing this, please help!
Thanks!!!
Update: Please someone? it is very important
Update:
I think I have a progress on it but can't explain the behaviour.
I've looked into the code of the Ascmd and I've found that for some reason the trace file(log file) did not start, therefore the code got into a loop forever section and did not get out(I've added prints to the code to check out if it is get stuck here and i've noticed that it gets stuck on while (!TraceStarted) { Thread.Sleep(1); }
:
private static void WaitForTraceToFinish()
{
int delay = Int32.Parse(TraceTimeout, CultureInfo.CurrentCulture);
TraceTimeoutCount = TraceTimeoutCountReset = delay * PollingInterval; // TraceTimeoutCount is in 1/4 seconds
Console.WriteLine("TraceTimeoutCount is : " + TraceTimeoutCount);
Console.WriteLine("Did Trace Start Already ? : " + TraceStarted);
// Wait for trace to start to flow
while (!TraceStarted) { Thread.Sleep(1); } // loop every 20ms waiting for trace to start
// Wait BeginEndBlockCount becomes 0 or TraceTimeoutCount expires
while (TraceTimeoutCount > 0)
{ // loop forever until TraceFinished
Console.WriteLine("TraceTimeoutCount is : " + TraceTimeoutCount);
Console.WriteLine("PollingInterval is : " + PollingInterval);
Console.WriteLine("1000 / PollingInterval = " + 1000 / PollingInterval);
if (BeginEndBlockCount == 0) return;
Thread.Sleep(1000 / PollingInterval); // wait a polling interval
Console.WriteLine("TraceTimeoutCount is : " + TraceTimeoutCount);
TraceTimeoutCount--;
Console.WriteLine("TraceTimeoutCount is : " + TraceTimeoutCount);
}
Console.WriteLine("Got out from trace");
// TraceTimeoutCount expired -- just exit
}
Does anyone know why the trace file is not started? Does it related to Windows Server 2008 hard security rules?
I cannot remove the trace file since its a requirement for us Any suggestions? thanks!
Its so frustrating to know that administrative privileges in Windows Server 2008 + SQL Server 2008 could make those errors Running as administrator solved my problem and the OLAP creation process did not stuck