Mesaj tarihi: Ağustos 25, 2015 Selamlar, Valla tıkandım kaldım, balatayı sıyırmak üzereyim. Threaded bir fonksiyonum var. Fonksiyon veritabanından bilgiyi GZip formatında okuyor, açıp XML dosyayı alıp normal ZIP formatında tekrar sıkıştırıp işine devam ediyor. Fakat GZip formatında olmayan, direk XML string dizi de gelebilir, buna da aynı ZIP muamelesi yapması gerekiyor. Bunun için bir kontrol kodu yazmıştım zamanında, bu kod her yerde düzgün çalışıyor. Sadece ve sadece bir yerde servis modunda program saçmalıyor, arayüz tarafında ise sorun yok ama threaded değil arayüzü tarafı, aradaki tek fark bu. Servis ise arada bir tekrarlıyor bu durumu her zaman yapmıyor, bu da ilginç bir nokta... return arr.Length >= 2 && arr[0] == 31 && arr[1] == 139; Burası arada bir başarısız oluyor, true dönmesi gerektiği halde false dönüyor. Nereden biliyorum? Çünkü ZIP formatındaki dosyanın içeriğinde XML dosyası olması gerektiği halde GZip formatlı dosya girmiş oluyor. Bunun olabilmesi için yukarıdaki testin başarısız olması gerekiyor. Donanımdan kaynaklı olabilir diye arayüzde 1000 kere tekrar ettirdim aynı sunucuda başarısız olan kaydı, sorun çıkmadı ama arayüzdeki test threaded değildi. Veritabanına yazılan tüm kayıtlar Gzip olarak yazılıyor ve her kayıt 31 ve 139 ile başlıyor, yani veri tutarsızlığı yok. Length testi başarısız oluyor diyeceğim gene ucu donanıma dokunuyor. Adamlara da sunucuyu atın denmiyor tabii. Neyi gözden kaçırıyorum anlayamadım bir türlü . Veritabanı güncellemesi gerektiği için servis tarafını güncelleyip log tutup duruma bakamıyorum şu anda. Sunucu Xeon işlemcili, Windows 2003 ya da 2008 tam hatırlayamadım şimdi. Kod C#, .Net 4.5 framework ile yazılıyor. Var mı fikri olan? Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş
Mesaj tarihi: Ağustos 26, 2015 size önerebileceğim tek şey bir süre başka bir yere çalışıp geri dönüp konuyu tekrar ele almanız. Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş
Mesaj tarihi: Ağustos 26, 2015 Thread'ler birbirini etkiliyor olabilir mi? "lock" statement kullanıp, return ettiğin boolean ifadesini bu şekilde set edip ve geriye bu değeri döndürmeyi denesen? Olmadıysa, log koymadan tespit etmen çok zor. Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş
Mesaj tarihi: Ağustos 26, 2015 Arayüzde threadler oluşturup denemem lazım ama yukarıdaki kontrol fonksiyonu (sadece o satırdan ibaret, bildirimi koymadım) tamamen izole ve güvenli. Asıl korkum log koyunca hiçbir şey elde edememek . Bir de buradan çok daha yoğun çalışan yerler de sorun yok, burası günde bir işlem yapıyor küt başarısız , işlemi tekrar tetikletiyoruz elle hop başarılı zzzzzzzzzzz Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş
Mesaj tarihi: Ağustos 27, 2015 Gzip için kullanılan kutuphanede surum farklılığı olabilir mi. Ya da bir noktada xml parser sorunu var. Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş
Mesaj tarihi: Ekim 1, 2015 Güncellemeden sonra yeni eklenen bir fonksiyon çalışmayınca emin oldum. İkinci sunucuda eski sürüm başka bir servis çalışıyormuş. Halbuki defalarca sormuştum. Kaydı önce hangisi yakalarsa o öpüyor, eski sürüm yakalarsa gzipi işlemiyor tabii. Kimseye güvenmeyeceksin, kendin bakacaksın da ben bunlara bakarken kim kod geliştirecek . Aylardır süründürüyorlar müşteriyi sırf bu sebepten. Bu mesajı paylaş Bu mesajın linki Sosyal ağlarda paylaş