Wednesday, January 25, 2017

Prawn PC - 1st watercooling build

So it's finally time, after wanting to do a custom water cooling loop for years now I've finally broken done and started the process... and it turns out there is a lot to learn.

I'm hoping to complete it with a video vlog on Youtube, but I'll document some of the more important information here.  Initially expect these posts to be rambling braindumps - I'll mold them into something more readable over time

So to start with some background and a WIP parts list:

I came across the below case, the Thermaletake Core P5, and was inspired by the look to start this project.  It's a huge beast at 608 x 333 x 570 mm  and 12.2 kg  for just the case


Simply figuring out where to potentially put it was tough, but I've ambitiously opted to wall mount it.  I say ambitiously because the sheer weight, when fully built may make that impossible.

I also have recently upgraded my existing PC so I'll be reusing those parts:

Motherboard: Asus Z170 Pro Gaming
CPU: Intel I7 6700K
RAM: 2 X G.Skills Trident Z Series 16GB Dimms @ 2800Mhz
GPU: EVGA Geforce GTX1070 FTW
Storage: a couple of SSDs and larger SATA disk
PSU: Cooler Master V-Series 1000 Gold

Now a couple of immediate issues presented themselves.
1) The Core P5 supports 4 Disks... I have 6
2) The sheer size
3) Dust!
4) and of course... I have no idea what I'm doing

To the Reddit!  /r/watercooling specifically and lots of reading.

Didn't take long to settle on EKWB for parts since they are the only ones doing a waterblock for the EVGA 1070 FTW, and for simplicity I'm going to get pretty much everything from them.

I also needed to pick a colour scheme for this build.  And inspired by District 9's prawn assault rifle I settled on White, Black, and Orange.  Credit to Weta Workshop for the design below.



To this end I took apart the Core P5 case and sent parts of it to a powder coating company, to spray white, as this will form the background / base colour of the build.

So onto the business end - the water loop parts list:

Order1:
GPU Block: EK-FC1080 GTX FTW - Nickel
CPU Block: EK-Supremacy EVO - Nickel
GPU backplate: EK-FC1080 GTX FTW Backplate - Nickel
Radiator: EK-CoolStream XE 480 (Quad)
Fans: EK-Vardar F4-120 (2200rpm)
Extra: EK-Cable Splitter 4-Fan PWM Extended


Order2:
TBA


The first order list was the easy ones.  GPU and CPU blocks were a given, and I chose the Nikel option since I want to maximise the Orange coolant displayed
.
The Radiator is overkill but it's a big case and I wanted to try fill it as much as possible.

The Vardar fans where a tough choice.  I wanted the Thermaltake RGB fans but opted for function over form for this part.  I'm hoping the much higher static pressure of the 2200rpm Vardar fans will deal with the very large (60mm) radiator better, potentially allowing both slower fan speeds during normal usage, and higher cooling capacity for playing with overclocking.

The 2nd order is the hard one I'm still working on.  Tubing, Coolant, Fitting, and RAM block.
* Tubing will be hardline PETG - cause I'm brave and want to learn to bend tubing.
* RAM block - unsure if I want one, I plan to build the case mostly and then decide based on what it looks like.
* Fittings - again, unsure what right angles and such I'll want and what colour.  I'll build what I can before deciding.
* Coolant - Orange obviously, but pastel vs transparent.  And premixed or mix my own... tba

Finally I've ordered a cable sleeving kit, as that will give me something to do while I wait for the above parts to arrive.

So next post will be me building the Core P5 with the bits from Order 1... it wont be a complete build but I might be able to include some cable sleeving news.

Till next time






Thursday, November 24, 2016

MSCRM and the ever growing database

Not for the first time I've come across a SQL server with a full disk.
The culprit database was a MSCRM organization database which had grow to ridiculous size.
TLDR version: activity logging in CRM will generate a lot of data and consume your disk space.

Troubleshooting and fixing your oversize SQL database looks something like:

Open Dynamics CRM Deployment Manager.
Right click on your Organization and click Disable.  This will prevent access to the Org and stop it from accessing the database while you fix it.
Consider a SQL restart to clear any connections if you can.

Set Database to simple mode and flush old logs
USE ORGNAME_MSCRM
GO
ALTER DATABASE ORGNAME_MSCRM
SET RECOVERY SIMPLE; 
GO 
DBCC SHRINKFILE (mscrm_log, truncateonly)
GO 

Find the oversize table
USE {YOURDATABASE}
SELECT 
    t.NAME AS TableName,
    i.name as indexName,
    sum(p.rows) as RowCounts,
    sum(a.total_pages) as TotalPages, 
    sum(a.used_pages) as UsedPages, 
    sum(a.data_pages) as DataPages,
    (sum(a.total_pages) * 8) / 1024 as TotalSpaceMB, 
    (sum(a.used_pages) * 8) / 1024 as UsedSpaceMB, 
    (sum(a.data_pages) * 8) / 1024 as DataSpaceMB
FROM 
    sys.tables t
INNER JOIN      
    sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN 
    sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN 
    sys.allocation_units a ON p.partition_id = a.container_id
WHERE 
    t.NAME NOT LIKE 'dt%' AND
    i.OBJECT_ID > 255 AND   
    i.index_id <= 1
GROUP BY 
    t.NAME, i.object_id, i.index_id, i.name 
ORDER BY 
    object_name(i.object_id) 

Empty the oversized table (assuming your table isn't one you like very much)
DECLARE @Deleted_Rows INT;
SET @Deleted_Rows = 1;

WHILE (@Deleted_Rows > 0)
 BEGIN
  BEGIN TRANSACTION
   DELETE TOP (10000) ActivityPointerBase 
  COMMIT TRANSACTION
CHECKPOINT
SET @Deleted_Rows = @@ROWCOUNT;
END

Set Database back to normal
USE ORGNAME_MSCRM
GO
ALTER DATBASE ORGNAME_MSCRM
SET RECOVERY FULL; 
GO 

Depending on the size this may take a very long time.  In my case I went a step further and switched the database to Single User access while the above was completed.  YMMV


If you encounter this and have success or problems resolving the issue please leave a comment and let me know.
I'd be curious what others have done to either fix or prevent this for occurring.



Wednesday, April 20, 2016

CRM 2016 Claims based authentication bug

EDIT:  There is another cause for this particular error.  It related to publishing CRM IFD via WAP.  

Run  Set-WebApplicationProxyApplication -ID -DisableTranslateUrlInResponseHeaders

on the WAP server for each published URL and see if that help

***********

Well it's been a long time since my last post but here's a good one that took far too long to resolve.

If you have a CRM 2016 IFD (Internet Facing Deployment) and are having authentication issues via ADFS this might apply to you.

You might be seeing errors like

Microsoft.IdentityServer.Web.InvalidRequestException: MSIS7042: The same client browser session has made '6' requests in the last '1' seconds. Contact your administrator for details.

Also if you test it you'll find the external URL (Forms based auth) works.
And if you authenticate to the external url then the internal URL will start working.
Until you IISRESET the CRM server and it will break again.
Madness!  

Turns out it's a bug in CRM 2016 Update 0.1  There was a change in how the ADFS token is handeled for Claims Based authentication.
This is why authencitaion via the external URL (Forms based) work, and once you have a good token from ADFS you can connect via either URL

Below from a ticket someone raised with Microsoft (2nd March, 2016)


We opened a support ticket with Microsoft and they have acknowledged it as a bug and are working on a fix for this (with no ETA)
From MS Support :
Cause: It’s a known bug with recently reported in 0.1 Update for CRM 2016.
 Possible Case for the Issue: There were major code changes in Ara UR1 for authentication. The affected code is in Microsoft.Crm.Core.Security.Identity.IdentityExtensions.GetUserPrincipalName(). We are unable to cast to a from type ClaimsIdentity to a new type CrmIdentity.
Therefore, the variable is null, and we cannot retrieve the information.

Only solution for the moment is to uninstall the 0.1 update and wait.
It's worth noting the updates for other components (mail router, Report Server Extensions) are fine to install.

There are a ton of fixes in update 0.1 so I'm hoping they sort this out soon.  Would be very good to be able to install CRM 2016 update 0.1


Wednesday, April 21, 2010

Hyper-V MAC conflicts

So here's an interesting one I came across recently;

When you run (in this case) HP Teaming on your NICs with Hyper-V on Server 2008 R2 you will get the following error... a lot.

Port {Teaming NIC GUID} was prevented from using MAC address {MAC of a VM} because it is pinned to port {GUID of VMs NIC}.

The real symptom is erratic pings and/or connectivity to your VMs. It will show mostly as 1 or 2 dropped packets every now and then.

Reason is, after 2008 R2 the networking in Hyper-V was secured to prevent MAC spoofing (A huge vulnerability up to this point). Problem is, the HP Teaming NIC want to effectively spoof all the MACs behind it, so it can control the load balancing etc... tsk tsk, what to do, what to do...

Solution is simple, thankfully there's a real easy tick box to turn that shiz off;
(This is from within System Centre Virtual Machine Manager, but same setting is there in Hyper-V Manager)



















Hopefully this saves someone some pain.

EDIT: Please post your mileage on this one if you do come across it. Not 100% sure that it's the final answer in my particular problem. I may be looking at deciding NIC teaming (With HP at least) is not workable.

As it turns out this didn't solve our particular problem at all.
In our case the error being reported around the MAC addresses jump between ports was symptomatic of a loop in the network (Split Horizon)
Hyper-V switching seems to be very sensitive to this and there was no other evidence of this on the network, however when the offending device (Cisco Airport) was removed the problem vanished immediately.

A great success! So if you see this MAC address changing very often then check your network for loops (via segment isolation)


Thursday, March 18, 2010

My 2008 Logs are tooo big

Maintenance plans not working? Running out of disk space?
Clean out those log files.

USE SharePoint_Config
GO
ALTER DATABASE SharePoint_Config
SET RECOVERY SIMPLE;
GO
DBCC SHRINKFILE (SharePoint_Config_Log, truncateonly)
GO
ALTER DATABASE SharePoint_Config
SET RECOVERY FULL;
GO

Wednesday, March 17, 2010

App-V 4.6 and Office 2010

Cross Post from MS for easy reference;

Install;
XPSEP XP and Server 2003 32 bit
dotnetfx3setup
Windows Search 4.0
C:\Documents and Settings\Administrator.SEQUENSER\Desktop>msiexec /i OffVirt.msi
PROFESSIONALPLUS=1

Install App-v 32 bit sequencer RC (2)

Begin sequencing
Start Office 2010 beta installation, use the following folder;
Q:\mo2k1b32.004\Microsoft Office

Open Excel,OneNote, PowerPoint, Wor. Set to note download any updates

reg add "HKCR\CLSID\{9203C2CB-1DC1-482d-967E-597AFF270F0D}\TreatAs"
reg delete "HKCR\CLSID\{9203C2CB-1DC1-482d-967E-597AFF270F0D}\TreatAs" /va /f
reg add "HKCR\CLSID\{BDEADEF5-C265-11D0-BCED-00A0C90AB50F}\TreatAs"
reg delete "HKCR\CLSID\{BDEADEF5-C265-11D0-BCED-00A0C90AB50F}\TreatAs" /va /f

Copy everything from c:\program files\common files\microsoft shared\filters to another folder and then back


reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Search\Preferences" /v "{4154494E-BFF9-01B8-00AA-0037D96E0000}" /t REG_DWORD /d "1" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Search\Preferences" /v "{C0A19454-7F29-1B10-A587-08002B2A2517}" /t REG_DWORD /d "1" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Search\Preferences" /v "{70fab278-f7af-cd11-9bc8-00aa002fc45a}" /t REG_DWORD /d "1" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Search\Preferences" /v "{c34f5c97-eb05-bb4b-b199-2a7570ec7cf9}" /t REG_DWORD /d "1" /f
reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Search\Preferences" /v "{0077B49E-E474-CE11-8C5E-00AA004254E2}" /t REG_DWORD /d "1" /f

Versionnumber for all office-applications:14.0.4514.004

Add the following applications;
Simple MAPI Proxy Server
%commonprogramfiles%\microsoft shared\virtualization handler\MapiServer.exe

Virtual SharePoint proxy
%commonprogramfiles%\microsoft shared\virtualization handler\VirtualSearchHost.exe

Virtual OWSSupp Manager
%commonprogramfiles%\microsoft shared\virtualization handler\VirtualOWSSuppManager.exe

Mail Control Panel
%windir%\system32\Control.exe” “%SFT_MNT%\mo2k1b32.004\Office14\mlcfg32.cpl


Edit the following registry-keys and change the value to:
%SFT_MNT%\mo2k1b32.004\VFS\CSIDL_PROGRAM_FILES\Microsoft Office\Office14\OWSSUPP.DLL
HKEY_CLASSES_ROOT\CLSID\{3FD37ABB-F90A-4DE5-AA38-179629E64C2F}\InprocServer32\(Default)
b. HKEY_CLASSES_ROOT\CLSID\{62B4D041-4667-40B6-BB50-4BC0A5043A73}\InprocServer32\(Default)
c. HKEY_CLASSES_ROOT\CLSID\{9203C2CB-1DC1-482D-967E-597AFF270F0D}\InprocServer32\(Default)
d. HKEY_CLASSES_ROOT\CLSID\{BDEADEF5-C265-11D0-BCED-00A0C90AB50F}\InprocServer32\(Default)


In the sequencer, add the following element to each OSD, and type “TRUE” in the Element Text: SOFTPKG -> IMPLEMENTATION -> VIRTUALENV -> POLICIES -> LOCAL_INTERACTION_ALLOWED.


Save Package

The adding of the proxies I usually did when editing the detected programs.

/Znack
----
msiexec /i OffVirt.msi ADDDEFAULT=Click2runOneNoteProxy,Click2runOutlookProxies,Click2runWDSProxy,Click2runOWSSuppProxies PACKAGEGUID={EF2D625D-2BD3-4226-A480-CFE325BBDCDE} PACKAGEVERSION=14.0.4514.1004 OUTLOOKNAME=”Microsoft Outlook 2010 (Beta)” ONENOTENAME=”Microsoft OneNote 2010 (Beta)” MAPISERVER=”Simple Mapi Proxy Server” VIRTUALSEARCHHOST=”Virtual Search Host” MLCFG32CPL=”Mail Control Panel” OWSSUPPServer=”Virtual OWSSupp Manager”

Windows Installer doesn't recognize ”. Replace ” with " on the command line

------

http://www.softgridblog.com/

-----

presales guff type stuff:
http://windowsteamblog.com/blogs/springboard/archive/2010/02/22/app-v-4-6-release-q-amp-a.aspx

-------------

Sequencing best practise: http://technet.microsoft.com/en-us/library/dd351420.aspx

http://support.microsoft.com/Default.aspx?kbid=980861

-----------

Also this is now released with new software, and instructions available. (22 April 2010)

Tuesday, March 2, 2010

Symantec Endpoint Protection Manager (SEPM) def update issue

So you've installed the latest sepm and all went well until you realize your defninitions are dated 2009. easy fix, run liveupdate in the manager console... Wait, what, they're up-to-date!?

Guess something is stuck then, hey :)

step 1: make sure you are on the Internet, can get to the liveupdate servers: http://definitions.symantec.com/defs/{updatefile}.exe OR FTP://FTP.symantec.com/public/blahblah
step 2: run luall.exe location in c:\program files\symantec\liveupdate and see if it downloads anything (prob not)
step FIX: I'll cross post later but

http://service1.symantec.com/support/ent-security.NSF/docid/2008041516215948

seems to give it a proper cleanout of the old defs and you can expand the process to do all your definitions with a little care

good luck with sep, here's hoping the next version is better ;-)