Very annoying and a completely useless error message This may be caused by a validation rule being set up on tags - eg. disallowing them to be moved/deleted Look at ../CVS/CVSROOT/taginfo which matches items being tagged to an executable to validate the action eg a line like DEFAULT /usr/local/bin/stop_tag_hack.sh will redirect to the shell script which can contain something like the following to stop deletes or changes : TAG_OP=$2 if [ "$TAG_OP" != "add" ]; then exit -1 # exit 0 fi |
Thursday, 1 July 2010
CVS : Pre-tag check failure
Posted by
Ook
at
06:18
0
comments
Monday, 28 June 2010
Mysql : Reset root password
service mysql stop |
Posted by
Ook
at
06:42
0
comments
Windows : Remove IE advanced security
* This is done by uninstalling the windows component Control Panel->Add or Remove Programs->Add/Remove Windows Components->Stuff |
Posted by
Ook
at
03:33
0
comments
Monday, 14 June 2010
RMAN : Simple restore of archive log to default location
$ORACLE_HOME/bin/rman nocatalog connect target dba_cron/password run { ALLOCATE CHANNEL c1 DEVICE TYPE DISK; restore archivelog sequence 214629; restore archivelog sequence 214630; } |
Posted by
Ook
at
06:16
0
comments
Labels: Oracle
Wednesday, 26 May 2010
Windows : DesktopOk - desktop icon organizer that supports Windows 7 and 64bit
Seems good so far http://www.softwareok.com/?Download=DesktopOK&goto=../Download/DesktopOK_x64.zip |
Posted by
Ook
at
01:58
0
comments
Friday, 7 May 2010
Outlook: Suppress notification popups
To turn this feature off, click Tools, Options, Email Options, and Advanced Email Options |
Posted by
Ook
at
03:54
0
comments
Friday, 30 April 2010
MS SQL: Expensive queries
Also SELECT TOP 20 SUBSTRING(qt.text, (qs.statement_start_offset/2)+1, ((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(qt.text) ELSE qs.statement_end_offset END - qs.statement_start_offset)/2)+1), qs.execution_count, qs.total_logical_reads, qs.last_logical_reads, qs.min_logical_reads, qs.max_logical_reads, qs.total_elapsed_time, qs.last_elapsed_time, qs.min_elapsed_time, qs.max_elapsed_time, qs.last_execution_time, qp.query_plan FROM sys.dm_exec_query_stats qs CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) qt CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) qp WHERE qt.encrypted=0 ORDER BY qs.total_logical_reads DESC
You can load the trace into profiler, or use ClearTrace <code><span class="pln">SELECT </span><span class="pun">*</span><span class="pln"> INTO </span><span class="typ">TraceTable</span><span class="pln"><br />FROM </span><span class="pun">::</span><span class="pln">fn_trace_gettable</span><span class="pun">(</span><span class="str">'C:\location of your trace output.trc'</span><span class="pun">,</span><span class="pln"> </span><span class="kwd">default</span><span class="pun">)</span><span class="pln"><br /></span></code> Then you can run a query to aggregate the data such as this one: <code><span class="pln">SELECT COUNT</span><span class="pun">(*)</span><span class="pln"> AS </span><span class="typ">TotalExecutions</span><span class="pun">,</span><span class="pln"> <br /> </span><span class="typ">EventClass</span><span class="pun">,</span><span class="pln"> CAST</span><span class="pun">(</span><span class="typ">TextData</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> nvarchar</span><span class="pun">(</span><span class="lit">2000</span><span class="pun">))</span><span class="pln"><br /> </span><span class="pun">,</span><span class="pln">SUM</span><span class="pun">(</span><span class="typ">Duration</span><span class="pun">)</span><span class="pln"> AS </span><span class="typ">DurationTotal</span><span class="pln"><br /> </span><span class="pun">,</span><span class="pln">SUM</span><span class="pun">(</span><span class="pln">CPU</span><span class="pun">)</span><span class="pln"> AS </span><span class="typ">CPUTotal</span><span class="pln"><br /> </span><span class="pun">,</span><span class="pln">SUM</span><span class="pun">(</span><span class="typ">Reads</span><span class="pun">)</span><span class="pln"> AS </span><span class="typ">ReadsTotal</span><span class="pln"><br /> </span><span class="pun">,</span><span class="pln">SUM</span><span class="pun">(</span><span class="typ">Writes</span><span class="pun">)</span><span class="pln"> AS </span><span class="typ">WritesTotal</span><span class="pln"><br />FROM </span><span class="typ">TraceTable</span><span class="pln"><br />GROUP BY </span><span class="typ">EventClass</span><span class="pun">,</span><span class="pln"> CAST</span><span class="pun">(</span><span class="typ">TextData</span><span class="pln"> </span><span class="kwd">as</span><span class="pln"> nvarchar</span><span class="pun">(</span><span class="lit">2000</span><span class="pun">))</span><span class="pln"><br />ORDER BY </span><span class="typ">ReadsTotal</span><span class="pln"> DESC<br /></span></code> Once you have identified the costly queries, you can generate and From http://stackoverflow.com/questions/257906/how-can-i-log-and-find-the-most-expensive-queries |
Posted by
Ook
at
06:46
0
comments