Wait type CXPACKET - BPC 5.1 on MSS 2005 SP3
We are experiencing large variations in run times of logic packages in a BPC 5.1 system. A package may run in 15 minutes at one time and then the next run may take 5 hours. When the run time is significantly longer we see a process in the MSS Activity Monitor that is running in parallel (multiple rows with the same SPID) and all but one are suspended. Each of the suspended threads shows CXPACKET in the "Wait type" column. The command column has the value INSERT.
The other observation is that the system appears to spawn more threads for the same SPID after a period of time. For example, I have often found there are 20 threads and the wait time will be the same for groups of four threads -- each group of four has a different wait time than the others in the list.
My research indicates that this means the process is running in parallel and the threads are waiting for the completion (or start) of parallel statements. The only suggestion I have found so far is to change "Max Degree of Parallelism" from 0 (zero) to 1 on the server to prevent parallel query execution, or to set a hint to set MAXDOP to 1.
Is the logic package creating inefficient query plans that cause MSS to generate inefficient query plans that go into parallel? Is there any way to prevent this from happening?
Thanks,
David
CXPACKET wait is due to parallelism, and as you have researched you can avoid it by setting MAXDOP to 1.
Yes, improper query plans may be cause for long time executions, you may want to check the statistics are updated,any missing indexes,lots of fragmentation.
you may want to look into this nice article, about how to tune your query against CXPACKET waits.
[http://www.mssqltips.com/tip.asp?tip=2027]
Thanks
Mush
Similar Messages
-
Wait Type PAGEIOLATCH_SH and PAGEIOLATCH_EX
Hello,
I am looking at the performance issue on one of the SQL Server which is for Zenworks.
There are 4 application server which reads and writes to the Zen SQL Server.
It's been there for a while now and quite a lot of times I see the status as suspended and the Wait Type is PAGEIOLATCH_SH and PAGEIOLATCH_EX which disappears and comes back again and again.
Could somebody please advise how to troubleshoot this?
Best regards,
MohanHello,
Could you please share the result of the following query with us?
SELECT
TOP 50 *
FROM
[sys].[dm_os_wait_stats]
ORDER
BY [wait_time_ms]
DESC
Thank you in advance.
Regards,
Alberto Morillo
SQLCoffee.com
Thanks Alberto,
The result is below.
wait_type waiting_tasks_count
wait_time_ms max_wait_time_ms
signal_wait_time_ms
REQUEST_FOR_DEADLOCK_SEARCH 32350
161783933 5462
161783933
XE_TIMER_EVENT 5394
161766099 30301
161765240
LAZYWRITER_SLEEP 168848
161737044 3023
71938
SQLTRACE_INCREMENTAL_FLUSH_SLEEP 40395
161627956 4590
89
LOGMGR_QUEUE 1982118
161505817 645651
258372
XE_DISPATCHER_WAIT 17
156846134 50730025
0
CHECKPOINT_QUEUE 18208
150758459 2037452
3257
PAGEIOLATCH_SH 12811676
138069019 3369
244808
BROKER_EVENTHANDLER 14
112016323 84467042
11
SLEEP_TASK 10361836
81580069 2809
676539
BROKER_TO_FLUSH 78813
80887188 1980
26694
PAGEIOLATCH_EX 2774508
28392234 3545
73181
SOS_SCHEDULER_YIELD 2446505
8560372 1536
8532156
WRITELOG 1895345
5805484 20821
66796
SLEEP_BPOOL_FLUSH 1452978
4558026 753
204212
LCK_M_IX 67
3806433 311970
519
BROKER_TASK_STOP 746
3747976 10008
100
CXPACKET 331690
1348196 17612
179146
BACKUPBUFFER 230089
1273926 2048
12506
ASYNC_IO_COMPLETION 5
1243210 628743
0
BROKER_RECEIVE_WAITFOR 4
1199953 598704
0
BACKUPIO 105914
1174546 2127
594
LCK_M_U 184
1069219 238125
151
PAGEIOLATCH_UP 16079
665743 1457
3672
LCK_M_X 47
585665 72697
20
PREEMPTIVE_OS_AUTHENTICATIONOPS 61568
345872 3007
0
ASYNC_NETWORK_IO 94086
106911 1694
26395
MSQL_XP 9808
101965 2272
0
PREEMPTIVE_OS_GETPROCADDRESS 9808
101553 2272
0
PAGELATCH_EX 249003
82555 2041
58631
LCK_M_S 4
75172 70016
1
LOGBUFFER 1615
73754 1134
564
PREEMPTIVE_OS_WAITFORSINGLEOBJECT 26593
56219 545
0
PREEMPTIVE_OS_WRITEFILEGATHER 30
40052 5399
0
PREEMPTIVE_OS_LOOKUPACCOUNTSID 17496
25534 280
0
OLEDB 18501515
23474 249
0
PREEMPTIVE_OS_DELETESECURITYCONTEXT 17661
22908 507
0
PAGELATCH_SH 53643
19873 344
12476
THREADPOOL 2904
19451 288
0
LATCH_EX 10260
17581 521
1750
IO_COMPLETION 1865
16677 407
168
PAGELATCH_UP 855
14606 1335
384
PREEMPTIVE_OS_AUTHORIZATIONOPS 18055
13845 216
0
PREEMPTIVE_OS_REVERTTOSELF 14248
9884 170
0
SQLTRACE_FILE_BUFFER 139
7130 380
83
SLEEP_DBSTARTUP 61
7007 334
371
SQLTRACE_FILE_WRITE_IO_COMPLETION 729
6963 324
6
PREEMPTIVE_OS_QUERYREGISTRY 2691
5844 503
0
PREEMPTIVE_OS_CRYPTACQUIRECONTEXT 3696
5093 200
0
PREEMPTIVE_OS_NETVALIDATEPASSWORDPOLICY 3559
3948 87
0
Sorry, not in a great friendly format.
Many thanks,
Mohan -
We are using Red Gate's SQL Monitor to alert (every 5 minutes) when memory grants pending are greater than zero. Several times a day we are alerted on our Devel and Prod servers.
However, when querying the resource_semaphore wait type using sys.dm_os_wait_stats, it used to register non-zero amounts several months ago, but now is always equal to zero.
The Devel server is version 11.0.3128 standard on Windows 2008 R2 Standard 64-bit, and the Prod server is version 10.0.5500 on Windows 2008 Standard 64-bit.
We are storing wait stats for each server in a database, collected every half hour. The Prod resource semaphore was 569 early August 11, then after a reboot at 3:30 AM was equal to zero and is the same today. I have confirmed the current value using the following
query.
SELECT * FROM sys.dm_os_wait_stats
WHERE wait_type = 'RESOURCE_SEMAPHORE';
Similarly, the Devel resource semaphore was 167 early October 23, then after a reboot at 7:03 AM was equal to zero and has not changed from zero since then. Again, I confirmed the current value using the above query.
The custom alert code for Red Gate SQL Monitor is:
SELECT COUNT(*) FROM sys.dm_exec_query_memory_grants;
Also, running a perfmon counter against SQL Server: Memory Manager: Memory Grants Pending for
several days yields a flat line equal to zero, with maximum value zero.
Looks to me like something in SQL Server's internal stats collection system has broken. Or possibly, I am misunderstanding that these three counters measure the same thing.
Thanks for your help.We are using Red Gate's SQL Monitor to alert (every 5 minutes) when memory grants pending are greater than zero. Several times a day we are alerted on our Devel and
Prod servers. However, when querying the resource_semaphore wait type using sys.dm_os_wait_stats, it used to register non-zero amounts several months ago, but now is always equal to zero.
The Devel server is version 11.0.3128 standard on Windows 2008 R2 Standard 64-bit, and the Prod server is version 10.0.5500 on Windows 2008 Standard 64-bit.
We are storing wait stats for each server in a database, collected every half hour. The Prod resource semaphore was 569 early August 11, then after a reboot at 3:30 AM was equal to zero and is the same today. I have confirmed the current value using
the following query.
SELECT * FROM sys.dm_os_wait_stats
WHERE wait_type = 'RESOURCE_SEMAPHORE';
Similarly, the Devel resource semaphore was 167 early October 23, then after a reboot at 7:03 AM was equal to zero and has not changed from zero since then. Again, I confirmed the current value using the above query.
The custom alert code for Red Gate SQL Monitor is:
SELECT COUNT(*) FROM sys.dm_exec_query_memory_grants;
Also, running a perfmon counter against SQL Server: Memory Manager: Memory Grants Pending for
several days yields a flat line equal to zero, with maximum value zero.
Looks to me like something in SQL Server's internal stats collection system has broken. Or possibly, I am misunderstanding that these three counters measure the same thing.
Thanks for your help.
Hello,
SQL server internal stats collection is fine it is not broken what you are doing is after restart SQL server cache is cleared and this is area from where you get all your DMV result so before restart you are seeing some value for resource semaphore wait
and after restart it is gone.
For query memory grants pending value as non zero it clearly points to fact that there is memory crunch and you need to increase more RAM.
resource semaphore waits point to fact that your query which is running is costly one and is involving lots of sort and hash you need to tune it.Read below article for resource semaphore wait
http://blogs.msdn.com/b/sqlqueryprocessing/archive/2010/02/16/understanding-sql-server-memory-grant.aspx
If you want to find out cumulative waits stats i suggest you to use below query by Jonathan Kehayias.
Can you post output for this query
SELECT TOP 10
wait_type ,
max_wait_time_ms wait_time_ms ,
signal_wait_time_ms ,
wait_time_ms - signal_wait_time_ms AS resource_wait_time_ms ,
100.0 * wait_time_ms / SUM(wait_time_ms) OVER ( )
AS percent_total_waits ,
100.0 * signal_wait_time_ms / SUM(signal_wait_time_ms) OVER ( )
AS percent_total_signal_waits ,
100.0 * ( wait_time_ms - signal_wait_time_ms )
/ SUM(wait_time_ms) OVER ( ) AS percent_total_resource_waits
FROM sys.dm_os_wait_stats
WHERE wait_time_ms > 0 -- remove zero wait_time
AND wait_type NOT IN -- filter out additional irrelevant waits
( 'SLEEP_TASK', 'BROKER_TASK_STOP', 'BROKER_TO_FLUSH',
'SQLTRACE_BUFFER_FLUSH','CLR_AUTO_EVENT', 'CLR_MANUAL_EVENT',
'LAZYWRITER_SLEEP', 'SLEEP_SYSTEMTASK', 'SLEEP_BPOOL_FLUSH',
'BROKER_EVENTHANDLER', 'XE_DISPATCHER_WAIT', 'FT_IFTSHC_MUTEX',
'CHECKPOINT_QUEUE', 'FT_IFTS_SCHEDULER_IDLE_WAIT',
'BROKER_TRANSMITTER', 'FT_IFTSHC_MUTEX', 'KSOURCE_WAKEUP',
'LOGMGR_QUEUE', 'ONDEMAND_TASK_QUEUE',
'REQUEST_FOR_DEADLOCK_SEARCH', 'XE_TIMER_EVENT', 'BAD_PAGE_PROCESS',
'DBMIRROR_EVENTS_QUEUE', 'BROKER_RECEIVE_WAITFOR',
'PREEMPTIVE_OS_GETPROCADDRESS', 'PREEMPTIVE_OS_AUTHENTICATIONOPS',
'WAITFOR', 'DISPATCHER_QUEUE_SEMAPHORE', 'XE_DISPATCHER_JOIN',
'RESOURCE_QUEUE' )
ORDER BY wait_time_ms DESC
Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers -
BPC 5.1 SP11 with SQL SERVER 2005 SP3
Hi all,
i have a BPC 5.1 SP11 single-server installation.
I know the DB Server prerequisite is Microsoft SQL Server 2005 SP2 and cumulative update package 8.
SQL Server 2005 SP3 is supported?
is there any document about compatibility?
have i install SP3 before or after BPC Installation?
thanksHI Paolo,
SQL Server 2005 SP3 is supported with SAP BPC 5.1 SP3 or any other later version.
We already installed for few customers SP3 and this patch fix bugs into SSAS and also improve some performances regarding SSAS.
So the recommendation will be to apply this patch in your environment because it will bring just benefits.
If you have multiserver installation remmeber that you have to apply the patch in all servers not just into Database server.
Regards
Sorin Radulescu -
Please wait your request is being processed in MSS general overview
Hello All,
I have a requirement MSS. When the employees tries to open u2018General Overviewu2019 or u2018Compensation Informationu2019, is it possible to show the wait spinning clock or Please wait your request is being processed, indicating the page is opening?
Currently u2018General Overviewu2019 or u2018Compensation Informationu2019 is getting open in new window with menu bar and tool bar.
One more thing i want to add that First time when you click on general iview a new window open and it will not show you that spinning wheel.but if you refresh that by clicking left most top corner it will show you that wheel.
Regards
Bhargava
Edited by: Bhargava Kumar on Aug 30, 2010 1:00 PMHI,
Insert a new view in the same window, in which your concerned view is there. Make this new view as the entry view of your application. Use TimedTrigger UI element in this view and you can also provide a Label like "Please wait your request is being processed" in this view only. After the processing is over, you can call the next view using navigation.
RV -
Waiting error with BPC for Excel on Citrix
Good day,
We are currently running SAP BPC 5.1 SP 7 (release 5.0.508.03)
On Production and Staging , users running BPC client on our Citrix environment are experiencing a "WAITING" message when submitting on input schedules on BPC Excel after working or leaving the input schedule idle for more than +/- 10 minutes.
We currently only experience the problem on BPC clients running on Citrix. The BPC clients running via the LAN is not experiencing this problem and we cannot replicate the problem on the LAN
We asked our Network team to investigate they found that there was a network reset connection (RST, ACK) from the BPC Client on Citrix to the Application Server after 1 minute and 5 seconds of refreshing the input schedule.
Steps for Reconstruction
1.User running BPC for excel client on our Citrix environment.
2.logs onto BPC for Excel.
3.Opens and refresh's an input schedule in BPC for Excel.
4.Works on or leaves the input schedule idle for 10-15 minutes.
5.Submits on the input schedule after 10-15 minutes
6.Receives a "WAITING" message in the top left hand corner for the excel for BPC screen.
7."WAITING" message runs indefinitely.
Notes:
1.We can reproduce this on our Citrix Staging environment and currently experience this problem on our Citrix Staging and Production environment. The problem cannot be reproduced when a BPC client connects via the LAN for Staging and Production.
2.Citrix session remains active and connected during the above steps.
3.The only way the "WAITING" message is stopped is if the users selects refresh or submit on the input schedule after a few minutes, the refresh then runs successfully, but the Submit does not go through successfully.
4. We have asked or Citrix team to investigate and they cannot find anything that could be causing the problem.
Any ideas?
Thanks,
Peter Bellisok.
In this case it seems you have a problem with antivirus or forewall into Citrix server which is blocking the communication with application server.
I expect to be more like antivirus which is blocking actually the activity of add ins from excel whoich measn the BPC client.
So actually your problem has nothing to do with Cittrix is just a pure problem with installation of client into that machine (in your case citrix server).
So I suggest to disable any antivirus or firewall into that citrix server for test purpose and afte that you have to make sure that you don't have any restrictions on port 80 if this is used by BPC.
Regards
Sorin Radulescu -
DeadLocks on e_waitPipeNewRow Wait type
Hi Experts,
We are receiving hundread deadlocks daily with WaitType = "e_waitPipeNewRow". I am not sure why these deadlock occuring on prod server. I suspect this is reated to something to SSIS packages that are running on machine plus some latest
updates are missing on servers. Can you guys please throw some light on this and provide the solution to get rid of this.
Shivraj Patil.Hi experts,
Which kind of this deadlock is normal or Intra para query dead lock , beacuse i see Page Lock keyword in Graph.
<deadlock>
<victim-list>
<victimProcess id="process2b41ce08" />
</victim-list>
<process-list>
<process id="process2b41ce08" taskpriority="0" logused="360" waitresource="PAGE: 10:5:451520" waittime="3255" ownerId="13432730290" transactionname="UPDATE" lasttranstarted="2014-11-25T19:26:25.777" XDES="0xe8b07d970" lockMode="IU" schedulerid="23" kpid="250372" status="suspended" spid="281" sbid="0" ecid="0" priority="0" trancount="2" lastbatchstarted="2014-11-25T19:26:25.327" lastbatchcompleted="2014-11-25T19:26:25.327" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" loginname="INTRANET\sysCWBASPNET" isolationlevel="read committed (2)" xactid="13432730290" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="259" stmtstart="27128" stmtend="29648" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf>
Proc [Database Id = 10 Object Id = 1822850502] </inputbuf>
</process>
<process id="process3243bb88" taskpriority="0" logused="10000" waittime="3156" schedulerid="36" kpid="281440" status="suspended" spid="277" sbid="0" ecid="2" priority="0" trancount="0" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf />
</process>
<process id="process32458bc8" taskpriority="0" logused="10000" waittime="3181" schedulerid="39" kpid="277808" status="suspended" spid="277" sbid="0" ecid="3" priority="0" trancount="0" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf />
</process>
<process id="process32431b88" taskpriority="0" logused="10000" waittime="3166" schedulerid="35" kpid="253808" status="suspended" spid="277" sbid="0" ecid="4" priority="0" trancount="0" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf />
</process>
<process id="process32445708" taskpriority="0" logused="10000" waittime="3203" schedulerid="37" kpid="277024" status="suspended" spid="277" sbid="0" ecid="1" priority="0" trancount="0" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf />
</process>
<process id="process5c4ee08" taskpriority="0" logused="10000" waittime="3136" schedulerid="18" kpid="261740" status="suspended" spid="277" sbid="0" ecid="0" priority="0" trancount="2" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" loginname="INTRANET\sysCWBASPNET" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf>
Proc [Database Id = 10 Object Id = 1822850502] </inputbuf>
</process>
<process id="process32444988" taskpriority="0" logused="1138880" waitresource="PAGE: 10:12:435718" waittime="3258" ownerId="13432730596" transactionname="UPDATE" lasttranstarted="2014-11-25T19:26:25.800" XDES="0x18cb1136e0" lockMode="U" schedulerid="37" kpid="261676" status="suspended" spid="277" sbid="0" ecid="8" priority="0" trancount="0" lastbatchstarted="2014-11-25T19:26:25.287" lastbatchcompleted="2014-11-25T19:26:25.287" clientapp=".Net SqlClient Data Provider" hostname="LDNPSM032220" hostpid="2240" isolationlevel="read committed (2)" xactid="13432730596" currentdb="10" lockTimeout="4294967295" clientoption1="538970208" clientoption2="128056">
<executionStack>
<frame procname="" line="279" stmtstart="29650" stmtend="30242" sqlhandle="0x03000a00c67da66c2575ac0051a300000100000000000000" />
</executionStack>
<inputbuf />
</process>
</process-list>
<resource-list>
<pagelock fileid="5" pageid="451520" dbid="10" objectname="" id="lock178f827f80" mode="UIX" associatedObjectId="72057604489740288">
<owner-list>
<owner id="process5c4ee08" mode="IX" />
<owner id="process5c4ee08" mode="U" />
</owner-list>
<waiter-list>
<waiter id="process2b41ce08" mode="IU" requestType="wait" />
</waiter-list>
</pagelock>
<exchangeEvent id="Pipe149719eb00" WaitType="e_waitPipeGetRow" nodeId="8">
<owner-list>
<owner id="process32444988" />
</owner-list>
<waiter-list>
<waiter id="process3243bb88" />
</waiter-list>
</exchangeEvent>
<exchangeEvent id="Pipe149719eb80" WaitType="e_waitPipeGetRow" nodeId="8">
<owner-list>
<owner id="process32444988" />
</owner-list>
<waiter-list>
<waiter id="process32458bc8" />
</waiter-list>
</exchangeEvent>
<exchangeEvent id="Pipe149719ec00" WaitType="e_waitPipeGetRow" nodeId="8">
<owner-list>
<owner id="process32444988" />
</owner-list>
<waiter-list>
<waiter id="process32431b88" />
</waiter-list>
</exchangeEvent>
<exchangeEvent id="Pipe149719ea80" WaitType="e_waitPipeGetRow" nodeId="8">
<owner-list>
<owner id="process32444988" />
</owner-list>
<waiter-list>
<waiter id="process32445708" />
</waiter-list>
</exchangeEvent>
<exchangeEvent id="Pipe149719e300" WaitType="e_waitPipeGetRow" nodeId="3">
<owner-list>
<owner id="process32445708" />
<owner id="process3243bb88" />
<owner id="process32458bc8" />
<owner id="process32431b88" />
</owner-list>
<waiter-list>
<waiter id="process5c4ee08" />
</waiter-list>
</exchangeEvent>
<pagelock fileid="12" pageid="435718" dbid="10" objectname="" id="lockdfda7ef80" mode="IX" associatedObjectId="72057604489740288">
<owner-list>
<owner id="process2b41ce08" mode="IX" />
</owner-list>
<waiter-list>
<waiter id="process32444988" mode="U" requestType="wait" />
</waiter-list>
</pagelock>
</resource-list>
</deadlock>
Shivraj Patil. -
We are trying to figure out root cause of slow running sql server queries hitting/fetching data from one of the database , size 300 GB, hosted on server with below configuration:
Windows server 2003 R2, SP2, Enterprise Edition, 16 GB RAM , 12 CPU'S 32 Bit
SQL server 2005, SP4, Enterprise Edition, 32 Bit.
We have already informed business on the upgrade to 64 bit which would take over a month.
But for the current issue, we are trying to gather the data if we can resolve the memory pressure or finally come to a conclusion to increase RAM.
Action Completed: Re-indexing and update stats are proper for this DB.
As shown below, we have been noticing the semaphore waittype for past 5 days, ran during the load hours:
Few info after below queries: size of buffer= 137272
SELECT SUM(virtual_memory_committed_kb)
FROM sys.dm_os_memory_clerks
WHERE type='MEMORYCLERK_SQLBUFFERPOOL'
and semaphore memory= 644024 per below query
SELECT SUM(total_memory_kb)
FROM sys.dm_exec_query_resource_semaphores
Below is some more info gathered from dm_exec_query_resource_semaphores and sys.dm_exec_query_memory_grants dmv's
So from above info gathered and per SP_Blitz data Resource semaphore seems to be the problem.
Is memory 'target_memory_kb' assigned for resource semaphore id's too low, as compared to 16 GB RAM available.
Note* per analysis on 8 hours run 'target_memory_kb' is always under 1 GB, compared to 16 GB available?
what could be the issue here and how to resolve, please suggest
ThanksI've performed index tuning for those queries, like missing index , rebuilds and stats update.
So is it going to be more worst, after that change of MAXDOP ?
Index and query tuning goes hand-in-hand. Proper indexes with updated stats alone won't improve performance if queries contain non-sargable expressions or are coded in a suboptimal way. You need to examine the problem queries and execution
plans in detail to see if performance opportunities exist. Be aware that SQL Server may throw parallelism to address an issue like a non-sargable query predicate. The query may run faster as a result but at the cost of more CPU utilization
for the duration of the query that may impact other users. I suggest changing MAXDOP after query tuning. You may need to experiment for the most optimal value for your workload.
However, concern would be this one query, which as per developer is just a part of filter in ssrs reports, i.e. small query for the larger query has multiple sessions open for almost a day now.
By smaller query, are you referring to the number of rows returned? Perhaps the reason is the number of rows actually touched. Post the query, DDL and execution plan.
Dan Guzman, SQL Server MVP, http://www.dbdelta.com -
Question about wait type NETWORK_IO
From the articles below, we know the NETWORK_IO composed by network transmission + Client application dealing with the rows.
That's suppose the NETWORK_IO is 100 seconds, so my question is how many seconds spent for network transmission , and how many seconds spent for Client application ?
As If I don't know the time spent for the two components respectively, I wouldn't know if it is a network issue Or Client application issue.
http://blogs.msdn.com/b/joesack/archive/2009/01/09/troubleshooting-async-network-io-networkio.aspx
http://mssqlwiki.com/sqlwiki/sql-performance/async_network_io-or-network_io/
Please click the Mark as Answer button if a post solves your problem!As If I don't know the time spent for the two components respectively, I wouldn't know if it is a network issue Or Client application issue.
Hi,
Wait stats are cumulative and the 100 ms would include total waiting time it wont be possible to segregate the time. Its cumulative of time when result set was sent to client and when client gave acknowledgement that result set is consumed
Please mark this reply as answer if it solved your issue or vote as helpful if it helped so that other forum members can benefit from it
My Technet Wiki Article
MVP -
Troubleshooting BACKUPTHREAD wait type
SELECT r.wait_type command,
s.text,
start_time,
percent_complete,
CAST(((DATEDIFF(s,start_time,GetDate()))/3600) as varchar) + ' hour(s), '
+ CAST((DATEDIFF(s,start_time,GetDate())%3600)/60 as varchar) + 'min, '
+ CAST((DATEDIFF(s,start_time,GetDate())%60) as varchar) + ' sec' as running_time,
CAST((estimated_completion_time/3600000) as varchar) + ' hour(s), '
+ CAST((estimated_completion_time %3600000)/60000 as varchar) + 'min, '
+ CAST((estimated_completion_time %60000)/1000 as varchar) + ' sec' as est_time_to_go,
dateadd(second,estimated_completion_time/1000, getdate()) as est_completion_time
FROM sys.dm_exec_requests r
CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) s
WHERE r.command in ('RESTORE DATABASE')command start_time percent_complete running_time est_time_to_go est_completion_time
BACKUPTHREAD 2014-05-29 17:16:45.943 6.264207 0 hour(s), 31min, 6 sec 7 hour(s), 44min, 35 sec 2014-05-30 01:32:26.807
Hey ,
I am restoring the database from network share to my development server. Its been extremely slow.The estimated completion time is about 8 hours and it used to take lot less in the past.
The SQL Server is running under the account which has all the privileges to do instant file initialization. I verified that.
I copied some files from network share and it looks fine. Network speed doesn't look too bad. My memory ( 12 GIG ) and Processor ,etc look OK. I verified those through Resource Monitor.
Is there a query or any other Diagnostic Tool I can use to figure out where the bottleneck for such a slow database restore?
select @@VERSION
Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)
Apr 2 2010 15:48:46
Copyright (c) Microsoft Corporation
Developer Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
Thanks in advance.
I90RunnerFirst please upgrade SQL Server 2008 R2 to Sp2. Now is it necessary to run restore from network share IMO restoring from network share is mostly slow as compared to local disk. There can be many reason for slow restore from network share most prominen is
Your network share is not able to cope with read request or is slow
The drive where you are restoring is facing I/O crunch or is slow
There is some network issue with your storage
Result you posted is not of much use it just tells you amount of time your restore operation would take to complete.
Below is list of whitepaers MS published in below link look for 'A Technical Case Study: Fast and Reliable Backup and Restore of Multi-Terabytes Database over the Network '
http://blogs.msdn.com/b/sqlcat/archive/2013/09/05/sqlcat-com-consolidated-index-of-whitepapers.aspx
Please mark this reply as answer if it solved your issue or vote as helpful if it helped so that other forum members can benefit from it.
My TechNet Wiki Articles -
Is there any changes required in the custom dts package when migration from BPC 4.2 , sql 2000 Environment to bpc 7.0 , SQL 2005/2008 Environment.
or
Please suggest process for migrating custom dts package from BPC 4.2 ,SQL 2000 Envirnment to BPC 7.0 ,SQL 2005/2008 EnvironmentWhen you say "custom dts package" that can mean many different things. What type of customization has been done?
There are a few BPC-related features which changed from 4.2, which must be manually adjusted, if you're using those features.
But SQL itself also changed dramatically in moving from SQL 2000 to 2005. So if your customer's packages are heavily customized around SQL 2000, this may require substantial re-work.
The only migration process for custom DTS packages -- that I'm aware of -- is to use the SQL 2005 migration tool in SSIS, see how much it messed up, and then fix everything else that's still broken.
But there also may be opportunities to improve the package overall. SQL 2005 has a lot of great new features in SSIS, over what was there in SQL 2000.
I haven't started working with SQL 2008 yet, so I can't say what complexity there is in upgrading DTS packages from 2005 to 2008. From what I read in the BPC 7 release notes, it sounds like it's a very minor upgrade, compared to the jump from 2000 to 2005. -
Error in NetWeaver CE 7.1 Installation: Step importJavaDump with MSS 2005
After a dozen unsuccessful tries to install SAP NetWeaver CE 7.1 onto a Windows platform using the Microsoft SQL Server as the backed I could use help regarding this particular error.
I receive the following error when I try to install the software with MSS as the backend:
ERROR 2008-09-29 10:40:02.319 [sixxcstepexecute.cpp:944]
FCO-00011 The step importJavaDump with step key |CE_DevSystem_App|ind|ind|ind|ind|0|0|NW_Onehost_System|ind|ind|ind|ind|2|0|NW_CreateDBandLoad|ind|ind|ind|ind|10|0|NW_Jload|ind|ind|ind|ind|11|0|importJavaDump was executed with status ERROR .
The error occurs only with MSS. I have both my Windows and MSS updates up to date. When I use MaxDB as the backend everything goes nice and smooth (even the java info dump, or whatever that command does). When I use Microsoft SQL Server as the backend this error is printed. I have tried with Microsoft SQL Server 2005 Developer Edition on both Windows 2003 Server and Windows XP Professional SP3.
The following gets printed to jload.log:
29.09.08 10:39:49 com.sap.inst.jload.Jload main
INFO: Jload R 7.10 V 0 A 0
29.09.08 10:39:49 com.sap.inst.jload.Jload main
INFO: Jload -sec CE2,jdbc/pool/CE2,C:/usr/sap/CE2/SYS/global/security/data/SecStore.properties,C:/usr/sap/CE2/SYS/global/security/data/SecStore.key -dataDir C:/Work/Temp/51033845_NW_CE_7.1_Workplace_32-bit\DATA_UNITS\CE71_05_JAVA_JDMP -job C:\Program Files\sapinst_instdir\CE71_DEV_MSS\INSTALL\IMPORT.XML -log jload.log
29.09.08 10:40:02 com.sap.inst.jload.Jload main
SEVERE: couldn't connect to DB
29.09.08 10:40:02 com.sap.inst.jload.Jload logStackTrace
SEVERE: com.microsoft.sqlserver.jdbc.SQLServerException: The connection to the named instance has failed. Error: java.net.SocketTimeoutException: Receive timed out.
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.getInstancePort(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(Unknown Source)
at com.sap.sql.connect.factory.DriverPooledConnectionFactory.createVendorConnection(DriverPooledConnectionFactory.java:50)
at com.sap.sql.connect.factory.DriverPooledConnectionFactory.getPooledConnection(DriverPooledConnectionFactory.java:37)
at com.sap.sql.connect.datasource.DBDataSourceImpl.createPooledConnection(DBDataSourceImpl.java:677)
at com.sap.sql.connect.datasource.DBDataSourceImpl.newPooledConnection(DBDataSourceImpl.java:626)
at com.sap.sql.connect.datasource.DBDataSourceImpl.getConnection(DBDataSourceImpl.java:105)
at com.sap.sql.connect.OpenSQLDataSourceImpl.getConnection(OpenSQLDataSourceImpl.java:202)
at com.sap.inst.jload.db.DBConnection.connectViaSecureStore(DBConnection.java:109)
at com.sap.inst.jload.db.DBConnection.connect(DBConnection.java:153)
at com.sap.inst.jload.Jload.main(Jload.java:702)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at com.sap.engine.offline.OfflineToolStart.main(OfflineToolStart.java:161)
29.09.08 10:40:02 com.sap.inst.jload.Jload printErrorInformation
SEVERE: An error occured during execution. Please consult SAP note 942766 for first steps on troubleshooting the problem.
For one thing, there is no SAP note 942766 when you search for one at SAP Notes. Another thing that is particularly interesting is that the SQL JDBC driver does not get the SQL instance name, or at least does not print that to the exception message but instead leaves there two whitespaces (The connection to the named instance >>Instance name should be here<< has failed).
Any suggestions on how to get pass this error? All help would be appreciated!
Best regards,
Svenhello,
please check and ensure that:
- your database server is started.
- your database instance is running and you can connect to it through the network interface
- the entries in secure store contain the correct options for
connecting to the database. (These can be checked via configtool and this only applies to the case when JLoad is run using secure store parameters)
hope this helps
kr,
andreas -
SAP BPC 7 APPSet Restore SQL 2005
Hi Everyone,
I have SAP BPC 7 setup in a multi-server environment, and it's working well. I created a dev environment, installed SAP in the same fashion, and now when I try to restore an app set through server manager in dev, it keeps putting the SQL DB on C instead of where it should go on I:\ .
The original app set was using this same drive configuration, and that backup/restore works fine -
I've gotten this to work before, but I can't seem to get the restore to go somewhere else this time...
Any thoughts appreciated -
EdwardHi,
More testing today so let's share
There is 3 registry key in SQL Server 2005 :
HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\DefaultData
HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\DefaultLog
HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\<Instance Name>\Setup\SQLDataRoot
Key #1 and key #2 are the one you configure in SQL server Manager and they correspond to the *.MDF directory and *.LDF directory.
Key #3 is the one you configure during SQL Server installation.
SAP Server manager will use key #3 when you restore an appset and also during the installation process of the ApShell.
Key #1 and Key #2 are used by BPC setup to create the AppServer database.
So to conclude : Even if you change Key #3 value in order to change the directory where you want to create your DB files, you will not be able to put *.MDF files on a different folder (directory) thant *.LDF files. Which means that after each AppSet restoration you will have to manually move at least the *.LDF or *.MDF file. I think this can be scripted with a T-SQL command... But you will have to do it.
On a side note, i tried to delete Key #3 (was hoping that it will use key #1 and #2) => This is not working. The AppSet restore will fail (in fact this is SQL Server who will throw an error).
Will ask my customer to open a case on SAP support, maybe it could be "fixed" one day. -
Significance of Account Type EXP,LEQ,INC,AST in BPC- Need some valid reason
Hi,
I have a question why we need account type in BPC. Is there really any Business significance for maintaining Account Type ?
Account type LEQ, INC it behaves differently while load data/display data as sign change happens in SAP Back end. Major issue comes when you try to create a re-concillation report using BEX tool for LEQ, INC accounts in BPC and BI cube as you need to reverse the sign in BEX side for any calculation or any data match for INC and LEQ accounts.
My implication is : Is there anything wrong if we take all accounts as EXP account type because what data comes from other source/Input schedule remain as such for all accounts. There will be no Discrepancy/confusion of sign while in reporting in BI side or BPC side. You can follow normal calculation process if you have calculated any item in the report and does not bother about the account type and behaves same as the BI cube data.
Any idea or any issue if the above implication is implemented. I need some concrete reasons for the above issue as it create a extra headache/confusion in BPC impementation project.
Thanks
DebasishaHi Debasish,
Lets take a simple example. Lets say you have revenue as INC, sales as EXP and Profit as INC. You enter values from input schedule as below
Acct Type Value entered in IS Value in DB
Revenue INC 400 -400
Sales EXP 100 100
Lets say Profit is the parent, then the values will be
Profit INC -300
In the report, you will see the data as 300 (since profit is of type INC).
However, if you keep all as EXP, then
Acct Type Value entered in IS Value in DB
Revenue EXP 400 400
Sales EXP 100 100
Profit EXP 500
The above data, as you can see, is incorrect. Now, for making it correct, you need to put a formula for Profit as Revenue - Sales. This looks easy, however, will become cumbersome with more number of members.
Hope you got the idea now. -
Hi,
I am facing wait event CXPACKET in top wait events. we are using SQL Server 2012. the DOP is set to 1.
Please suggest how to resolve this
REgardsHi,
I am facing wait event CXPACKET in top wait events. we are using SQL Server 2012. the DOP is set to 1.
Any reaosn why DOP is set to 1.Have you tested this scenario.Instaed of first moving for resolving CXPACKET wait which is not a acctual reason it is just a symptom .It happens when various parallel threads are waiting to synchronize after doing the
task.What is other major wait stats you can see.Can you paste output of below query here
--By Jnathan Kehayias
SELECT TOP 10
wait_type ,
max_wait_time_ms wait_time_ms ,
signal_wait_time_ms ,
wait_time_ms - signal_wait_time_ms AS resource_wait_time_ms ,
100.0 * wait_time_ms / SUM(wait_time_ms) OVER ( )
AS percent_total_waits ,
100.0 * signal_wait_time_ms / SUM(signal_wait_time_ms) OVER ( )
AS percent_total_signal_waits ,
100.0 * ( wait_time_ms - signal_wait_time_ms )
/ SUM(wait_time_ms) OVER ( ) AS percent_total_resource_waits
FROM sys.dm_os_wait_stats
WHERE wait_time_ms > 0 -- remove zero wait_time
AND wait_type NOT IN -- filter out additional irrelevant waits
( 'SLEEP_TASK', 'BROKER_TASK_STOP', 'BROKER_TO_FLUSH',
'SQLTRACE_BUFFER_FLUSH','CLR_AUTO_EVENT', 'CLR_MANUAL_EVENT',
'LAZYWRITER_SLEEP', 'SLEEP_SYSTEMTASK', 'SLEEP_BPOOL_FLUSH',
'BROKER_EVENTHANDLER', 'XE_DISPATCHER_WAIT', 'FT_IFTSHC_MUTEX',
'CHECKPOINT_QUEUE', 'FT_IFTS_SCHEDULER_IDLE_WAIT',
'BROKER_TRANSMITTER', 'FT_IFTSHC_MUTEX', 'KSOURCE_WAKEUP',
'LOGMGR_QUEUE', 'ONDEMAND_TASK_QUEUE',
'REQUEST_FOR_DEADLOCK_SEARCH', 'XE_TIMER_EVENT', 'BAD_PAGE_PROCESS',
'DBMIRROR_EVENTS_QUEUE', 'BROKER_RECEIVE_WAITFOR',
'PREEMPTIVE_OS_GETPROCADDRESS', 'PREEMPTIVE_OS_AUTHENTICATIONOPS',
'WAITFOR', 'DISPATCHER_QUEUE_SEMAPHORE', 'XE_DISPATCHER_JOIN',
'RESOURCE_QUEUE' )
ORDER BY wait_time_ms DESC
Please mark this reply as the answer or vote as helpful, as appropriate, to make it useful for other readers
Maybe you are looking for
-
I built an Itunes library for my Shuffle on an old laptop which no longer boots. I have since built a new library on my main computer and want to transfer the library that is still on the Ipod to the new library so I can add some new tunes. How do
-
How to write ABAP HR reports in ABAP web dynapro
Hi All, How to write ABAP HR reports in ABAP web dynapro? We can add HR REPORT CATEGORY in ABAP HR using logical database like PNP.How to add HR REPORT CATEGORY in ABAP Webdynapro ? Thanks.
-
J2se 1.4.0 - 1.4.1_0x compatibility problem
hi all i installed tomcat 4.1.18 on two computers the first that i use to develop my applications (jsp, servlets, beans) on which i installed j2se 1.4.0 the other computer is the web server. i installed tomcat and jsdk yesterday, and i decided to ins
-
How To Change the Tempo of Just One Track?
I want to change the tempo of just one track of a song, but when I change the tempo of one track, the tempo of the whole song changes and gets messed up. Does anyone know how to just change the tempo of just one track of the whole song.
-
I use to be able to delete app history but not anymore
I use to be able to go to the app section and delete app that were no longer on my phone. I use to be able to swipe now they are just there and it's annoying why iOS 6??