2017-09-15 20 views
6

का उपयोग करने के बाद टीएफएस tbl_Content बहुत तेजी से बढ़ना शुरू कर दिया है हम एक महीने पहले तक पुराने स्टाइल (एक्सएएमएल) का निर्माण कर रहे हैं और फिर vNext बिल्ड का उपयोग करना शुरू कर दिया है। उसके बाद मैंने देखा कि टीएफएस डेटाबेस में tbl_Content तालिका वास्तव में तेजी से बढ़ने लगी है। उदाहरण के लिए, पिछले 8 घंटों में यह 10 जीबी बढ़ गया और मैं यह नहीं समझ सकता कि यह क्यों कर रहा है। क्या किसी को पता है कि यह क्या है?वीएफएक्स बिल्ड

कारण मैं कह रहा हूं कि यह vNext बिल्ड है क्योंकि मैंने देखा है कि हम अपग्रेड किए जाने के बाद बढ़ने लगते हैं, लेकिन मैं गलत हूं। मुझे उम्मीद है कि यह मेरे निर्माण आउटपुट या ऐसा कुछ स्टोर करने की कोशिश नहीं कर रहा है। क्या यह जानने का कोई तरीका है कि tbl_Content तालिका में क्या है? क्या उन्हें हटाया जा सकता है? या टीएफएस को गड़बड़ किए बिना उस टेबल से कुछ चीजों को हटाने का कोई तरीका है?

उत्तर

1

मैं चारों ओर घूम रहा था और समस्या को हल करने के लिए सभी प्रकार की चीजों को करने की कोशिश की थी। अन्य समस्या यह है कि टीएफएस डेटाबेस स्कीमा के बारे में कोई दस्तावेज नहीं है। टीएफएस डाटाबेस के साथ खेलने के साथ लगभग 10 घंटे खर्च करने के बाद मैं लगभग एक टीएफएस डीबी समर्थक बन गया। Tbl_Content के आसपास पूछताछ, tbl_FileMetadata और tbl_FileType ने मुझे यह समझने में थोड़ा सा मदद की कि वास्तव में समस्या क्या हो रही है।

तो अंत को हटाने /v पर: MSBuild तर्क मेरी समस्या का समाधान हो से diag। मुझे यकीन नहीं है कि यह डेटाबेस में क्या डाल रहा था, लेकिन प्रत्येक बिल्ड डेटाबेस के करीब 1 जीबी डेटा जोड़ रहा था।

+1

msbuild तर्क में '/ verbosity (/ v) 'स्विच का उपयोग करके, आप आउटपुट लॉग में कितना डेटा प्रकट कर सकते हैं नियंत्रित कर सकते हैं। जब आप डायग्नोस्टिक को/वर्बोजिट सेट करते हैं तो जब आप/verbosity को विस्तृत और धीमे करने के लिए सेट करते हैं तो निर्माण प्रक्रिया धीमी हो सकती है। '/ v: diag' जो सबसे अधिक जानकारी प्रदान करता है। –

1

टीएफएस डेटाबेस सभी कारणों से बढ़ता है। रनवे ग्रोथ के कुछ सामान्य स्रोतों में उचित retention policies कॉन्फ़िगर करने के बिना निर्माण या रिलीज स्वचालन का उपयोग करना शामिल है, मानव या टूलिंग द्वारा बहुत बड़ी वस्तुओं (कार्य आइटम, संस्करण नियंत्रण फ़ाइलों, इत्यादि) की छोटी संख्या का निर्माण, और आगे। टीएफएस डेटाबेस में अंतरिक्ष का वितरण अधिक खोजने योग्य बनाने के लिए हमारे पास बैकलॉग पर काम है।

आप इस तरह के नीचे के रूप में एक एसक्यूएल स्क्रिप्ट का उपयोग करने के लिए पिछले महीनों में tbl_Content की वृद्धि दिखाने के लिए कोशिश कर सकते:

select DATEPART(yyyy, CreationDate) as [year], 
    DATEPART(mm, CreationDate) as [month], 
    count(*) as [count], 
    SUM(DATALENGTH(Content))/1048576.0 as [Size in Mb], 
    (SUM(DATALENGTH(Content))/1048576.0)/count(*) as [Average Size] 
from tbl_Content 
group by DATEPART(yyyy, CreationDate), 
    DATEPART(mm, CreationDate) 
order by DATEPART(yyyy, CreationDate), 
    DATEPART(mm, CreationDate) 

यह के लिए "मालिकों" के वितरण को देखने के लिए पता करने के लिए सक्षम है SQL क्वेरी के माध्यम से tbl_Content में डेटा। TFS Database size

, tbl_Content तालिका के आकार को कम करने के लिए आप इस ब्लॉग की जानकारी दे सकती: विस्तार चरणों समान प्रश्न में हारून हाल्बर्ग के जबाब देखें TFS tbl_Content Table and Database growth out of control, यह सामान्य रूप में तीन चरणों में अभिव्यक्त किया जा सकता:

  1. कुछ पुराने कार्यक्षेत्रों को साफ़ करें जिन्हें आपको अब और आवश्यकता नहीं है।
  2. उन अनावश्यक स्रोत फ़ाइलों को स्थायी रूप से हटाने के लिए tf destory command चलाएं।
  3. clean Test attachments और परीक्षण परिणामों के लिए टीएफएस पावर टूल का उपयोग करना।
+0

आपकी पोस्ट के लिए धन्यवाद, मैंने यहां प्रश्न पोस्ट करने से पहले यह सब करने की कोशिश की और इससे मदद नहीं मिली, या कम से कम मुझे अंतर का एहसास नहीं हुआ, क्योंकि यह बहुत तेजी से बढ़ रहा था। लगभग एक दिन खर्च करने के बाद मैं इसे समझने में सक्षम था। मैं अब इसे पोस्ट करूंगा। – Dilshod